elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Recopilación Tutoriales y Manuales Hacking, Seguridad, Privacidad, Hardware, etc


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (C#, VB.NET, ASP)
| | | |-+  Programación Visual Basic (Moderadores: LeandroA, seba123neo)
| | | | |-+  Error con c$ no entiendo porque!!
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Error con c$ no entiendo porque!!  (Leído 1,752 veces)
Xrage87

Desconectado Desconectado

Mensajes: 2


Ver Perfil
Error con c$ no entiendo porque!!
« en: 27 Noviembre 2008, 02:45 am »

Les voy a poner el código completo del todo el programa, que de hecho de es muy chico. El tema es que la parte del código que me da error, la corro por separado y no tengo ningún problema.



Código:
Option Explicit

Dim tiempos(5) As Single
Dim diametros(5) As Single
Dim matrizfluidos(10, 5) As Single



Private Sub calcular_Click()

Dim i As Integer
Dim tiempo As Single
Dim diametro As Single
Dim m As Integer
Dim l As Integer
Dim columna As Integer
Dim encontrado As Boolean
Dim viscosidad As Integer

 tiempos(1) = txtTiempo1.Text
 tiempos(2) = txtTiempo2.Text
 tiempos(3) = txtTiempo3.Text
 tiempos(4) = txtTiempo4.Text
 tiempos(5) = txtTiempo5.Text
 
 diametros(1) = txtDiam1.Text
 diametros(2) = txtDiam2.Text
 diametros(3) = txtDiam3.Text
 diametros(4) = txtDiam4.Text
 diametros(5) = txtDiam5.Text
 
tiempo = promedio(tiempos())
diametro = promedio(diametros())


Print tiempo
Print diametro




Open "C:\A\nums.txt" For Input As #1

For m = 1 To 10 Step 1

    For l = 1 To 5 Step 1
   
        Line Input #1, c$
        matriz(l, m) = c$
   
    Next l
   
Next m


For m = 1 To 10 Step 1
    For l = 1 To 5 Step 1
        Print matriz(l, m)
    Next l
Next m

Print matriz(5, 10)

Close


'función buscar

a = 1

While encontrado = False And columna <= 10

   
    If matrizfluidos(a) = txtTemp.Text Then

        encontrado = True
   
    Else

        columna = columna + 1

    End If

Wend

viscosidad = matrizfluidos(fila, columna)


End Sub

Private Function promedio(valores() As Single) As Single

Dim prom As Single

    prom = (valores(1) + valores(2) + valores(3) + valores(4) + valores(5)) / difcero(valores())

promedio = prom

End Function

Private Function difcero(valores2() As Single) As Integer

Dim i As Integer
Dim k As Integer

k = 0

    For i = 1 To 5 Step 1
   
        If valores2(i) <> 0 Then
       
            k = k + 1
       
        End If
       
    Next i



If k = 0 Then

    MsgBox ("Debe introducir por lo menos un tiempo y un diámetro")
    Stop
   
End If

difcero = k



End Function


Private Sub txtFluido_Validate(Cancel As Boolean)

Dim fluido As String

fluido = txtFluido.Text

If fluido <> "agua" Then
    If fluido <> "glicerina" Then
        If fluido <> "alcohol" Then
            MsgBox ("fluido no valido")
        End If
    End If
End If

End Sub


Lo que me da error es la variable $c, pero con el siguien código y utilizada de la misma manera no me crea problemas.

Código:
Private Sub Command4_Click()
Dim matriz(20, 10) As Integer
Dim i As Integer
Dim i As Integer



Open "C:\A\nums.txt" For Input As #1

For j = 1 To 10 Step 1

    For i = 1 To 20 Step 1
   
        Line Input #1, c$
        matriz(i, j) = c$
   
    Next i
   
Next j

Close

End Sub


Adjunto también un link de megaupload donde pueden bajar el programita, creo que seguramente les va a servir para detectar el problema, aunque seguro es una tontera (como siempre) :)     http://www.megaupload.com/es/?d=SVE6Z7OD

Muchas gracias


En línea

ricardovinzo

Desconectado Desconectado

Mensajes: 135


P.T.C


Ver Perfil
Re: Error con c$ no entiendo porque!!
« Respuesta #1 en: 27 Noviembre 2008, 03:16 am »

tienes dos veces declarado i


En línea

3# Convocacion de Moderadores en Code Makers, entra!
cassiani


Desconectado Desconectado

Mensajes: 978


« Anterior | Próximo »


Ver Perfil WWW
Re: Error con c$ no entiendo porque!!
« Respuesta #2 en: 27 Noviembre 2008, 03:30 am »

Estas haciendo uso de "Option Explicit" debes declarar la variable,
Citar
Line Input #1, c$

por otro lado, los contadores como los usas una y otra vez, declaralos de manera global.

saludos!!
En línea

gulabyte

Desconectado Desconectado

Mensajes: 97



Ver Perfil
Re: Error con c$ no entiendo porque!!
« Respuesta #3 en: 29 Noviembre 2008, 14:22 pm »


Como ha dicho cassiani si al principio del codigo tienes puesto Option Explicit (VB lo pone al crear un form) y lo que estas diciendo con eso es que toda variable o espacio en memoria que uses, debe estar declarado o asignado antes en el form o como public en algun otro módulo.

En el otro ejemplo te funciona porque no tienes declarada esa obligación.... no sé exactamente cómo se las arregla el compilador con las variables que no están declaradas pero eso sirve para cuando no sabes lo que va a entrar en la variable, es decir cuando no sabes el tipo de datos que va a almacenar. En este caso se usa porque se trata de una variable que almacena un trozo de un archivo pero en tu caso parece que abre siempre el mismo archivo y es un .txt, es decir un archivo de simple texto plano.

La solución podria ser quitar directamente el "Option Explicit" o bien declarar la variable c# como string, ya que almacenara siempre una cadena de caracteres....

Es mejor tener siempre declaradas las variables siempre que se pueda...

Salu10
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Otro problema en un programa, no entiendo porque.
Programación C/C++
Anastacio 5 2,763 Último mensaje 21 Enero 2012, 02:38 am
por Xandrete
no entiendo porque pero no funciona ( ordenar array )
Programación C/C++
manutmac 6 4,222 Último mensaje 14 Noviembre 2012, 17:50 pm
por manutmac
Quien me ayuda con mi programa,me tira un error y no entiendo porque
Java
Ila26 2 1,993 Último mensaje 4 Diciembre 2013, 22:01 pm
por Zoik
No entiendo el porqué...
Java
Droigor 2 1,769 Último mensaje 13 Marzo 2014, 20:42 pm
por Droigor
(STL) Listas e iteradores. No entiendo el error que me da.
Programación C/C++
alpachino98 1 1,572 Último mensaje 28 Diciembre 2017, 18:30 pm
por CalgaryCorpus
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines