viernes, 30 de noviembre de 2012

CONTADOR DE VOCALES EN JTEXTAREA


  • EJERCICIO

Tengo que hacer un programa, en la interfaz hay que digitar dentro de una EDIT(caja de texto) una palabra, y cuando le doy CALCULAR, que me calcule las vocales, también calcular si el total de cada vocal es par o impar

EJEMPLO si el usuario digita SHAMIRJAVAI o (shamirjavai) el resultado tiene que ser:

    SHAMIRJAVAI = 11

    A=3 PAR
    E=O PAR
    I=2 PAR
    O=0 PAR
    U=0 PAR
 
CLARO SUPONIENDO QUE EL NUMERO "0" LO CONSIDEREN NUMERO "PAR" PERO MAS ABAJO LE PONGO PARA LOS DOS CASOS, PAR O IMPAR.

  • RESULTADO



  • COD. FUENTE

/**
 *
 *  E-Mail : shamirdhc31@gmail.com
 *  Blog   : http://javadhc.blogspot.com
 *
 */

/* 
 * tengo que hacer un programa, en la interfaz hay que digitar dentro de una 
 * EDIT(caja de texto) una palabra, y cuando le doy CALCULAR, que me calcule 
 * las vocales, tambien calcular si el total de cada vocal es par o impar
 
 * EJEMPLO si el usuario digita SHAMIRJAVAI o (shamirjavai) el resultado tiene que ser:

    SHAMIRJAVAI = 11 

    A=3 PAR
    E=O PAR
    I=2 PAR
    O=0 PAR
    U=0 PAR
    
  * CLARO SUPONIENDO QUE EL NUMERO "0" LO CONSIDEREN NUMERO "PAR"
  * PERO MAS ABAJO LE PONGO PARA LOS DOS CASOS, PAR O IMPAR
*/

import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.*;

public class ContadorVocales extends JFrame implements ActionListener
{
    public JTextArea txtMiCaja = new JTextArea(20,30);
    public JButton btnCalcular = new JButton("CALC. VOCALES");

    public ContadorVocales()
    {
        super("CONTADOR DE VOCALES");
        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        this.setSize(400,430);
        
        FlowLayout DISTRIBUIDOR = new FlowLayout(FlowLayout.CENTER,10,10);
        this.setLayout(DISTRIBUIDOR);
        
        this.btnCalcular.addActionListener(this);
        
        this.add(this.txtMiCaja);
        this.add(this.btnCalcular);
        
        this.setVisible(true);
    }    
    
    @Override
    public void actionPerformed(ActionEvent AE) 
    {
        char[] ArrayTexto = this.txtMiCaja.getText().toCharArray();
        int[] Vocales = new int[5];
        
        for(int i=0 ; i < ArrayTexto.length() ; i++)
        {
            switch(ArrayTexto[i])
            {
                case 'a': Vocales[0]++;break;
                case 'A': Vocales[0]++;break;
                case 'e': Vocales[1]++;break;
                case 'E': Vocales[1]++;break;
                case 'i': Vocales[2]++;break;
                case 'I': Vocales[2]++;break;
                case 'o': Vocales[3]++;break;
                case 'O': Vocales[3]++;break;
                case 'u': Vocales[4]++;break;  
                case 'U': Vocales[4]++;break;    
            }
        }   
        
        JOptionPane.showMessageDialog(null,"EL TEXTO ESCRITO ES : \n\n" + this.txtMiCaja.getText()
                                            + "\n\n TOTAL : " + ArrayTexto.length
                                            + "\n\n\n VOCALES : \n\n"
                                            + "\nVOCAL 'A' = " + Vocales[0] + " ES " + ParImpar(Vocales[0])
                                            + "\nVOCAL 'E' = " + Vocales[1] + " ES " + ParImpar(Vocales[1])
                                            + "\nVOCAL 'I' = " + Vocales[2] + " ES " + ParImpar(Vocales[2])
                                            + "\nVOCAL 'O' = " + Vocales[3] + " ES " + ParImpar(Vocales[3])
                                            + "\nVOCAL 'U' = " + Vocales[4] + " ES " + ParImpar(Vocales[4]));                
    }
    
    public String ParImpar(int Num)
    {
        //-- SI NO CONSIDERAS QUE EL NUMERO 0 ES "PAR" ENTONCES
        //-- CAMBIA ESTA PARTE "if(Num % 2 == 0)" POR "if(Num % 2 == 0 && Num != 0)"
        if(Num % 2 == 0)
        {           
            return "PAR";
        }
        else
        {
            return "IMPAR";
        }
    }
    
    public static void main(String[] args) 
    {
        ContadorVocales ContVocales = new ContadorVocales();
    }   
}

DALE CLICK EN LA IMAGEN PARA BAJARTE EL PROYECTO CON LOS 2 EJERCICIOS


IMPORTANTE : "TODOS LOS CODIGOS INDICADOS AQUI SON ESCRITOS POR MI PERSONA, ASI QUE CUALQUIER DUDA O EJERCICIO QUE NO PUEDAN RESOLVER, NO DUDEN EN MANDARME UN E-MAIL A MI CORREO"
shamirdhc31@gmail.com

6 comentarios:

  1. tu eres un duro en Java , felicitacion man
    lo unico que me falta es que , necesito que me tire la respuesta dentro del mismo panel , en un Lebal ...
    y a demas me dijo error en la longitud de la palabra for(int i=0 ; i < ArrayTexto.length() ; i++)

    Gracias !!!

    ResponderEliminar
    Respuestas
    1. a claro.. el resultado puede ser dentro de esa misma ventana.. wenno yo ya te lo mando a tu correo, en cuanto al error no se ahh, que PALABRA le pusiste para que te vote error, a ver si me dices mejor como es k te voto el error... por k a mi no me vota errores... a ver si lo podemos arreglar...

      Eliminar
    2. ME ESTA DIRANDO ERROR EN EL (LENGTH)
      Y ESPERO QUE PEUDE AYUDAR PARA QUE PEUDE TIRA EN LA MISMA PANEL

      Eliminar
    3. No creo que vote error en el .lengt por que ese es un metodo definido en java para los arrays y no se necesita declarar, wenno de todas maneras aqui tengo el ejercicio que te vota el resultado en la misma ventana.... bajatelo... sabes a mi no me vota errores... aqui te paso el proyecto...

      https://dl.dropbox.com/u/85623720/CONTADOR%20DE%20VOCALES%2002.rar

      Eliminar
  2. Mi estimado esta xvr tu blog tienes codigo bien interesante .... te comparto mi aporte ... http://darwinomartics.blogspot.com/2013/08/sistema-de-almacen-de-residuos.html un sistema dew almacen
    http://darwinomartics.blogspot.com/2013/08/juego21-basico-en-java.html juego de dado .. parecido
    http://darwinomartics.blogspot.com/2013/06/java-ejercicio-basico-creacion-de.html registro de uuarios suerteee.

    ResponderEliminar
    Respuestas
    1. vi tus aportes... genial ver que tbn compartes :) ..

      Eliminar