Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.


Mensajes - luisdn

Páginas: [1]
1
Hola, dejo el código del siguiente ejercicio CU00905C del curso avanzado de Java:

Citar
Crea un programa que pida por pantalla cuatro países y a continuación tres ciudades de cada uno de estos países. Los nombres de ciudades deben almacenarse en un array multidimensional cuyo primer índice sea el número asignado a cada país y el segundo índice el número asignado a cada ciudad.

Ejemplo de resultados que debe mostrar el programa:

País: Argentina                 Ciudades:        Buenos Aires       Cordoba         La Plata

País: España                     Ciudades:         Madrid                 Lugo              Sevilla

País: Francia                     Ciudades:         Paris                    Niza                Lyon

País: Italia                        Ciudades:          Roma                  Napoles         Sicilia


Código: [Seleccionar]
import java.util.Scanner;

class Paises{
    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);
        String[][] paises = new String[4][4];
        int i = 0;
       
        while(i < 4){
            System.out.println("Introduzca el nombre de un pais: ");
            paises[i][0] = sc.nextLine();
            i++;
        }
        for( i = 0 ; i < 4 ; i++){
            for(int j = 1 ; j < 4 ; j++){
                System.out.println("Introduzca una ciudad de "+paises[i][0]+" : ");
                paises[i][j] = sc.nextLine();
            }
        }
        for( i = 0 ; i < 4 ; i++){
            System.out.print("Pais "+paises[i][0]+" :   Ciudades: ");
            for(int j = 1 ; j < 4 ; j++){
                System.out.print(paises[i][j]+"         ");
            }
            System.out.println();
        }
    }
}
       

Muchas gracias

2
Hola a todos. Dejo los códigos del siguiente ejercicio CU00903C del curso avanzado de programación orientada a objetos con Java:

Citar
EJERCICIO 1

Crea un array numérico con 5 elementos. Los números de cada elemento deben ser valores pedidos por teclado al usuario. Muestra por consola el índice y el valor al que corresponde. Debes utiliza bucles tanto para pedir los valores de los elementos del array como para mostrar su contenido por pantalla.
Código: [Seleccionar]
public class PruebaArray{
    private int[] arrayInt = new int[5];

    public PruebaArray(){
        arrayInt = new int[5];
    }

    public void setNumero(int i, int a){arrayInt[i] = a;}
   
    public int getNumero(int i){return arrayInt[i];}
}

   

Código: [Seleccionar]
import java.util.Scanner;

public class Test{
    public static void main(String[] args){
        PruebaArray array = new PruebaArray();
        Scanner sc = new Scanner(System.in);
       
        System.out.println("Introduzca 5 números dentro del array: ");
        for(int i = 0 ; i < 5 ; i++){
            System.out.println("Introduzca un número: ");
            array.setNumero(i, sc.nextInt());
        }
        for(int i = 0; i < 5 ; i++){
            System.out.println("En el índice "+i+" está el número "+array.getNumero(i));
        }
    }
}

Citar
EJERCICIO 2

Crea un programa en el que se pida por consola el nombre de 2 alumnos y la nota de cada uno de ellos como valor numérico. El resultado que debe mostrarse es el nombre de cada alumno, su nota y su calificacion como texto (Sobresaliente, Notable, Bien o Suspenso).

Para ello crea un array numérico y otro de String (ambos unidimensionales). En el array numérico se insertarán las calificaciones facilitadas por el usuario entre 0 y 10 (debemos controlar que inserte una nota valida), pudiendo ser decimal. En el array de Strings se insertarán los nombres de los alumnos.

Crea también un array de String donde insertaremos el resultado de la nota con palabras admitiéndose estos valores: Sobresaliente, Notable, Bien o Suspenso.

El programa debe comprobar la nota de cada alumno teniendo en cuenta esta equivalencia:

Si la nota está entre 0 y 4,99 será un Suspenso.

Si la nota está entre 5 y 6,99 será un Bien.

Si la nota está entre 7 y 8,99 será un Notable.

Si la nota está entre 9 y 10 será un Sobresaliente.

 

