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

 

 


Tema destacado: Introducción a la Factorización De Semiprimos (RSA)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (C#, VB.NET, ASP)
| | | |-+  Programación Visual Basic (Moderadores: LeandroA, seba123neo)
| | | | |-+  es posible...? (Consola)
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: 1 2 [3] Ir Abajo Respuesta Imprimir
Autor Tema: es posible...? (Consola)  (Leído 7,814 veces)
Spider-Net


Desconectado Desconectado

Mensajes: 1.165


Un gran poder conlleva una gran responsabilidad


Ver Perfil WWW
Re: es posible...? (Consola)
« Respuesta #20 en: 18 Octubre 2008, 22:33 pm »

wenas, esque lo del split tampoco lo he usado nunca y tenia que mirar tambien lo del InStr... :P
Lo de identar el code me ha sido imposible...(tenia otra idea en la cabeza, primer post) pero lo q vosotros decis esq esta mejor, voy a probar el ejemplo grax Spider-Net

Identar es tabularlo, sólo poner tabuladores para saber que instrucciones se ejecutan dentro de cada procedimiento.

Saludos


En línea

WestOn

Desconectado Desconectado

Mensajes: 272


El testamento Maya...


Ver Perfil
Re: es posible...? (Consola)
« Respuesta #21 en: 18 Octubre 2008, 22:53 pm »

aaaaaa  :laugh:...pensaba q decias idear,crear o algo asi

Esta perfecto el code ::)

Un saludo ;D


« Última modificación: 18 Octubre 2008, 23:46 pm por WestOn » En línea

En mi cabeza existe una barrera espacio-tiempo de 4cm³. ¿Alguien sabe como eliminarla?.
                                                                                                                                                                                                                            
cassiani


Desconectado Desconectado

Mensajes: 978


« Anterior | Próximo »


Ver Perfil WWW
Re: es posible...? (Consola)
« Respuesta #22 en: 19 Octubre 2008, 01:10 am »

Como ya te dijeron, léete un manual básico sobre todo el manejo de cadenas (que te hace mucha falta) o caerás acá preguntando lo mismo una y otra vez.

Para lo que hacías, yo lo haría así:

Código
  1. Option Explicit
  2. Dim sCadena    As String
  3. Dim sCacho()   As String
  4. Dim sResultado As String
  5. Dim I          As Integer
  6.  
  7. Private Sub Cmd_Click()
  8.    sCadena = Trim$(Text1.Text)
  9.    sCacho = Split(sCadena, " ")
  10.  
  11.    sResultado = ""
  12.  
  13.    For I = 0 To UBound(sCacho)
  14.        Select Case (LCase$(sCacho(I)))
  15.            Case "clean": sResultado = sResultado & sCacho(I) & " "
  16.            Case "/q": sResultado = sResultado & sCacho(I) & " "
  17.            Case "/s": sResultado = sResultado & sCacho(I) & " "
  18.        End Select
  19.    Next
  20.  
  21.    MsgBox sResultado
  22. End Sub

Y hay, más case para más parámetros y dentro de los case las rutinas o funciones que se requieran.


http://www.elguille.info/vb/vb6/stringFunctions.htm


http://www.recursosvisualbasic.com.ar/htm/tutoriales/tutorial-basico5.htm

saludos!!
« Última modificación: 19 Octubre 2008, 01:15 am por cΔssiΔnі » En línea

Spider-Net


Desconectado Desconectado

Mensajes: 1.165


Un gran poder conlleva una gran responsabilidad


Ver Perfil WWW
Re: es posible...? (Consola)
« Respuesta #23 en: 19 Octubre 2008, 12:11 pm »

El ejemplo de cΔssiΔnі está mucho mejor que el mío. Además usó la función Trim para eliminar posibles espacios al final o al principio del comando introducidos por error.Así que te recomiendo que uses su ejemplo.

Un saludo!
En línea

WestOn

Desconectado Desconectado

Mensajes: 272


El testamento Maya...


Ver Perfil
Re: es posible...? (Consola)
« Respuesta #24 en: 19 Octubre 2008, 13:35 pm »

wenas, esta bien el code, voy a ver como lo uso en el proyecto y cuando termine cuelgo el proyecto para que le echeis una ojeada (ya q el 'motor' del exe es vuestro ajajaj) aver si no tengo mas contratiempos y lo posteo hoy. un saludo y grax ;)

PD:los enlaces son bastante buenos (el de recursosvisualbasic no lo conocia)
« Última modificación: 19 Octubre 2008, 16:04 pm por WestOn » En línea

En mi cabeza existe una barrera espacio-tiempo de 4cm³. ¿Alguien sabe como eliminarla?.
                                                                                                                                                                                                                            
WestOn

Desconectado Desconectado

