SlideShare une entreprise Scribd logo
1  sur  8
Télécharger pour lire hors ligne
import javax.swing.*;

import java.awt.*;

import java.io.*;

public class errores{

        public static void main(String [] args){

                //String mensaje="nPalabra a buscar y errores:";

                String leer = Leer("archivo.txt");

                String introducido=JOptionPane.showInputDialog(leer);




        JOptionPane.showMessageDialog(null,Errorpalabra(introducido,checar(introducido,leer,1)
));

        }



        public static String Errorpalabra(String introducido,String checar){

        String PalabraAChecar = introducido;

      String PalabraElegida = checar;

      String PalabraAuxiliar = "";

      String msj = "";

      boolean hecho = false;



      if(introducido.equals(checar)){

                                          msj = "Sin error.";

       }else{



                         if (PalabraElegida.startsWith(PalabraAChecar))
{

                 PalabraAuxiliar = PalabraElegida.replace(PalabraAChecar, "");

                 msj += "Falta: "+PalabraAuxiliar+"n" ;

                 PalabraAuxiliar = "";

                 hecho = true;

             }

             if (PalabraAChecar.startsWith(PalabraElegida))

             {

                 PalabraAuxiliar = PalabraAChecar.replace(PalabraElegida, "");

                 msj += "Sobra: "+PalabraAuxiliar+"n";

                 PalabraAuxiliar = "";

                 hecho = true;

             }




             if (PalabraAChecar.length() < PalabraElegida.length() && hecho == false)

             {

                 PalabraAuxiliar = "";

                 for (int i = 0; i < PalabraAChecar.length(); i++)

                 {

                     if (!(PalabraElegida.charAt(i)+"").equals(PalabraAChecar.charAt(i)+""))

                     {

                         msj += "Letra: " + PalabraAChecar.charAt(i) + " en la posici�n: " + (i +
1) + "n";

                     }

                 }
for (int i = 0; i < (PalabraElegida.length() - PalabraAChecar.length()); i++)

                 {

                     PalabraAuxiliar += PalabraElegida.charAt(i + PalabraAChecar.length());

                 }



                 msj += "Falt�: "+PalabraAuxiliar;

                 PalabraAuxiliar = "";

                 hecho = true;



             }



             if (PalabraAChecar.length() > PalabraElegida.length() && hecho == false)

             {

                 PalabraAuxiliar = "";

                 for (int i = 0; i < PalabraElegida.length(); i++)

                 {

                     PalabraAuxiliar += PalabraAChecar.charAt(i);

                     if (!(PalabraElegida.charAt(i)+"").equals(PalabraAChecar.charAt(i)+""))

                     {

                         msj+= "Letra: " + PalabraAChecar.charAt(i) + " en la posici�n: " + (i +
1) + "n";

                     }

                 }

                 PalabraAuxiliar = PalabraAChecar.replace(PalabraAuxiliar, "");

                 if (PalabraAuxiliar.length() > 0)

                 {
for (int i = 0; i < PalabraAuxiliar.length(); i++)

                               {

                               msj += "Letra: " + PalabraAuxiliar.charAt(i) + " en la posici�n: " +
(PalabraElegida.length() + i + 1) + "n";

                               }

                           }

                           PalabraAuxiliar = "";

                           hecho = true;

                       }



                       if (PalabraAChecar.length() == PalabraElegida.length() && hecho == false)

                       {



                           for (int i = 0; i < PalabraAChecar.length(); i++)

                           {

                               if (!(PalabraElegida.charAt(i)+"").equals(PalabraAChecar.charAt(i)+""))

                               {

                                   msj += "Letra: " + PalabraAChecar.charAt(i) + " en la posici�n: " + (i +
1) + "n";



                               }

                           }

                           PalabraAuxiliar = "";

                           hecho = true;

                       }

       }
return msj;

        }