Muestra por pantalla, el alumno su nota y su resultado en palabras utilizando bucles. Crea los métodos que creas convenientes.

Código: [Seleccionar]
public class NotasAlumnos{
    private float[] nota;
    private String[] alumno;
   
    public NotasAlumnos(){
        nota = new float[2];
        alumno = new String[2];
    }
   
    public void setNota(int i, float n){nota[i] = n;}
    public void setNombre(int i, String a){alumno[i] = a;}
   
    public float getNota(int i){return nota[i];}
    public String getNombre(int i){return alumno[i];}
}

Código: [Seleccionar]
import java.util.Scanner;

public class Test{
    public static void main(String[] args){
        String[] calificacion = {"Sobresaliente",
                "Notable",
                "Bien",
                "Suspenso"};
        NotasAlumnos lista = new NotasAlumnos();
        Scanner sc = new Scanner(System.in);
        float n = 0.0f;
        int i = 0;

        while(  i < 2 ){
            System.out.println("Introduzca el nombre del alumno "+(i+1)+": ");
            lista.setNombre(i, sc.nextLine());
            System.out.println("Introduzca la nota: ");
            n = sc.nextFloat();
            if(n >= 0 && n <= 10){
                lista.setNota(i, n);
                i++;
            }
            else System.out.println("La nota no es válida.");
            sc.nextLine();
        }

        for(i = 0 ; i < 2 ; i++){
            if(lista.getNota(i) >= 0 && lista.getNota(i) < 5){
                System.out.println("Nombre del alumno: "+lista.getNombre(i)+", nota: "+lista.getNota(i)+" es un "+calificacion[3]);
            }
            if(lista.getNota(i) >= 5 && lista.getNota(i) < 7){
                System.out.println("Nombre del alumno: "+lista.getNombre(i)+", nota: "+lista.getNota(i)+" es un "+calificacion[2]);
            }
            if(lista.getNota(i) >= 7 && lista.getNota(i) < 9){
                System.out.println("Nombre del alumno: "+lista.getNombre(i)+", nota: "+lista.getNota(i)+" es un "+calificacion[1]);
            }
            if(lista.getNota(i) >= 9 && lista.getNota(i) <= 10){
                System.out.println("Nombre del alumno: "+lista.getNombre(i)+", nota: "+lista.getNota(i)+" es un "+calificacion[0]);
            }
        }
    }
}

Muchas gracias.

3
Hola. Dejo el código del siguente ejercicio CU00688B del tutorial de aprendizaje de programación orientada a objetos con Java:

Citar
Amplía el código del programa Java que planteamos como ejercicio en la entrega CU00687 de este curso, relativo a la gestión de una empresa agroalimentaria, teniendo en cuenta que la empresa gestiona envíos a través de diferentes medios, y un envío puede contener cierto número de productos frescos, refrigerados o congelados. Añade al código:

a) Una clase EnvioDeProductos que represente un envío de productos como colección de objetos que admite el polimorfismo.

b) Crear una clase testHerencia4 con el método main donde se creen: dos productos frescos, tres productos refrigerados y cinco productos congelados (2 de ellos congelados por agua, otros 2 por aire y 1 por nitrógeno). Crear un envío que represente la agrupación de los anteriores productos. Mostrar por pantalla la información del número de productos que componen el envío y recorrer los productos del envío usando iterator para mostrar la información (valor de los atributos) de cada uno de ellos.


Clase Productos:

