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 - johanmeza0604

Páginas: [1]
1
dejo mi solución del ejercicio!!

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

public class ExamenU1 {

    public static void main(String[] args) {
        Scanner scnr = new Scanner(System.in);

        int opcion, contProm = 0, Eliminarprom, Modificarprom;
        float contadorN = 0F;
        float sumaNota = 0F, promedioN, nota, Acumprom = 0;
        float promedioModi, contadorModi = 0f, acumModi = 0F, notaModi;
        float contNfinal = 0, porcentajeA, contNfinal1 = 0F;
        String rpta;
        String rpta2;
        String rpta3;
        ArrayList<Float> promedio = new ArrayList<>();
        /*
        como se puede ver se realizo un menu de opciones segun lo pedido en la evaluacion
       
        */
        do {
            System.out.println("Eliga una opcion la cual desea realizar: ");
            System.out.println("1. Ingresar notas de nuevo alumno");
            System.out.println("2. Modificar notas de alumno existente");
            System.out.println("3. Eliminar notas de alumno existente");
            System.out.println("4. Imprimir porcentaje y alumnos aprobados");
            System.out.println("5. Salir");
            System.out.println("Eliga su opción: ");
            opcion = scnr.nextInt();

            switch (opcion) {
                case 1:
                    System.out.println("Usted eligio la opción ingresar notas ");
                    /*los dos ciclos do while, me realizan la acción de no saber cuantos estudiantes son ni cuantas notas son por lo tanto me permite ir agregando hasta que el usuario ni no tenga mas notas ni estudiantes*/
                    do {
                        do {
                            promedioN = 0F;
                            sumaNota = 0F;
                            contadorN = 0F;
                            /* El if me coloca la condición de que la nota sea entre 1-7
                            además me acumula las notas y a la vez las cuenta para calcular el promedio
                            en el caso de que ingrese una nota fuera de los rangos 1-7 manda un mensaje
                            al usuario.*/
                            System.out.println("Por favor ingrese la nota entre los rangos (1-7)");
                            nota = scnr.nextFloat();
                            if ((nota >= 1) && (nota <= 7)) {
                                sumaNota = sumaNota + nota;
                                contadorN = contadorN + 1;
                            } else {
                                System.out.println("Usted ingreso un valor no valido digite (si) para continuar");
                            }
                            System.out.println("Desea ingresar otra nota? (si/no)");
                            rpta = scnr.next();
                        } while (rpta.equals("si"));
                        promedioN = sumaNota / contadorN;
                        promedio.add(promedioN);
                        System.out.println("Desea ingresar otro estudiante (si/no) ?");
                        rpta2 = scnr.next();
                    } while (rpta2.equals("si"));
                    break;
                case 2:
                    /*En el caso 2 me muestra cuantos promedios hay y cuales son. luego elimina el promedio que seleccione el usuario, para ingresar nuevas notas a través de un do while, ya que no se conocen cuantas notas va a ingresar el usuario. Igual que en el caso anterior verifica que las notas se encuentren entre los rangos 1-7. Calcula el promedio
                    y lo agrega a la variable donde estaba eliminado el promedio
                     */
                    System.out.println("n° de promedios: " + promedio.size());
                    System.out.println("Los promedios ingresados son");
                    for (int i = 0; i < promedio.size(); i++) {
                        System.out.println(promedio.get(i));
                    }

                    System.out.println("Indique que estudiante desea modificar entre 0 y " + (promedio.size() - 1) + " : ");
                    Modificarprom = scnr.nextInt();
                    promedio.remove(Modificarprom);
                    do {
                        System.out.println("Por favor ingrese las notas entre los rangos (1-7)");
                        notaModi = scnr.nextFloat();
                        if ((notaModi >= 1) && (notaModi <= 7)) {
                            acumModi = acumModi + notaModi;
                            contadorModi = contadorModi + 1;
                        } else {
                            System.out.println("Usted ingreso un valor no valido.");
                        }
                        System.out.println("Desea ingresar otra nota (si/no)");
                        rpta3 = scnr.next();

                    } while (rpta3.equals("si"));
                    promedioModi = acumModi / contadorModi;
                    promedio.add(Modificarprom, promedioModi);
                    System.out.println("Su promedio " + Modificarprom + " ah sido modificado con exito");
                    break;
                case 3:
                    /*
                    En el caso 3 me busca el numero de promedios que hay ingresados a través de un ciclo for  y luego le pide al usuario que promedio desea eliminar y de acuerdo a lo que teclee el usuario mi Arraylist procede a leer el numero del usuario ingresado y lo borra
                    dejando un mensaje que su promedio ah sido removido.
                     */
                    for (int i = 0; i < promedio.size(); i++) {
                        System.out.println(promedio.get(i));
                    }
                    System.out.println("Indique promedio de alumno a eliminar, entre 0 y " + (promedio.size() - 1));
                    Eliminarprom = scnr.nextInt();
                    promedio.remove(Eliminarprom);
                    System.out.println("Su promedio ah sido removido.");

                    break;
                case 4:
                    /*
                    En el caso 4 los ciclos for me cuentan cuantos estudiantes hay en total y cuantos son aprobados a traves de una condicion, y luego hace un claculo matematico que me arroja el porcentaje de los aprobados.
                    y al final muestra cuantos estudiantes fueron aprobados y que porcentaje de estudiantes aprobaron.
                     */
                    System.out.println("Usted eligio imprimir el porcentaje y numero de aprobados ");
                    for (int i = 0; i < promedio.size(); i++) {
                        contNfinal1++;
                    }
                    for (int i = 0; i < promedio.size(); i++) {
                        if (promedio.get(i) >= 4) {
                            contNfinal++;
                        }
                    }
                    porcentajeA = contNfinal * 100 / contNfinal1;

                    System.out.println("Los alumnos aprobados fueron: " + contNfinal);
                    System.out.println("Con un " + porcentajeA + "% de aprobados");
                    break;
                case 5:
                    /*
                    En este caso el usuario desea salir de el programa
                     */
                    System.out.println("Usted eligio la opcion salir");
                    System.out.println("Adios!!");
                    break;
                default:
                    // Este caso es cuando el usuario en el menu de opciones presiona un numero fuera de las opciones dadas.
                    System.out.println("Usted eligio una opcion no valida");
                    break;
            }
        } while (opcion != 5);

    }
}
/* una vez presionado la opción 4 y muestre los datos debe reiniciar el programa para que este comience desde 0
y así volver a agregar estudiantes nuevos y notas nuevas. */


