Foros del Web » Programación para mayores de 30 ;) » Java »

auyda con nodos y listas

Estas en el tema de auyda con nodos y listas en el foro de Java en Foros del Web. pregunta. ingresar un nombre y 2 notas y sacar su promedio... listas enlazadas. lo hice asi pero me sale errore en listas mirenlo en que ...
  #1 (permalink)  
Antiguo 06/12/2010, 19:20
 
Fecha de Ingreso: diciembre-2010
Ubicación: Peru
Mensajes: 2
Antigüedad: 13 años, 11 meses
Puntos: 0
auyda con nodos y listas

pregunta. ingresar un nombre y 2 notas y sacar su promedio...
listas enlazadas.
lo hice asi pero me sale errore en listas
mirenlo en que hice mal porfa ayudenme
------------
Exception in thread "main" java.lang.NullPointerException
at cesar.Lista.insertarfinal(Lista.java:33)
at cesar.Lista.crearlista(Lista.java:100)
at cesar.Principal.main(Principal.java:9)
Java Result: 1

---------------- nodo para notas----------
public class Nodo
{
int Dato;
Nodo enlace;
public Nodo()
{
Dato=0;
enlace=null;
}
public void setDato(int valor)
{
Dato=valor;
}
public void setEnlace(Nodo numero)
{
enlace=numero;
}
public int getDato()
{
return Dato;
}
public Nodo getEnlace()
{
return enlace;
}
}
----- nodo para nombre--

public class Nodo2
{
String cadena;
Nodo2 enlace;
public Nodo2()
{
cadena="";
enlace=null;
}
public void setcadena(String cad)
{
cadena=cad;
}
public void setenlace(Nodo2 n)
{
enlace=n;
}
public String getcadena()
{
return cadena;
}
public Nodo2 getenlace()
{
return enlace;
}
}
-----------lista enlazada----
import java.io.*;
public class Lista
{
Nodo cab,ultimo,nuevo;
Nodo2 cab2,ultimo2,nuevo2;
public Lista()
{
cab=null;
ultimo=null;
nuevo=null;
cab2=ultimo2=nuevo2=null;
}
public void crearnodo(int n)
{
nuevo=new Nodo();
nuevo.setDato(n);
nuevo.setEnlace(null);
}
public void crearnodo2(String cad)
{
nuevo2=new Nodo2();
nuevo2.setcadena(cad);
nuevo2.setenlace(null);
}
public void insertarfinal(int n)
{
crearnodo(n);
if(cab==null)
cab=nuevo;
else
{
ultimo.setEnlace(nuevo);
ultimo=nuevo;
}
}
public void insertarfinalS(String m)
{
crearnodo2(m);
if(cab2==null) cab2=nuevo2;
else
{
ultimo2.setenlace(nuevo2);
ultimo2=nuevo2;
}
}
public boolean vacioint()
{
return cab==null;
}
public boolean vacioString()
{
return cab2==null;
}
public void ImprimirLista()
{
int x;
double prom;
Nodo aux=new Nodo();
Nodo2 aux2=new Nodo2();
aux=cab;
aux2=cab2;
while(aux2!=null)
{
x=1;
prom=0;
System.out.println(aux2.getcadena()+" Sus notas son");
while(x!=3)
{
prom+=aux.getDato();
System.out.println("Nota "+x+" : "+aux.getDato());
x++;
aux=aux.getEnlace();
}
System.out.println("Promedio es : "+prom/2);
aux2=aux2.getenlace();
}
System.out.println("IMPRESO TODOS LOS DATOS");
}
public void crearlista()throws IOException
{
DataInputStream leer=new DataInputStream(System.in);
String nombre;
int notas,x;
char option;
do
{
x=1;
do
{
System.out.print("Ingrese el nombre del alumno :");
nombre=leer.readLine();
if(nombre.length()==0) System.out.println("VACIO...");
}while(nombre.length()==0);
insertarfinalS(nombre);
while(x!=3)
{
System.out.println("NOTA "+x+" : ");
notas=Integer.parseInt(leer.readLine());
insertarfinal(notas);
x++;
}

System.out.println("Desea continuar S/N :");
nombre=leer.readLine();
option=nombre.charAt(0);
}while(option=='s' || option=='S');
}
}
--------- MAIN--------
import java.io.*;
public class Principal
{
public static void main(String[] args) throws IOException
{
Lista oLista= new Lista();
System.out.println("INGRESAR DATOS");
oLista.crearlista();
System.out.println("IMPRIMIENDO DATOS");
oLista.ImprimirLista();
}
}
------------------------

Etiquetas: listas, nodos
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 22:21.