Código: [Seleccionar]
public class Productos{
    private String fechaCaducidad;
    private String numeroLote;
    private String fechaEnvasado;
    private String paisOrigen;
    //Constructor vacío
    public Productos(){
        fechaCaducidad = "";
        numeroLote = "";
        fechaEnvasado = "";
        paisOrigen = "";
    }
    //Constructor con parámetros
    public Productos(String fechaCaducidad, String numeroLote, String fechaEnvasado, String paisOrigen){
        this.fechaCaducidad = fechaCaducidad;
        this.numeroLote = numeroLote;
        this.fechaEnvasado = fechaEnvasado;
        this.paisOrigen = paisOrigen;
    }
    //Constructor a partir de un objeto
    public Productos(Productos p){
        fechaCaducidad = p.fechaCaducidad;
        numeroLote = p.numeroLote;
        fechaEnvasado = p.fechaEnvasado;
        paisOrigen = p.paisOrigen;
    }
    //Métodos set
    public void setFechaCaducidad(String fechaCa){fechaCaducidad = fechaCa;}
    public void setLote(String lote){numeroLote = lote;}
    public void setFechaEnvasado(String fechaEn){fechaEnvasado = fechaEn;}
    public void setPais(String pais){paisOrigen = pais;}
    //Metodos get
    public String getFechaCaducidad(){return fechaCaducidad;}
    public String getLote(){return numeroLote;}
    public String getFechaEnvasado(){return fechaEnvasado;}
    public String getPais(){return paisOrigen;}
   
    public void mostrar(){
        System.out.println("Fecha de caducidad: "+getFechaCaducidad()+". Numero de lote: "+getLote()+". Fecha de envasado: "+getFechaEnvasado()+". Pais de origen: "+getPais());
    }
   
}


Clase ProductosFrescos:

Código: [Seleccionar]
public class ProductosFrescos extends Productos{
   
    //Constructor vacío
    public ProductosFrescos(){
        super();
    }
    //Constructor con parámetros
    public ProductosFrescos(String fechaCaducidad, String numeroLote, String fechaEnvasado, String paisOrigen){
        super(fechaCaducidad, numeroLote, fechaEnvasado, paisOrigen);
    }
   
    public void mostrar(){
        System.out.println("\nProducto fresco.");
        super.mostrar();
    }
       
}


Clase CongeladosOrefrigerados:

Código: [Seleccionar]
public class CongeladosORefrigerados extends Productos{
    private double temperatura;
   
    public CongeladosORefrigerados(){
        super();
        temperatura = 0.0;
    }
    public CongeladosORefrigerados(String fechaCaducidad, String numeroLote, String fechaEnvasado, String paisOrigen, double temperatura){
        super(fechaCaducidad, numeroLote, fechaEnvasado, paisOrigen);
        this.temperatura = temperatura;
    }
    public CongeladosORefrigerados(CongeladosORefrigerados c){
        super(c);
        temperatura = c.temperatura;
    }
   
    public void setTemperatura(double temp){temperatura = temp;}
   
    public double getTemperatura(){return temperatura;}
   
    public void mostrar(){
        super.mostrar();
        System.out.print("Temperatura de mantenimiento: "+getTemperatura());
    }
}


Clase ProductosRefrigerados:

Código: [Seleccionar]
public class ProductosRefrigerados extends CongeladosORefrigerados{
    private String codigoSupervision;
    //Constructor vacío
    public ProductosRefrigerados(){
        super();
        codigoSupervision = "";
    }
    //Constructor con parámetros
    public ProductosRefrigerados(String fechaCaducidad, String numeroLote, String fechaEnvasado,
    String paisOrigen, double temperatura, String codigoSupervision ){
        super(fechaCaducidad, numeroLote, fechaEnvasado, paisOrigen, temperatura);
        this.codigoSupervision = codigoSupervision;
    }
    //Constructor a partir de un objeto
    public ProductosRefrigerados(ProductosRefrigerados pr){
        super(pr);
        codigoSupervision = pr.codigoSupervision;
    }
    //Métodos set
    public void setCodigo(String codigo){codigoSupervision = codigo;}
    //Metodos get
    public String getCodigo(){return codigoSupervision;}

    public void mostrar(){
        System.out.println("\nProducto refrigerado.");
        super.mostrar();
        System.out.println("\nCódigo de supervision: "+getCodigo());
    }
}


Clase ProductosCongelados:

Código: [Seleccionar]
public class ProductosCongelados extends CongeladosORefrigerados{
        //Constructor vacío
    public ProductosCongelados(){
        super();
    }
    //Constructor con parámetros
    public ProductosCongelados(String fechaCaducidad, String numeroLote, String fechaEnvasado,
                                String paisOrigen, double temperatura ){
        super(fechaCaducidad, numeroLote, fechaEnvasado, paisOrigen, temperatura);
    }
   
