Está en la página 1de 7

ESCUELAPOLITCNICANACIONAL

IngenieraenSistemasInformticosydeComputacin
PROGRAMACINII
ByronJaramillo
29052009
Objetivo:
ProgramarenJavaEclipseundiccionarioendondepodamosrealizarlassiguientes
acciones:
Agregar palabras y significados al diccionario.
Buscar palabras en el diccionario y devolver el significado.
Borrar palabras y su significado.
Ordenar el diccionario por palabras.
Desordenar el diccionario.
Borrar todo el contenido del diccionario.
Se debe de crear dos clases PalabraSignificado y Diccionario.
ManualdelProgramador:

//CLASE PALABRASIGNIFICADO
package diccionario;

public class PalabraSignificado {


//Atributos
private String palabra;
private String significado;
//Constructores
//Constructor vaco
public PalabraSignificado() {
super();
this.palabra="";
this.significado="";
}
//Constructor con argumentos
public PalabraSignificado(String palabra, String significado) {
super();
this.palabra = palabra;
this.significado = significado;
}
//Mtdos Getters and Setters
public String getPalabra() {
return palabra;
}
public void setPalabra(String palabra) {

Byron Jaramillo

Pgina 1

ESCUELAPOLITCNICANACIONAL

IngenieraenSistemasInformticosydeComputacin
PROGRAMACINII
ByronJaramillo
29052009
}

this.palabra = palabra;

public String getSignificado() {


return significado;
}
public void setSignificado(String significado) {
this.significado = significado;
}
//Mtodo para imprimir
public String toString(){
return "Palabra: "+this.palabra+"\n"+"Significado:
"+this.significado;
}

//CLASE DICCIONARIO
package diccionario;

import java.util.ArrayList;
import java.util.Collections;
public class Diccionario {
//Atributos
private ArrayList <PalabraSignificado> diccionario;
//Constructores
//Constructor vaco
public Diccionario() {
super();
this.diccionario = new ArrayList <PalabraSignificado>();
}
//Constructor con argumentos
public Diccionario(ArrayList<PalabraSignificado> diccionario) {
super();
this.diccionario = diccionario;
}
//Mtodos Getters and Setters
public ArrayList<PalabraSignificado> getDiccionario() {
return diccionario;

Byron Jaramillo

Pgina 2

ESCUELAPOLITCNICANACIONAL

IngenieraenSistemasInformticosydeComputacin
PROGRAMACINII
ByronJaramillo
29052009
}
public void setDiccionario(ArrayList<PalabraSignificado>
diccionario) {
this.diccionario = diccionario;
}
//Mtodo para agregar palabras y significado
public void addPalabraSignificado(PalabraSignificado palabra){
this.diccionario.add(palabra);
}
c
public String significadoPalabra(String palabra){
for (PalabraSignificado aux:this.diccionario){
if (aux.getPalabra().compareTo(palabra) == 0)
return aux.getSignificado();
}
return "No Existe";
}
//Mtodo para borrar palabras
public void removePalabra(PalabraSignificado palabra){
this.diccionario.remove(palabra);
}
//Mtodo para ordenar el diccionario por palabras
public void ordenar(){
Collections.sort(this.diccionario, new ComparadorPalabras());
}
//Mtodo para Desordenar el diccionario
public void desordenar(){
Collections.shuffle(this.diccionario);
}
//Mtodo para borrar todo el contenido
public void borrarTodo(){
Collections.emptyList();
}
//Mtodo para Imprimir
public String toString(){
String salida = "Palabras: \n";
for (PalabraSignificado aux:diccionario){
salida += "\n"+aux.toString();
}
return salida;
}

Byron Jaramillo

Pgina 3

ESCUELAPOLITCNICANACIONAL

IngenieraenSistemasInformticosydeComputacin
PROGRAMACINII
ByronJaramillo
29052009

//CLASE COMPARADORPALABRAS
package diccionario;

import java.util.Comparator;
public class ComparadorPalabras implements Comparator{
int compararPalabra;
PalabraSignificado palabra1,palabra2;
public int compare(Object objeto1,Object objeto2)
{

palabra1=(PalabraSignificado)objeto1;
palabra2=(PalabraSignificado)objeto2;
compararPalabra=
(palabra1.getPalabra().compareTo(palabra2.getPalabra()));
return compararPalabra;
}
}

//CLASE APLICACION
package diccionario;
import javax.swing.JOptionPane;
public class Aplicacion {

public static void main(String[] args) {


//Instanciado de un objeto
Diccionario diccionario = new Diccionario();
//Para ingresar una opcion
int opcion = JOptionPane.showConfirmDialog(null, "Ingrese
Palabra?");
while (opcion == 0){
PalabraSignificado palabraAux = new
PalabraSignificado();

Byron Jaramillo

Pgina 4

ESCUELAPOLITCNICANACIONAL

IngenieraenSistemasInformticosydeComputacin
PROGRAMACINII
ByronJaramillo
29052009
palabraAux.setPalabra(JOptionPane.showInputDialog("Ingrese una
palabra"));
palabraAux.setSignificado(JOptionPane.showInputDialog("Ingrese el
Significado"));
//Adicionar Palabras
diccionario.addPalabraSignificado(palabraAux);
//Opcin para ingresar ms palabras
opcion = JOptionPane.showConfirmDialog(null, "Ingrese
Palabra?");
}
//Desplega el diccionario
JOptionPane.showMessageDialog(null, diccionario.toString());
//Buscar Palabra y devolver su significado
String palabraBuscarAux =
JOptionPane.showInputDialog("Ingrese la palabra que desea buscar el
significado");
String aux =
diccionario.significadoPalabra(palabraBuscarAux);
if (aux == null)
JOptionPane.showMessageDialog(null, "Nombre incorrecto
de la palabra");
else
JOptionPane.showMessageDialog(null, aux);
//Borrar palabra y su significado
String palabraBorrarAux =
JOptionPane.showInputDialog("Ingrese la palabra que desea borrar");
String aux = diccionario.removePalabra(palabraBorrarAux);
JOptionPane.showMessageDialog(null, diccionario.toString());
//Ordenar el diccionario por palabras
diccionario.ordenar();
JOptionPane.showMessageDialog(null, diccionario.toString(),
"Lista Ordenada", JOptionPane.PLAIN_MESSAGE);
//Desordenar el diccionario
diccionario.desordenar();
JOptionPane.showMessageDialog(null, diccionario.toString(),
"Lista Desordenada", JOptionPane.PLAIN_MESSAGE);

//borrado de todo
diccionario.borrarTodo();
JOptionPane.showMessageDialog(null, diccionario.toString());

Byron Jaramillo

Pgina 5

ESCUELAPOLITCNICANACIONAL

IngenieraenSistemasInformticosydeComputacin
PROGRAMACINII
ByronJaramillo
29052009
ManualdelUsuario:
Los resultados obtenidos del diccionario son los siguientes:

Byron Jaramillo

Pgina 6

ESCUELAPOLITCNICANACIONAL

IngenieraenSistemasInformticosydeComputacin
PROGRAMACINII
ByronJaramillo
29052009

Bibliografa:
Java,CmoProgramar?,Deitel&Deitel,quintaedicin.

Byron Jaramillo

Pgina 7