I need help!!!

dcabral
21 de Septiembre del 2005
Hola muchachos/as.
El tema viene así...
estoy haciendo un practico que tengo que contar cuantas vocales hay en una cadena de String pero ademas... me piden que que cuente cuantas palabras hay solamente con vocales y el porcentaje de estas sobre el total de palabras del texto. lo primero ya lo tengo listo, pero me mataron con esosdos ultimos puntos.
les agradezco a quien pueda darme una idea de como llegar a hacerlo.
Salu2.
Damián.

chike12
21 de Septiembre del 2005
mi idea seria la sgte:
con alguna estructura de repeticion recorrer todo tu string e ir contando cuantas espacios en blanco hay. cada espacio en blanco significa que acaba de terminar una palabra. A ese contador le aumentas +1 por la ultima palabra(claro que antes de hacer eso es mejor que al string le hagas un trim para borrar espacios a los lados).

espero que te sirva.
César Enrique Llontop Gamarra
Lima - Perú

andres
21 de Septiembre del 2005
chike tiene razon.. dentro de un for o un do-while coloca un switch(para un char en cada posicion){
case a:
case e:
cae i:
case o:
case u:
contadorVocales++;
}

dcabral
21 de Septiembre del 2005
gracias por su ayudo chicos.
como haria el tema del trim al texto??

dcabral
21 de Septiembre del 2005
Seria algo asi?

public int cuenta_vocal(String texto) {
String textonew = texto.trim();
for (int i=0; i<textonew.length(); i++){
switch (i){
case 'a':
case 'e':
case 'i':
case 'o':
case 'u':
contvocal++;//contador de vocal
}
}
}

dcabral
21 de Septiembre del 2005
lo que no termino de entender es de como hago para que me diga cuantas palabras estan formadas solo por vocales ( letra 'a' tomada como palabra).

Gracias por su ayuda.
Salu2.
Damián

chike12
21 de Septiembre del 2005
para usar el metodo trim de la clase String es algo asi:
String texto, textoSinEspacios;
textoSinEspacios = texto.trim();
// esto le quita los espacios a los lados del texto

chike12
21 de Septiembre del 2005
el metodo que colocaste arriba no creo que funcione. ten en cuenta que i es un entero que avanza de uno en uno. nunca sera ni 'A' ni 'E'

dcabral
21 de Septiembre del 2005
perdon quice poner esto:

public void cuenta_vocal() {
String textonew = texto.trim();
for (int i=0; i<textonew.length(); i++){
switch (textonew[i]){
case \'a\':
case \'e\':
case \'i\':
case \'o\':
case \'u\':
contvocal++;//contador de vocal
}
}
}

Pero como hago para contar solo las palabras que tienen vocal???

dcabral
21 de Septiembre del 2005
Muchas gracias chike, pero se te ocurre como hacer para que me cuente las palabras que estan conformadas solo por vocales??

Agradezco tu/su ayuda.
Salu2.