    public void mostrar(){
        System.out.println("\nProducto congelado  ");
        super.mostrar();
    }
}


Clase ProdCongAgua:

Código: [Seleccionar]
public class ProdCongAgua extends ProductosCongelados{
    private double salinidad;
   
    public ProdCongAgua(){
        super();
        salinidad = 0.0;
    }
    public ProdCongAgua(String fechaCaducidad, String numeroLote, String fechaEnvasado,
                                String paisOrigen, double temperatura, double salinidad){
                                    super(fechaCaducidad, numeroLote, fechaEnvasado, paisOrigen, temperatura);
                                    this.salinidad = salinidad;
    }
    public void setSalinidad(double sal){salinidad = sal;}
    public double getSalinidad(){return salinidad;}
    public void mostrar(){
        super.mostrar();
        System.out.println("\nCongelación por agua:\n\t-Salinidad: "+getSalinidad()+" gr de sal por litro.");
    }
}


Clase ProdCongAire:

Código: [Seleccionar]
public class ProdCongAire extends ProductosCongelados{
    private double nitro, oxi, dioxi, vapor;

    public ProdCongAire(){
        super();
        nitro = 0.0;
        oxi = 0.0;
        dioxi = 0.0;
        vapor = 0.0;

    }

    public ProdCongAire(String fechaCaducidad, String numeroLote, String fechaEnvasado,String paisOrigen,
                            double temperatura, double nitro, double oxi, double dioxi, double vapor){
                                    super(fechaCaducidad, numeroLote, fechaEnvasado, paisOrigen, temperatura);
                                    this.nitro = nitro;
                                    this.oxi = oxi;
                                    this.dioxi = dioxi;
                                    this.vapor = vapor;
    }
   
    public void setNitro(double n){nitro = n;}
    public void setOxi(double o){oxi = o;}
    public void setDioxi(double d){dioxi = d;}
    public void setVapor(double v){vapor = v;}
    public double getNitro(){return nitro;}
    public double getOxi(){return oxi;}
    public double getDioxi(){return dioxi;}
    public double getVapor(){return vapor;}

    public void mostrar(){
        super.mostrar();
        //System.out.print("\nProducto congelado por aire.");
        System.out.println("\nCongelado por aire, composición:\n\t-Nitrogeno: "+getNitro()+"%\n\t-Oxigeno: "+getOxi()+
            "%\n\t-Dioxido de carbono: "+getDioxi()+"%\n\t-Vapor de agua: "+getVapor()+"%");
    }
}


Clase ProdCongNitro:

Código: [Seleccionar]
public class ProdCongNitro extends ProductosCongelados{
    private String metodoCongelacion;
    private int segundosExp;
   
    public ProdCongNitro(){
        super();
        metodoCongelacion = "";
        segundosExp = 0;
    }
    public ProdCongNitro(String fechaCaducidad, String numeroLote, String fechaEnvasado,
                                String paisOrigen, double temperatura, String metCong, int secExp){
                                    super(fechaCaducidad, numeroLote, fechaEnvasado, paisOrigen, temperatura);
                                    metodoCongelacion = metCong;
                                    segundosExp = secExp;
    }
    public void setMetodo(String metodo){metodoCongelacion = metodo;}
    public void setSegundos(int seg){segundosExp = seg;}
    public String getMetodo(){return metodoCongelacion;}
    public int getSegundos(){return segundosExp;}
    public void mostrar(){
        super.mostrar();
        System.out.println("\nCongelación por nitrógeno.");
        System.out.println("\tMétodo congelación: "+getMetodo());
        System.out.println("\tTiempo exposición: "+getSegundos()+" segundos.");
    }
}


Clase EnvioDeProductos:

Código: [Seleccionar]
//Clase para crear una lista de productos para enviar.
//Trabajo con polimorfismo.
import java.util.*;

public class EnvioDeProductos{
    /*
     * Se usa el polimorfismo creando una lista de objetos de la superclase que admite
     * objetos de las subclases
     */
    ArrayList<Productos> listaEnvio;
    //Constructor vacío.
    public EnvioDeProductos(){//
        listaEnvio = null;
    }
    //Constructor con parámetros
    public EnvioDeProductos(ArrayList<Productos> en){
        listaEnvio = en;
    }

