You are on page 1of 7

Sal Hernndez Len 2123043785

Agenda

App

Lista

Contacto

Pseudocdigo: Agenda
import java.util.*;
public class Agenda1 extends App{
public static void Menu(ArrayList<Lista> arrayAgenda1){
Scanner sc=new Scanner(System.in);
int opcion;
do{
System.out.println("Elige una opcin");
System.out.println("1.- Agregar nuevo contacto: ");
System.out.println("2.- Borrar contacto: ");
System.out.println("3.- Buscar contacto: ");
System.out.println("4.-Mostrar todos los contactos: ");
System.out.println("5.- Salir");
opcion=sc.nextInt();
switch(opcion){
case 1:{
Scanner nombre=new Scanner(System.in);
Scanner telefono=new Scanner(System.in);
System.out.println("Dame el nombre del contacto: ");
String nom=nombre.nextLine();
System.out.println("Dame el telefono del contacto: ");
int tel=telefono.nextInt();
Contacto contacto=new Contacto(nom, tel);
int i=0;
while(arrayAgenda1.get(i).getId()!=nom.charAt(0)&& arrayAgenda1.get(i).getID()!
=nom.charAt(0))

i++;
arrayAgenda1.get(i).getAgenda().addFirst(contacto);
arrayAgenda1.get(i).OrdenarLista(arrayAgenda1.get(i).getAgenda());
break;
}
case 2:{
Scanner nombre=new Scanner(System.in);
System.out.println("Dame el nombre: ");
String nom=nombre.nextLine();
int i=0;
while(arrayAgenda1.get(i).getId()!=nom.charAt(0)&& arrayAgenda1.get(i).getID()!
=nom.charAt(0))
i++;
arrayAgenda1.get(i).EliminaContacto(arrayAgenda1.get(i).getAgenda(), nom);
break;
}
case 3:{
Scanner nombre=new Scanner(System.in);
System.out.println("Dame el nombre del contacto a buscar ");
String nom=nombre.nextLine();
Contacto buscador;
int i=0;
while(arrayAgenda1.get(i).getId()!=nom.charAt(0)&& arrayAgenda1.get(i).getID()!
=nom.charAt(0))
i++;
buscador=arrayAgenda1.get(i).BuscarContacto(arrayAgenda1.get(i).getAgenda(), 0,
arrayAgenda1.get(i).getAgenda().size(), nom);
if(buscador==null)
System.out.println("No existe el contacto buscado");
else
System.out.println(buscador.toString());
break;
}
case 4: {
for (int i=0;i<arrayAgenda1.size();i++){
System.out.println(arrayAgenda1.get(i).getID()+""+arrayAgenda1.get(i).getId());
if(arrayAgenda1.get(i).getAgenda().isEmpty()){
}
else{
for(int j=0;j<arrayAgenda1.get(i).getAgenda().size();j++){
System.out.println(arrayAgenda1.get(i).getAgenda().get(j).toString());
}
}
}
break;
}
case 5:{
System.out.println("Hasta pronto (^_^)/");
}
}
}
while(opcion!=5);

}
public static void main(String[] args) {
ArrayList<Lista> arrayAgenda1=LlenaArreglo();
Menu(arrayAgenda1);
}
}

Pseudocdigo: App

import java.util.*;
public class App {

public static ArrayList LlenaArreglo(){


ArrayList<Lista> arrayAgenda = new ArrayList();
char[] abc=new char[26];
char[] ABC=new char[26];
//Inicializamos nuestro arreglo de A hasta Z*
for(int i=97, j= 0; i<123; i++, j++)
ABC[j]= (char) i;
for(int i=65, j= 0; i<91; i++, j++)
abc[j] = (char) i;

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


LinkedList<Contacto> lista=new LinkedList();
arrayAgenda.add(new Lista(ABC[i], abc[i], lista));
}
return arrayAgenda;
}

Pseudocdigo: Lista
import java.util.LinkedList;
public class Lista {
//Atributos de calidad
private char ID;
private char id;//identificador de agenda
private LinkedList<Contacto> App;//Agenda de tipo contacto
//Constructor que inicializa la lista
public Lista(char ID, char id, LinkedList<Contacto> agenda) {
this.id = id;
this.ID= ID;
this.App= agenda;
}
public Lista(char string, LinkedList<Contacto> lista) {
}
//Regresa el identificador
public char getID(){
return ID;
}
public char getId() {
return id;
}
//Regresa la agenda de tipo contacto
public LinkedList<Contacto> getAgenda() {
return App;

}
public void OrdenarLista(LinkedList<Contacto> agenda){
for(int i=0;i<agenda.size()-1;i++){
for(int j=0;j<agenda.size()-1;j++){
if(agenda.get(j).getNombre().compareTo(agenda.get(j+1).getNombre())>0){
Contacto aux=agenda.get(j+1);
agenda.set(j+1, agenda.get(j));
agenda.set(j, aux);
}
}
}
}
public Contacto BuscarContacto(LinkedList<Contacto> agenda, int i, int f, String p){
int medio;
if(agenda.isEmpty())
return null;
medio=(i+f)/2;
if(agenda.get(medio).getNombre().equals(p))
return agenda.get(medio);
else
if(agenda.get(medio).getNombre().compareTo(p)>0)
return BuscarContacto(agenda,i,medio-1,p);
else
return BuscarContacto(agenda,medio+1,f,p);
}
public void EliminaContacto( LinkedList<Contacto> agenda, String nombre){
if(agenda.isEmpty())
System.out.println("El contacto no existe");
else
}

agenda.remove(BuscarContacto(agenda,0,agenda.size(),nombre));

}
Pseudocdigo: Contacto
public class Contacto {
private String nombre;
private int telefono;
public Contacto(String nombre, int telefono) {
//super();
this.nombre = nombre;
this.telefono = telefono;
}
public String getNombre() {
return nombre;
}
public void setNombre(String nombre) {
this.nombre = nombre;
}
public int getTelefono() {
return telefono;
}
public void setTelefono(int telefono) {
this.telefono = telefono;
}
public String toString(){
return "Nombre: "+nombre+" \nTelefono: "+telefono+"\n";

You might also like