2
Buenas tardes, muchas gracias por ayudarme y por responder nuevamente, logre resolver el ejercicio y sin tu ayuda la verdad no habría logrado nada. espero que tengas buenas tardes y un excelente día.

3
hola muchas gracias por contestar y por ayudarme ya realice el menu sin problemas al igual que logre hacer el caso (1) que es el ingreso de notas,como el caso dos que es mostrar el promedio a través del Arraylist. Lo que de verdad si no entiendo es como modificar un Arraylist (es decir como modificar un promedio en este caso) y como eliminar algún promedio del Arraylist.
Tengo entendido que se puede hacer sin problema, pero no se hacerlo mediante pantalla usuario

4
Hola, acabo de iniciar programación en java, ya que pasé de pseudocodigo a java pero me dieron solo una sintaxis y necesito hacer este ejercicio y no se como, si alguien podría ayudarme se lo agradecería demasiado. espero que tengan un buen día.

Estructuras de control en orientación a objetos (POO)

Aprendizajes esperados


Construye el modelo de comportamiento de sistemas utilizando casos de uso.
1.   Considerando las características de un programa escrito en Java.
2.   Definiendo variables y constantes con sus tipos de datos correspondientes.
3.   Implementando operaciones de entrada y salida de acuerdo a requerimientos.
4.   Implementando estructuras de decisión del tipo if y switch.
5.   Implementando ciclos del tipo for, while y do while, para resolver problemas de iteración.
6.   Desarrollando varias ideas o informaciones sobre un tema central, apoyadas por ideas complementarias.


Instrucciones generales

Resuelve la evaluación dentro del plazo asignado empleando el lenguaje de programación Java y NetBeans IDE como entorno de desarrollo. Al término de ésta deberás entregar mediante el Ambiente Aprendizaje el proyecto de NetBeans IDE comprimido en formato ZIP o similar.
Se espera que trabajes de manera individual, por lo que se rechazará tu trabajo y se calificará con la nota mínima si se observa algún indicio de plagio.
La nota mínima de aprobación es un 4,0 y se obtiene logrando un 60% del puntaje total.

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