    public void setEnvio(ArrayList<Productos> en){listaEnvio = en;}

    public ArrayList<Productos> getEnvio(){return listaEnvio;};

    /*
     * Método que devuelve los objetos de la lista.
     * Utiliza el método mostrar() que es un método reemplazado, hay una versión de él en la clase principal
     * y en cada una de las subclases
     */
    public void mostrarEnvio(){
        System.out.println("El próximo envío estará compuesto por "+listaEnvio.size()+" productos: \n");
        Iterator<Productos> it = listaEnvio.iterator();
        while(it.hasNext()){
            it.next().mostrar();
            System.out.println();

        }
    }

}


Clase TestHerencia4:

Código: [Seleccionar]
import java.util.ArrayList;

public class TestHerencia4{
    public static void main(String[] Args){
        ProductosFrescos tomates = new ProductosFrescos("12/03/17","A-11","01/02/17","España");
        ProductosFrescos zanahorias = new ProductosFrescos("12/03/2017","A-10","02/02/2017","Francia");
        ProductosRefrigerados yogures = new ProductosRefrigerados("20/07/17","B-02","06/01/17","Italia",07,"007C25");
        ProductosRefrigerados salchichas = new ProductosRefrigerados("19/05/2021","B-45","20/12/16","Portugal",05,"012C45");
        ProductosRefrigerados natillas = new ProductosRefrigerados("05/03/17","B-09","0065E98","España",10,"28/01/17");
        ProdCongAgua bacalao = new ProdCongAgua("06/12/22","C-05","30/02/16","Escocia",-19,25.35);       
        ProdCongAgua gambas = new ProdCongAgua("25/08/20","C-07","31/12/15","Malta",-23,35.71);
        ProdCongAire calamares = new ProdCongAire("10/10/22","C-13","25/08/16","Maruecos",-20, 15.25,24.75,42.80,17.20);
        ProdCongAire croquetas = new ProdCongAire("25/08/2028","C-19","10/10/16","Suecia",-18,30.80,45.60,08.30,15.30);
        ProdCongNitro lasaña = new ProdCongNitro("11/06/20","C-25","20/04/16","España",-15,"exposición",12);
       
        EnvioDeProductos envio = new EnvioDeProductos();
        ArrayList<Productos> lista = new ArrayList<Productos>();
        lista.add(tomates);lista.add(zanahorias);lista.add(natillas);lista.add(yogures);lista.add(salchichas);
        lista.add(bacalao);lista.add(gambas);lista.add(calamares);lista.add(croquetas);lista.add(lasaña);
        envio.setEnvio(lista);
        envio.mostrarEnvio();
    }
}
       

Muchas gracias.
Un saludo.

4
Muchas gracias por responder y además hacerlo tan rápido.
He modificado el código como me has dicho (creo), y está más claro y más ordenado.
Codigo CantanteFamoso:
Código: [Seleccionar]
public class CantanteFamoso1{
    private String nombre, disco;
    public CantanteFamoso1(){
        nombre = "";
        disco = "";
    }
   
    public CantanteFamoso1( String nom, String dis){
        nombre = nom;
        disco = dis;
    }
   
    public void setNombre(String n){ nombre = n;}
   
    public void setDisco(String d){disco = d;}   
   
    public String getNombre(){
        return nombre;
    }
   
    public String getDisco(){
        return disco;
    }
}
   
Código ListaCantanteFamoso:
Código: [Seleccionar]
import java.util.ArrayList;
import java.util.Iterator;

public class ListaCantantesFamosos1{
    private ArrayList<CantanteFamoso1> list ;
    public ListaCantantesFamosos1(){
        list =  new ArrayList<CantanteFamoso1>() ;
    }

    public void addCantanteFamoso(CantanteFamoso1 can){
        list.add(can);       
    }

