Foro de elhacker.net

Programación => Java => Mensaje iniciado por: Algotrix en 21 Marzo 2011, 19:05 pm



Título: Solo Vocales
Publicado por: Algotrix en 21 Marzo 2011, 19:05 pm
Buenas tardes.

Tengo este problema, estoy haciendo un programa de practica que al ingresarle una palabra me diga cuantos caracteres tiene la palabra y en otra linea  me saque solo las vocales de dicha palabra... pero solo me saca una sola vocal... este es el codigo


 static String vec [] = new String [5];
  vec
  • = "a";
  vec [1] = "e";
  vec [2] = "i";
  vec [3] = "o";
  vec [4] = "u";


BufferedReader object=new BufferedReader(new InputStreamReader(System.in));

   System.out.println("Ingrese Palabra");
   String vec=object.readLine();
   for (int i=0; i < vec.length(); i++);
   int len=vec.length();
   System.out.println(len);
   char char1= vec.charAt(4);
   System.out.println(char1);

Soy muy nuevo programando en java y estoy algo atorado... Gracias
      


Título: Re: Solo Vocales
Publicado por: Shell Root en 21 Marzo 2011, 19:35 pm
Código
  1. public class PoC
  2. {
  3.   public static void main(String[] args)
  4.   {
  5.      /* # INITIALIZE VARIABLES */
  6.      String   sString        = "";
  7.      Integer  sLength        = 0;
  8.      Integer  sLengthVocals  = 0;
  9.      String   sVocals[]      = new String[5];
  10.  
  11.      /* # INITIALIZE ARRAY WITH VOWELS */
  12.      sVocals[0] = "a";
  13.      sVocals[1] = "e";
  14.      sVocals[2] = "i";
  15.      sVocals[3] = "o";
  16.      sVocals[4] = "u";
  17.  
  18.      /* # STRING SET */
  19.      sString = "shellrootin";
  20.  
  21.      /* # FIND NUMBER OF CHARACTERS  */
  22.      sLength = sString.length();
  23.  
  24.      /* # FIND NUMBER OF VOWELS */
  25.      for( int i = 0; i < sLength; i++ )
  26.      {
  27.         for( int j = 0; j < sVocals.length; j++ )
  28.         {
  29.            if( sVocals[j].equals(sString.substring(i, i+1)) )
  30.            {
  31.               sLengthVocals = sLengthVocals + 1; break;
  32.            }
  33.         }
  34.      }
  35.      System.out.println( "String:\t\t\t" + sString );
  36.      System.out.println( "Length string:\t\t" + sLength );
  37.      System.out.println( "Number of vowels:\t" + sLengthVocals );
  38.   }
  39. }

Output:
Código
  1. alex@shellroot:~/Escritorio$ javac PoC.java
  2. alex@shellroot:~/Escritorio$ java PoC
  3. String: shellrootin
  4. Length string: 11
  5. Number of vowels: 4
  6. alex@shellroot:~/Escritorio$ javac PoC.java
  7. alex@shellroot:~/Escritorio$ java PoC
  8. String: shell root in
  9. Length string: 13
  10. Number of vowels: 4



Título: Re: Solo Vocales
Publicado por: Algotrix en 21 Marzo 2011, 19:38 pm
gracias Shell Root ya lo estudio y lo adapto  ;D


Título: Re: Solo Vocales
Publicado por: 1mpuls0 en 21 Marzo 2011, 23:53 pm
Tengo otra alternativa

Código
  1. /**
  2.  * @(#)Vocales.java
  3.  *
  4.  *
  5.  * @author 1mpuls0
  6.  * @version 1.00 2011/3/21
  7.  */
  8.  
  9.  
  10. public class Vocales {
  11.  
  12. public static void main(String args[]){
  13. new Vocales();
  14. }
  15.  
  16.    public Vocales() {
  17.     String palabra = "foro.elhacker.net";
  18.     int numeroVocales = contarVocales(palabra);
  19.     System.out.println("Se encontraron "+numeroVocales+" vocales en " +palabra);
  20.    }
  21.  
  22.    private int contarVocales(String texto) {
  23.     int contador = 0;
  24.     texto = texto.toLowerCase();
  25.  
  26.     for (int i = 0; i < texto.length(); i++) {
  27.     char c = texto.charAt(i);
  28.     if (c=='a' || c=='e' || c=='i' || c=='o' || c=='u') {
  29.     contador++;
  30.     }
  31.     }
  32.     return contador;
  33.    }
  34. }
  35.  

 ;D

Saludos.


Título: Re: Solo Vocales
Publicado por: Algotrix en 23 Marzo 2011, 03:51 am
Gracias Darhius muy entendible tambien... en fin... este es mi resultado final... no se que piensen.

Código
  1.  
  2.  
  3. * Vocales.java
  4. * authors Algotrix
  5. * version 1.00
  6.  
  7.  
  8. import java.io.*;
  9. public class clase {
  10. static String vec [] = new String [5];{
  11.  vec [0] = "a";
  12.  vec [1] = "e";
  13.  vec [2] = "i";
  14.  vec [3] = "o";
  15.  vec [4] = "u";  
  16. }
  17. public static void main(String[] args) throws IOException {
  18.  
  19.  
  20. System.out.println("Ingrese Palabra");
  21.  
  22.    String  vec =  object.readLine();
  23.  
  24. for (int i = 0; i < vec.length(); i++){
  25.  
  26. if (vec.charAt(i) == 'a'){
  27. System.out.println(vec.charAt(i));
  28. }
  29. if (vec.charAt(i) == 'e'){
  30. System.out.println(vec.charAt(i));
  31. }
  32. if (vec.charAt(i) == 'i'){
  33. System.out.println(vec.charAt(i));
  34. }
  35. if (vec.charAt(i) == 'o'){
  36. System.out.println(vec.charAt(i));
  37. }
  38. if (vec.charAt(i) == 'u'){
  39. System.out.println(vec.charAt(i));
  40. }
  41.  
  42.   }
  43.  
  44. }
  45. }