        public static String Leer(String archivoPath){

File archivo = null;

FileReader fr = null;

BufferedReader br = null;

String txt = "";



try {



    archivo = new File (archivoPath);

    fr = new FileReader (archivo);

    br = new BufferedReader(fr);




    String linea;

    while((linea=br.readLine())!=null)

     txt = txt+linea+"n";

}

catch(Exception e){

    e.printStackTrace();

}finally{



    try{

     if( null != fr ){
fr.close();

        }

    }catch (Exception e2){

        e2.printStackTrace();

    }

    return txt;

}

                     }

                     public static String checar(String introducido,String leer, int opcion){



        String PalabraAChecar = introducido;

        String Letras = "";

        String msj = "";

        String palabras = leer;

        String palabra[] = palabras.split("n");

        int[] palNum = new int[palabra.length];



        int contador = 0;



        for (int pal = 0; pal<palabra.length; pal++)

        {

            if(introducido.equals(palabra[pal])){

                    if(opcion == 0){

                             msj = "Has escrito correctamente la palabra:nn"+introducido;

                    }else{

                             msj = introducido;
}

                break;



       }else{



                             for (int i = 0; i < PalabraAChecar.length(); i++)

                             {

                                 for (int j = i + 1; j < palabra[pal].length(); j++)

                                 {

                                     Letras = palabra[pal];

                                     if ((Letras.charAt(i) + "").equals(PalabraAChecar.charAt(i) + ""))

                                     {

                                         contador++;

                                         break;

                                     }

                                 }

                             }

                             palNum[pal] = contador;

                             contador = 0;

                         }

                         int posicion = mayor(palNum.length, palNum,palabra);

                         if(opcion == 0){

                       msj = "Escribiste mal la palabra:n"+introducido+"nnLa m�s cercana
es:n"+palabra[posicion];

                         }else{

                             msj = palabra[posicion];
}

        }



        return msj;

    }

    public static int mayor(int n,int[] ns, String[] sugerencia)

    {

        int mayor = -99, i, posicion = 0;



        for (i = 0; i < n; i++)

        {



            if ((mayor < ns[i]) && (ns[i] != 0))

            {

                mayor = ns[i];

                posicion = i;



            }



        }



        return posicion;

    }



}

Contenu connexe

Similaire à Error palabra.java

Similaire à Error palabra.java (16)

UNIVERSIDAD CENTRAL DEL ECUADOR CAMILA ESCOBAR LOPEZ GETCHARS
UNIVERSIDAD CENTRAL DEL ECUADOR CAMILA ESCOBAR LOPEZ GETCHARSUNIVERSIDAD CENTRAL DEL ECUADOR CAMILA ESCOBAR LOPEZ GETCHARS
UNIVERSIDAD CENTRAL DEL ECUADOR CAMILA ESCOBAR LOPEZ GETCHARS
 
UNIVERSIDAD CENTRAL DEL ECUADOR GETCHARS
UNIVERSIDAD CENTRAL DEL ECUADOR GETCHARSUNIVERSIDAD CENTRAL DEL ECUADOR GETCHARS
UNIVERSIDAD CENTRAL DEL ECUADOR GETCHARS
 
Deber de programación
Deber de programación  Deber de programación
Deber de programación
 
Action scrip
Action scripAction scrip
Action scrip
 
Progrando en flash(action scrit).
Progrando en flash(action scrit).Progrando en flash(action scrit).
Progrando en flash(action scrit).
 
Practicas c++
Practicas c++Practicas c++
Practicas c++
 
Practicas c++
Practicas c++Practicas c++
Practicas c++
 
Metodos de ordenamiento
Metodos de ordenamientoMetodos de ordenamiento
Metodos de ordenamiento
 
Practicas segundo parcial de programacion avanzada
Practicas segundo parcial de programacion avanzadaPracticas segundo parcial de programacion avanzada
Practicas segundo parcial de programacion avanzada
 