    public void mostrarContenidoLista(){
        Iterator<CantanteFamoso1> it = list.iterator();
        while(it.hasNext()){
            CantanteFamoso1 cantante = it.next();
            System.out.print("Cantante: "+cantante.getNombre());
            System.out.println(". Disco: "+cantante.getDisco());
        }
    }

}   
Código Test:
Código: [Seleccionar]
import java.util.Scanner;

public class Test1{
    public static  void main(String args[]){
        CantanteFamoso1 cantante;
        ListaCantantesFamosos1 lista1 = new ListaCantantesFamosos1();
        Scanner sc = new Scanner(System.in);
        int menu, i = 0;
        String nombre, disco;

        System.out.println("Comienza el programa");
        while( i < 2){
            System.out.println("Introduzca el nombre del cantante: ");
            nombre = sc.nextLine();
            System.out.println("Introduzca el disco más vendido: ");
            disco = sc.nextLine();
            cantante = new CantanteFamoso1(nombre, disco);
            lista1.addCantanteFamoso(cantante);
            i++;
        }

        System.out.println("La lista inicial contiene los siguientes datos: ");
        lista1.mostrarContenidoLista();

        do{
            System.out.println("\nMenu:\n1)Introducir nuevos datos.\n2)Salir.");
            menu = sc.nextInt();
            sc.nextLine();
            if(menu == 1){
                System.out.println("Introduzca el nombre del cantante: ");
                nombre = sc.nextLine();
                System.out.println("Introduzca el disco más vendido: ");
                disco = sc.nextLine();
                cantante = new CantanteFamoso1(nombre, disco);
                lista1.addCantanteFamoso(cantante);
                System.out.println("La lista actualizada contiene los siguientes datos: ");
                lista1.mostrarContenidoLista();
            }
        }while (menu != 2);
    }
}

Muchas gracias de nuevo.
Saludos.

5
Hola a todos. Dejo mi código del siguiente ejercicio CU00672B del curso básico de programación en Java:

Citar
Crea un programa Java que permita “jugar a adivinar un número” como se expone a continuación. El programa debe iniciarse indicando “Se ha generado un número aletatorio entero entre 1 y 100, intente adivinarlo”. El usuario introducirá un número y si el número aleatorio generado por el ordenador es menor deberá indicarse “No has acertado: el número es menor. Prueba otra vez”. Si el usuario introduce un número menor que el número aleatorio deberá indicarse “No has acertado: el número es mayor”. El programa terminará cuando el usuario introduzca el número aleatorio que había escogido el ordenador.


Código AdivinarNumero:

Código: [Seleccionar]
/*Ejercicio cu00672b del curso programar Java desde cero.*/

import java.util.Random;

class AdivinarNumero{
    Random numOculto;
    int num;
    //Constructor que genera un número pseudo aleatorio cada vez que se inicializa un objeto de la clase
    public AdivinarNumero(){
        numOculto = new Random();
        num = numOculto.nextInt(100)+1;//+1 para que sea un número entre 1 y 100.
    }
    //Método para comparar el número que introduce el usuario con el elegido por el programa.
    public int comprobarNumero(int n){
        if(n == num)  return 0;
        else if(n > num) return 1;
        return -1;
    }
       
}


Código TestAdivinarNumero:

Código: [Seleccionar]
/*Ejercicio cu00672b del curso aprender a programar Java desde cero.*/

import java.util.Scanner;

class TestAdivinarNumero{
    public static void main(String args[]){
        AdivinarNumero ob = new AdivinarNumero();
        Scanner entrada = new Scanner(System.in);
        int num, comprobado = 0;

        System.out.println("Se ha generado un numero entre 1 y 100. Intente adivinarlo");
        do{
            System.out.println("Introduzca un número: ");
            num = (int) entrada.nextInt();
            comprobado = ob.comprobarNumero(num);
            if(comprobado == 1){
                System.out.println("No ha acertado. El numero es más pequeño. Prueba otra vez.");
            }
            else if(comprobado == -1){
                System.out.println("No ha acertado. El numero es más grande. Prueba otra vez.");
            }
        }while(comprobado != 0);
        System.out.println("¡Ha acertado!");
    }
}

Saludos

