Test Foro de elhacker.net SMF 2.1

Programación => Programación General => 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
Título: Re: Solo Vocales
Publicado por: Shell Root en 21 Marzo 2011, 19:35 PM
Código (java) [Seleccionar]
public class PoC
{
  public static void main(String[] args)
  {
     /* # INITIALIZE VARIABLES */
     String   sString        = "";
     Integer  sLength        = 0;
     Integer  sLengthVocals  = 0;
     String   sVocals[]      = new String[5];

     /* # INITIALIZE ARRAY WITH VOWELS */
     sVocals[0] = "a";
     sVocals[1] = "e";
     sVocals[2] = "i";
     sVocals[3] = "o";
     sVocals[4] = "u";

     /* # STRING SET */
     sString = "shellrootin";

     /* # FIND NUMBER OF CHARACTERS  */
     sLength = sString.length();

     /* # FIND NUMBER OF VOWELS */
     for( int i = 0; i < sLength; i++ )
     {
        for( int j = 0; j < sVocals.length; j++ )
        {
           if( sVocals[j].equals(sString.substring(i, i+1)) )
           {
              sLengthVocals = sLengthVocals + 1; break;
           }
        }
     }
     System.out.println( "String:\t\t\t" + sString );
     System.out.println( "Length string:\t\t" + sLength );
     System.out.println( "Number of vowels:\t" + sLengthVocals );
  }
}


Output:
Código (PoC) [Seleccionar]
alex@shellroot:~/Escritorio$ javac PoC.java
alex@shellroot:~/Escritorio$ java PoC
String: shellrootin
Length string: 11
Number of vowels: 4
alex@shellroot:~/Escritorio$ javac PoC.java
alex@shellroot:~/Escritorio$ java PoC
String: shell root in
Length string: 13
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 (java) [Seleccionar]

/**
* @(#)Vocales.java
*
*
* @author 1mpuls0
* @version 1.00 2011/3/21
*/


public class Vocales {

public static void main(String args[]){
new Vocales();
}

   public Vocales() {
    String palabra = "foro.elhacker.net";
    int numeroVocales = contarVocales(palabra);
    System.out.println("Se encontraron "+numeroVocales+" vocales en " +palabra);
   }
   
   private int contarVocales(String texto) {
    int contador = 0;
    texto = texto.toLowerCase();
   
    for (int i = 0; i < texto.length(); i++) {
    char c = texto.charAt(i);
    if (c=='a' || c=='e' || c=='i' || c=='o' || c=='u') {
    contador++;
    }
    }
    return contador;
   }
}


;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 (java) [Seleccionar]



* Vocales.java
* authors Algotrix
* version 1.00


import java.io.*;
public class clase {
static String vec [] = new String [5];{
 vec [0] = "a";
 vec [1] = "e";
 vec [2] = "i";
 vec [3] = "o";
 vec [4] = "u";  
}
public static void main(String[] args) throws IOException {

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++){

if (vec.charAt(i) == 'a'){
System.out.println(vec.charAt(i));
}
if (vec.charAt(i) == 'e'){
System.out.println(vec.charAt(i));
}
if (vec.charAt(i) == 'i'){
System.out.println(vec.charAt(i));
}
if (vec.charAt(i) == 'o'){
System.out.println(vec.charAt(i));
}
if (vec.charAt(i) == 'u'){
System.out.println(vec.charAt(i));
}

  }

}
}