Dart como alternativa a TypeScript (Codemotion 2016)
Dart como alternativa a TypeScript (Codemotion 2016)Dart como alternativa a TypeScript (Codemotion 2016)
Dart como alternativa a TypeScript (Codemotion 2016)
 
Java Basico
Java BasicoJava Basico
Java Basico
 
Action escript
Action escriptAction escript
Action escript
 
Ejercicios resueltos practica 2 (nueva 2014) informática ii
Ejercicios resueltos practica 2 (nueva 2014) informática iiEjercicios resueltos practica 2 (nueva 2014) informática ii
Ejercicios resueltos practica 2 (nueva 2014) informática ii
 
funciones programacion
funciones programacionfunciones programacion
funciones programacion
 
Arreglos
ArreglosArreglos
Arreglos
 
Kruskal
KruskalKruskal
Kruskal
 

Dernier

EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxEL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxMiguelAtencio10
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricKeyla Dolores Méndez
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan JosephBRAYANJOSEPHPEREZGOM
 
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxPROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxAlan779941
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanamcerpam
 
Modulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfModulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfAnnimoUno1
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíassuserf18419
 
presentacion de PowerPoint de la fuente de poder.pptx
presentacion de PowerPoint de la fuente de poder.pptxpresentacion de PowerPoint de la fuente de poder.pptx
presentacion de PowerPoint de la fuente de poder.pptxlosdiosesmanzaneros
 
Presentación de elementos de afilado con esmeril
Presentación de elementos de afilado con esmerilPresentación de elementos de afilado con esmeril
Presentación de elementos de afilado con esmerilJuanGallardo438714
 
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estossgonzalezp1
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITMaricarmen Sánchez Ruiz
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveFagnerLisboa3
 
Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxLolaBunny11
 
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdfRefrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdfvladimiroflores1
 
Desarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfDesarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfJulian Lamprea
 

Dernier (15)

EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxEL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Joseph
 
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxPROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvana
 
Modulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfModulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdf
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnología
 
presentacion de PowerPoint de la fuente de poder.pptx
presentacion de PowerPoint de la fuente de poder.pptxpresentacion de PowerPoint de la fuente de poder.pptx
presentacion de PowerPoint de la fuente de poder.pptx
 
Presentación de elementos de afilado con esmeril
Presentación de elementos de afilado con esmerilPresentación de elementos de afilado con esmeril
Presentación de elementos de afilado con esmeril
 
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estos
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNIT
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial Uninove
 
Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptx
 
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdfRefrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
 
Desarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfDesarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdf
 