6
Hola a todos, dejo una solución a este ejercicio CU00667B del tutorial de Java elemental.

Es posible que contenga errores.

Citar
Crea una clase denominada ListaCantantesFamosos que disponga de un atributo ArrayList listaCantantesFamosos que contenga objetos de tipo CantanteFamoso. La clase debe tener un método que permita añadir objetos de tipo CantanteFamoso a la lista. Un objeto de tipo CantanteFamoso tendrá como atributos nombre (String) y discoConMasVentas (String), y los métodos para obtener y establecer los atributos. Crea una clase test con el método main que inicialice un objeto ListaCantantesFamosos y añade manualmente dos objetos de tipo CantanteFamoso a la la lista. Usando iterator muestra los nombres de cada cantante y su disco con más ventas por pantalla. Se debe pedir al usuario un nombre y disco con más ventas de otro cantante famoso, y una vez introducidos los datos mostrar la lista actualizada usando iterator. Una vez mostrada la lista actualizada, se debe dar opción a elegir entre volver a introducir los datos de otro cantante o salir del programa (se podrán introducir tantos datos de cantantes como se desee. Para ello usa un bucle while que dé opción a elegir al usuario). Puedes comprobar si tu código es correcto consultando en los foros aprenderaprogramar.com.


Código CantanteFamoso:

Código: [Seleccionar]
public class CantanteFamoso1{
    String nombre, disco;
    CantanteFamoso1(){
        nombre = "";
        disco = "";
    }
   
    public void addNombre( String nom, String dis){
        nombre = nom;
        disco = dis;
    }
   
    public String getNombre(){
        return nombre;
    }
   
    public String getDisco(){
        return disco;
    }
}
Código ListaCantantesFamosos:
Código: [Seleccionar]
import java.util.ArrayList;

public class ListaCantantesFamosos1{
    ArrayList<CantanteFamoso1> list ;
    public ListaCantantesFamosos1(){
        list =  new ArrayList<CantanteFamoso1>() ;
    }

    public void addList(CantanteFamoso1 can){
        list.add(can);       
    }
}


Código Test:

Código: [Seleccionar]
import java.util.Iterator;
import java.util.Scanner;

public class Test1{
    public static  void main(String args[]){
        CantanteFamoso1 cantante;
        ListaCantantesFamosos1 lista1 = new ListaCantantesFamosos1();
        Scanner sc = new Scanner(System.in);int menu, i = 0;
        String nombre, disco;
       
        System.out.println("Comienza el programa");
        while( i < 2){
            System.out.println("Introduzca el nombre del cantante: ");
            nombre = sc.nextLine();
            System.out.println("Introduzca el disco más vendido: ");
            disco = sc.nextLine();
            cantante = new CantanteFamoso1();
            cantante.addNombre(nombre, disco);
            lista1.addList(cantante);
            i++;
        }

        Iterator<CantanteFamoso1> it = lista1.list.iterator();
        System.out.println("La lista inicial contiene los siguientes datos: ");
        while(it.hasNext()){
            cantante = it.next();
            System.out.print("Cantante: "+cantante.getNombre());
            System.out.println(". Disco: "+cantante.getDisco());
        }

        do{
            System.out.println("\nMenu:\n1)Introducir nuevos datos.\n2)Salir.");
            menu = sc.nextInt();
            sc.nextLine();
            if(menu == 1){
                System.out.println("Introduzca el nombre del cantante: ");
                nombre = sc.nextLine();
                System.out.println("Introduzca el disco más vendido: ");
                disco = sc.nextLine();
                cantante = new CantanteFamoso1();
                cantante.addNombre(nombre, disco);
                lista1.addList(cantante);
                System.out.println("La lista actualizada contiene los siguientes datos: ");
                Iterator<CantanteFamoso1> it1 = lista1.list.iterator();
                while(it1.hasNext()){
                    cantante = it1.next();
                    System.out.println("Cantante: "+cantante.getNombre());
                    System.out.println("Disco: "+cantante.getDisco());
                }
            }
        }while (menu != 2);
    }
}

Muchas gracias.

Páginas: [1]

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".