• Sábado 13 de Abril de 2024, 08:14

Autor Tema:  Problema Con Un Formulario En Fox  (Leído 2196 veces)

luisq

  • Nuevo Miembro
  • *
  • Mensajes: 4
    • Ver Perfil
Problema Con Un Formulario En Fox
« en: Viernes 16 de Mayo de 2008, 02:57 »
0
hola a todos en el foro...tengo un pequeño problema con un formulario. pasa que tengo que hacer que cuando ponga un a frase este mecuente cuantas vocales tiene esa frase, y no he podido hacerlo! sera que por favor me pueden ayudar con este problemita.....muchas gracias por la ayudan que me puedan prestar

emuller

  • Miembro MUY activo
  • ***
  • Mensajes: 104
    • Ver Perfil
Re: Problema Con Un Formulario En Fox
« Respuesta #1 en: Viernes 16 de Mayo de 2008, 17:49 »
0
No se en que parte tenés el problema, si no lográs que cuentes la vocales (no te funciona el algoritmo) o es otra cosa.
Si es el algoritmo esto funciona:
Código: Text
  1. LOCAL cadena, cantidadVocales, ctemp
  2. && THISFORM.text es el campo de texto que tiene la cadena a la que se le quiere contar las vocales
  3. cadena = ALLTRIM(THISFORM.text.Value)
  4. cantidadVocales = 0
  5.  
  6. FOR i = 1 TO LEN(cadena) STEP 1
  7.   ctemp = UPPER(SUBSTRC(cadena,i,1))
  8.   IF ctemp=='A' OR  ctemp=='E' OR ctemp=='I' OR ctemp=='O' OR ctemp=='U' THEN
  9.     cantidadVocales = cantidadVocales + 1
  10.   ENDIF
  11. ENDFOR
  12.  
  13. MESSAGEBOX("Cantidad de vocales: "+ALLTRIM(STR(cantidadVocales)))
  14.  

Por supuesto, el messagebox es sólo para ver el resultado y seguramente no lo necesites. El resultado queda en la variable "cantidadVocales"
Mi deseo: que le otorguen el premio Nobel de la paz al inventor del Copy & Paste. Gracias por evitarme tantas peleas con el tiempo y aumentar la esperanza de vida de mi teclado \":)\"

luisq

  • Nuevo Miembro
  • *
  • Mensajes: 4
    • Ver Perfil
Re: Problema Con Un Formulario En Fox
« Respuesta #2 en: Sábado 17 de Mayo de 2008, 06:32 »
0
Cita de: "emuller"
No se en que parte tenés el problema, si no lográs que cuentes la vocales (no te funciona el algoritmo) o es otra cosa.
Si es el algoritmo esto funciona:
Código: Text
  1. LOCAL cadena, cantidadVocales, ctemp
  2. && THISFORM.text es el campo de texto que tiene la cadena a la que se le quiere contar las vocales
  3. cadena = ALLTRIM(THISFORM.text.Value)
  4. cantidadVocales = 0
  5.  
  6. FOR i = 1 TO LEN(cadena) STEP 1
  7.   ctemp = UPPER(SUBSTRC(cadena,i,1))
  8.   IF ctemp=='A' OR  ctemp=='E' OR ctemp=='I' OR ctemp=='O' OR ctemp=='U' THEN
  9.     cantidadVocales = cantidadVocales + 1
  10.   ENDIF
  11. ENDFOR
  12.  
  13. MESSAGEBOX("Cantidad de vocales: "+ALLTRIM(STR(cantidadVocales)))
  14.  

Por supuesto, el messagebox es sólo para ver el resultado y seguramente no lo necesites. El resultado queda en la variable "cantidadVocales"
muchas gracias por la ayuda amigo me ha sido de mucha utilidad. thx