Error palabra.java

  • 1. import javax.swing.*; import java.awt.*; import java.io.*; public class errores{ public static void main(String [] args){ //String mensaje="nPalabra a buscar y errores:"; String leer = Leer("archivo.txt"); String introducido=JOptionPane.showInputDialog(leer); JOptionPane.showMessageDialog(null,Errorpalabra(introducido,checar(introducido,leer,1) )); } public static String Errorpalabra(String introducido,String checar){ String PalabraAChecar = introducido; String PalabraElegida = checar; String PalabraAuxiliar = ""; String msj = ""; boolean hecho = false; if(introducido.equals(checar)){ msj = "Sin error."; }else{ if (PalabraElegida.startsWith(PalabraAChecar))
  • 2. { PalabraAuxiliar = PalabraElegida.replace(PalabraAChecar, ""); msj += "Falta: "+PalabraAuxiliar+"n" ; PalabraAuxiliar = ""; hecho = true; } if (PalabraAChecar.startsWith(PalabraElegida)) { PalabraAuxiliar = PalabraAChecar.replace(PalabraElegida, ""); msj += "Sobra: "+PalabraAuxiliar+"n"; PalabraAuxiliar = ""; hecho = true; } if (PalabraAChecar.length() < PalabraElegida.length() && hecho == false) { PalabraAuxiliar = ""; for (int i = 0; i < PalabraAChecar.length(); i++) { if (!(PalabraElegida.charAt(i)+"").equals(PalabraAChecar.charAt(i)+"")) { msj += "Letra: " + PalabraAChecar.charAt(i) + " en la posici�n: " + (i + 1) + "n"; } }
  • 3. for (int i = 0; i < (PalabraElegida.length() - PalabraAChecar.length()); i++) { PalabraAuxiliar += PalabraElegida.charAt(i + PalabraAChecar.length()); } msj += "Falt�: "+PalabraAuxiliar; PalabraAuxiliar = ""; hecho = true; } if (PalabraAChecar.length() > PalabraElegida.length() && hecho == false) { PalabraAuxiliar = ""; for (int i = 0; i < PalabraElegida.length(); i++) { PalabraAuxiliar += PalabraAChecar.charAt(i); if (!(PalabraElegida.charAt(i)+"").equals(PalabraAChecar.charAt(i)+"")) { msj+= "Letra: " + PalabraAChecar.charAt(i) + " en la posici�n: " + (i + 1) + "n"; } } PalabraAuxiliar = PalabraAChecar.replace(PalabraAuxiliar, ""); if (PalabraAuxiliar.length() > 0) {
  • 4. for (int i = 0; i < PalabraAuxiliar.length(); i++) { msj += "Letra: " + PalabraAuxiliar.charAt(i) + " en la posici�n: " + (PalabraElegida.length() + i + 1) + "n"; } } PalabraAuxiliar = ""; hecho = true; } if (PalabraAChecar.length() == PalabraElegida.length() && hecho == false) { for (int i = 0; i < PalabraAChecar.length(); i++) { if (!(PalabraElegida.charAt(i)+"").equals(PalabraAChecar.charAt(i)+"")) { msj += "Letra: " + PalabraAChecar.charAt(i) + " en la posici�n: " + (i + 1) + "n"; } } PalabraAuxiliar = ""; hecho = true; } }
  • 5. return msj; } public static String Leer(String archivoPath){ File archivo = null; FileReader fr = null; BufferedReader br = null; String txt = ""; try { archivo = new File (archivoPath); fr = new FileReader (archivo); br = new BufferedReader(fr); String linea; while((linea=br.readLine())!=null) txt = txt+linea+"n"; } catch(Exception e){ e.printStackTrace(); }finally{ try{ if( null != fr ){
  • 6. fr.close(); } }catch (Exception e2){ e2.printStackTrace(); } return txt; } } public static String checar(String introducido,String leer, int opcion){ String PalabraAChecar = introducido; String Letras = ""; String msj = ""; String palabras = leer; String palabra[] = palabras.split("n"); int[] palNum = new int[palabra.length]; int contador = 0; for (int pal = 0; pal<palabra.length; pal++) { if(introducido.equals(palabra[pal])){ if(opcion == 0){ msj = "Has escrito correctamente la palabra:nn"+introducido; }else{ msj = introducido;
  • 7. } break; }else{ for (int i = 0; i < PalabraAChecar.length(); i++) { for (int j = i + 1; j < palabra[pal].length(); j++) { Letras = palabra[pal]; if ((Letras.charAt(i) + "").equals(PalabraAChecar.charAt(i) + "")) { contador++; break; } } } palNum[pal] = contador; contador = 0; } int posicion = mayor(palNum.length, palNum,palabra); if(opcion == 0){ msj = "Escribiste mal la palabra:n"+introducido+"nnLa m�s cercana es:n"+palabra[posicion]; }else{ msj = palabra[posicion];
  • 8. } } return msj; } public static int mayor(int n,int[] ns, String[] sugerencia) { int mayor = -99, i, posicion = 0; for (i = 0; i < n; i++) { if ((mayor < ns[i]) && (ns[i] != 0)) { mayor = ns[i]; posicion = i; } } return posicion; } }