Mensajes: 272


El testamento Maya...


Ver Perfil
Re: es posible...? (Consola)
« Respuesta #25 en: 20 Octubre 2008, 08:49 am »

Wenas, estuve cambiando el motor del proyecto por esto:
Esto es para que cambie la variable a 1 (todas estan en 0 desde el principio) y la que este en 1 se abre:
Código
  1. Public Sub A1()
  2. Dim x As String, z
  3. Dim i As Integer
  4.  
  5. i = InStr(a, "clean")
  6. If i = 0 Then
  7. 'no ta
  8. Else
  9. E = 1 'la cambia si se encuentra clean
  10. End If
  11.  
  12. i = InStr(a, "jo")
  13. If i = 0 Then
  14.  
  15. Else
  16. F = 1
  17. End If
  18. End Sub

Hasta ahi todo perfecto(si se pone solo no funciona bien xDD) pero si dentro del if ponemos lo que puso cΔssiΔnі funciona mejor!! pero algo esta mal y solo detecta el comando solo (clean, jo) los modificadores no:
Código
  1. If E = 1 Then 'comando clean
  2. Dim sCacho()   As String
  3. Dim sResultado As String
  4. Trim$ (a) ' quita espacios al principio-final
  5. sCacho = Split(a, " ")
  6. sResultado = ""
  7. For i = 0 To UBound(sCacho)
  8. Select Case (LCase$(sCacho(i)))
  9. Case "clean": sResultado = sResultado & sCacho(i) & " "
  10. MsgBox "indicar parametro"
  11. Case "clean /q": sResultado = sResultado & sCacho(i) & " "
  12. MsgBox "clean /q"
  13. Case "clean /s": sResultado = sResultado & sCacho(i) & " "
  14. MsgBox "clean /S"
  15. End Select
  16. Next
  17. MsgBox sResultado
  18. End If
  19.  

haber si se me ha entendido..  :laugh: un saludo y grax de antemano
« Última modificación: 20 Octubre 2008, 08:54 am por WestOn » En línea

En mi cabeza existe una barrera espacio-tiempo de 4cm³. ¿Alguien sabe como eliminarla?.
                                                                                                                                                                                                                            
Spider-Net


Desconectado Desconectado

Mensajes: 1.165


Un gran poder conlleva una gran responsabilidad


Ver Perfil WWW
Re: es posible...? (Consola)
« Respuesta #26 en: 20 Octubre 2008, 12:25 pm »

De entrada, muchas gracias por NO hacerme caso con lo de indentar tu código  :¬¬, ya te lamentarás cuando programes códigos largos... en fin.

Estás muy perdido. Así en principio, deberías de leerte un manual de Visual Basic antes de intentar cosas más complicadas, porque te damos cosas hechas y que funcionan y te las cargas. xD

De entrada, no sé para que quieres esta parte del código:

Código
  1. Public Sub A1()
  2. Dim x As String, z
  3. Dim i As Integer
  4.  
  5. i = InStr(a, "clean")
  6. If i = 0 Then
  7. 'no ta
  8. Else
  9. E = 1 'la cambia si se encuentra clean
  10. End If
  11.  
  12. i = InStr(a, "jo")
  13. If i = 0 Then
  14.  
  15. Else
  16. F = 1
  17. End If
  18. End Sub

¿Para saber si está clean?. Eso ya lo hace tanto el código de cΔssiΔnі como el mío. Comprueban si existe el comando clean con if o con select case pero ambos lo comprueban, no necesitas ningún if antes.

Y esto ya...

Código
  1. If E = 1 Then 'comando clean
  2. Dim sCacho()   As String
  3. Dim sResultado As String
  4. Trim$ (a) ' quita espacios al principio-final
  5. sCacho = Split(a, " ")
  6. sResultado = ""
  7. For i = 0 To UBound(sCacho)
  8. Select Case (LCase$(sCacho(i)))
  9. Case "clean": sResultado = sResultado & sCacho(i) & " "
  10. MsgBox "indicar parametro"
  11. Case "clean /q": sResultado = sResultado & sCacho(i) & " "
  12. MsgBox "clean /q"
  13. Case "clean /s": sResultado = sResultado & sCacho(i) & " "
  14. MsgBox "clean /S"
  15. End Select
  16. Next
  17. MsgBox sResultado
  18. End If

¿Pero qué lío has hecho ahí?. ¿Un msgbox para cada resultado? Por qué modificas el código de cΔssiΔnі si funcionaba bien?

