Autor Tema: Repaso arays o arreglos unidimensionales en Java. Ejercicio elseif CU00903C  (Leído 2532 veces)

luisdn

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 6
    • Ver Perfil
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.
« Última modificación: 14 de Abril 2017, 20:00 por Ogramar »

pedro,,

  • Moderador Global
  • Experto
  • *******
  • APR2.COM
  • Mensajes: 1292
    • Ver Perfil
Re:Repaso arays o arreglos unidimensionales en Java. Ejercicio CU00903C
« Respuesta #1 en: 14 de Febrero 2017, 09:45 »
Hola luisdn.

Los ejercicios están bien resueltos. Solo comentarte que en el segundo ejercicio cuando compruebas las notas,
Código: [Seleccionar]
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]);
            }
sería mejor que usases else if, de esta forma una vez que se cumpla una de las condiciones no se seguirán evaluando las demás.

Saludos. ;D


 

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