Autor Tema: Comparar palabras usando el método equals en Java. (Ejercicio CU00662B).  (Leído 3733 veces)

arcanFAC

  • Visitante
Hola de nuevo  :P :-[ , aquí presento este ejercicio para su correccion respectiva:

Citar
Crea una clase en cuyo método main ejecutes una comparación letra a letra usando equals de dos palabras usando bucles. Por ejemplo si las palabras son “avispa” y “ave” el programa debe dar como resultado: ¿Letra 1 igual en las dos palabras? True. ¿Letra 2 igual en las dos palabras? True ¿Letra 3 igual en las dos palabras? False ¿Letra 4 igual en las dos palabras? La palabra 2 no tiene letra 4 ¿Letra 5 igual en las dos palabras? La palabra 2 no tiene letra 5 ¿Letra 6 igual en las dos palabras? La palabra 2 no tiene letra 6.

Código: [Seleccionar]
import java.util.Scanner;
public class Comparacion{
    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);
        String palabra1, palabra2;
        System.out.println("Por favor ingrese dos palabras que desea comparar");
        palabra1 = sc.next();
        palabra2 = sc.next();
        int mayor, contador=0;
        if(palabra1.length() > palabra2.length()){mayor = palabra1.length();}
        else{mayor = palabra2.length();}
        for(int i=0; i<mayor; i++){
            contador ++;
            System.out.print("Letra " + (i + 1) + " igual en las dos palabras? ");
            if(palabra1.length() >= contador && palabra2.length() >= contador){
                if(palabra1.substring(i, i+1).equals(palabra2.substring(i, i+1))){System.out.println("True");}
                else {System.out.println("False");}
            }
            else if(palabra1.length() < palabra2.length()){
                System.out.println("La palabra 1 no tiene letra " + (i+1));
            }
            else {
                System.out.println("La palabra 2 no tiene letra " + (i+1));
            }
        }
    }
}
« Última modificación: 01 de Abril 2015, 09:56 por Ogramar »

Marcos Martín

  • Sin experiencia
  • *
  • Mensajes: 11
    • Ver Perfil
Re:Aprender java. (CU00662B).Método equals en java.
« Respuesta #1 en: 31 de Marzo 2015, 13:10 »
Buenas arcanFAC.

El ejercicio esta correcto.

Como algo a mejorar y por ser purista , recuerda inicializar las variables.

Los tipo String a "", int a cero, double a 0.0, etc, ...

Un saludo.

Ogramar

  • Moderador Global
  • Experto
  • *******
  • Mensajes: 2662
    • Ver Perfil
Hola arcanFAC, hay un detalle que te podrías plantear: ¿es realmente necesaria la variable contador? Fíjate que tienes esta variable dentro de un bucle for, el propio bucle for ya cuenta, por lo que no sería necesario usar otra variable adicional para contar. En este caso contador equivale a i+1 siendo i la variable que cuenta en el bucle for

El código quedaría así:

Código: [Seleccionar]
import java.util.Scanner;
public class Comparacion2{
    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);
        String palabra1, palabra2;
        System.out.println("Por favor ingrese dos palabras que desea comparar");
        palabra1 = sc.next();
        palabra2 = sc.next();
        int mayor;
        if(palabra1.length() > palabra2.length()){mayor = palabra1.length();}
        else{mayor = palabra2.length();}
        for(int i=0; i<mayor; i++){
            System.out.print("Letra " + (i + 1) + " igual en las dos palabras? ");
            if(palabra1.length() >= i+1 && palabra2.length() >= i+1){
                if(palabra1.substring(i, i+1).equals(palabra2.substring(i, i+1))){System.out.println("True");}
                else {System.out.println("False");}
            }
            else if(palabra1.length() < palabra2.length()){
                System.out.println("La palabra 1 no tiene letra " + (i+1));
            }
            else {
                System.out.println("La palabra 2 no tiene letra " + (i+1));
            }
        }
    }
}

Salu2


arcanFAC

  • Visitante
Es vedad, realmente no caí en cuenta mientras lo diseñaba. Gracias por el detalle.Saludos.

 

Sobre la educación, sólo puedo decir que es el tema más importante en el que nosotros, como pueblo, debemos involucrarnos.

Abraham Lincoln (1808-1865) Presidente estadounidense.

aprenderaprogramar.com: Desde 2006 comprometidos con la didáctica y divulgación de la programación

Preguntas y respuestas

¿Cómo establecer o cambiar la imagen asociada (avatar) de usuario?
  1. Inicia sesión con tu nombre de usuario y contraseña.
  2. Pulsa en perfil --> perfil del foro
  3. Elige la imagen personalizada que quieras usar. Puedes escogerla de una galería de imágenes o subirla desde tu ordenador.
  4. En la parte final de la página pulsa el botón "cambiar perfil".