Código
  1. Private Sub Cmd_Click()
  2.    sCadena = Trim$(Text1.Text)
  3.    sCacho = Split(sCadena, " ")
  4.  
  5.    sResultado = ""
  6.  
  7.    For I = 0 To UBound(sCacho)
  8.        Select Case (LCase$(sCacho(I)))
  9.            Case "clean": sResultado = sResultado & sCacho(I) & " "
  10.            Case "/q": sResultado = sResultado & sCacho(I) & " "
  11.            Case "/s": sResultado = sResultado & sCacho(I) & " "
  12.        End Select
  13.    Next
  14.  
  15.    MsgBox sResultado
  16. End Sub

El Msgbox sResultado va sólo al final, no uno por cada case, el case lo que hace es ir añadiendo los parámetros si se los encuentra y sino no añade nada, no tienes que poner un msgbox por cada case. Eso sobra.

Case "clean": sResultado = sResultado & sCacho(i) & " "
MsgBox "indicar parametro"

Y eso tampoco tengo idea para que lo has puesto. Si ese case lo que hace es si encuentra la cadena clean la almacena en sResultado, sobra ahí msgbox, igual que todos los demás, un msgbox al final y listo.

Por último decirte que no pegues todo el código, queda mucho más claro tabulado y con saltos de línea para separar algunas cosas tal y como lo tenemos cΔssiΔnі y yo. Así como tú lo pones no sé si es que lo ves más claro, pero lo que haces es hacerlo más ilegible. Quitando todo lo que tú pones y dejando sólo y exclusivamente lo de cΔssiΔnі el código funciona perfectamente. Así que no lo modifiques mejor. Y sobre todo intenta leer y aprender a programar en Visual Basic antes de meterte en proyectos que te vienen grandes, es sólo un consejo.

Saludos!
« Última modificación: 20 Octubre 2008, 12:27 pm por Spider-Net » En línea

WestOn

Desconectado Desconectado

Mensajes: 272


El testamento Maya...


Ver Perfil
Re: es posible...? (Consola)
« Respuesta #27 en: 20 Octubre 2008, 14:40 pm »

wenas, lo he tabulado un poco(lo tabulare mas el proximo ;)), me dejado alguna cosa porq pense que se entenderia, error mio :rolleyes:.La idea esta pues era porque con un code esta bien, pero ya cuando pongo mas de diez me parece un poco abultado y me lio yo solo con tanto code, de todas formas voy a usar lo de cΔssiΔnі y pondre todos los code dentro.
Lo de los mensajes lo puse por poner algo (en vez de poner consolewrite puse msgbox para que os fuera mas facil :P) y no me cargo el code jajaja pero no funciona cuando hago eso  :xD va es broma, venga un saludo y grax

PD:Lo modifique porq la variable era a, entonces sCadena sobraba no?(aver si toy metiendo la pata..) y luego lo de Trim$ a mas de lo mismo.
A bueno y lo de split tambien puse a.
enfin a sido una rayada mia xD
« Última modificación: 20 Octubre 2008, 14:57 pm por WestOn » En línea

En mi cabeza existe una barrera espacio-tiempo de 4cm³. ¿Alguien sabe como eliminarla?.
                                                                                                                                                                                                                            
WestOn

Desconectado Desconectado

Mensajes: 272


El testamento Maya...


Ver Perfil
Re: es posible...? (Consola)
« Respuesta #28 en: 21 Octubre 2008, 14:06 pm »

Wenas, tengo un problema con la consola, os cuento:
Cuando estoy con la consola ejecutandose, si escribo mas de 9 caracteres en la misma linea y presiono enter, se salta 1 linea(por darle a enter) + otra linea(por superar 9 caracteres)...
Nose si se me ha entendido bien, en ese caso decirmelo y posteo alguna foto voy a seguir mirando aver si lo arreglo.

PD:Bueno ya que estoy con este post comento:
Ya una vez solucionado ese problema lo he aumentado para que acepte como maximo 1000 (pero en realidad son 999 xD), pues bueno tengo ya 999 caracteres para pegarlos y probarlo, pero jeje q sorpresa que no vale usar el Control+V para pegarlos, y escribirlos es muy pesado ajajaj :laugh:, ¿como puedo añadir en la consola la opcion de pegar y copiar?

un saludo ;)
« Última modificación: 21 Octubre 2008, 22:49 pm por WestOn » En línea

En mi cabeza existe una barrera espacio-tiempo de 4cm³. ¿Alguien sabe como eliminarla?.
                                                                                                                                                                                                                            
Páginas: 1 2 [3] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
¿Es posible comprar una consola GP2X Caano en España?
Juegos y Consolas
crazykenny 0 3,227 Último mensaje 18 Noviembre 2012, 18:46 pm
por crazykenny
¿Es posible modificar un codigo en C++ de consola para crear una .dll?
Programación C/C++
Romualdo23 1 1,798 Último mensaje 27 Abril 2015, 09:24 am
por ivancea96
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines