Programa Java que pida
por teclado la nota obtenida por cada alumno en un examen y calcule y muestre
la nota media de la clase, la nota mayor y la nota menor.
Solución:
Para resolver el
ejercicio utilizaremos como estructura repetitiva un bucle for.
Seguiremos los
siguientes pasos:
4. Para calcular la nota mayor y menor:
1. Introducir por teclado el número de alumnos.
2. Para cada alumno pediremos su nota.
3. Para calcular la media:
- Utilizaremos una variable llamada suma donde iremos acumulando todas las notas introducidas.
- Cuando finalice la lectura de notas, la media de las notas la calcularemos dividiendo el contenido de la variable suma entre el número total de alumnos.
- Utilizaremos la función printf para mostrar la media con dos decimales.
4. Para calcular la nota mayor y menor:
- Tomaremos la primera nota introducida y la guardamos como mayor y menor
- El resto de notas que se vayan introduciendo se comparan con la mayor y menor actual. Si la nota es mayor que la mayor actual se guarda como nueva nota mayor. Si la nota es menor que la nota menor actual se guarda como nueva nota menor.
- Finalmente mostraremos por pantalla la media de las notas, la nota mayor y la menor.
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n;
double nota, suma = 0, mayor, menor;;
System.out.println("Nota media, mayor y menor de una clase");
System.out.println("--------------------------------------");
do {
System.out.print("Introduce numero de alumnos: ");
n = sc.nextInt(); //n contiene el número de alumnos
} while (n <= 0); //repetir mientras que el valor de n sea <= 0
System.out.print("Nota del alumno 1: ");
nota = sc.nextDouble(); // leemos la nota del primer alumno
suma = suma + nota; //la sumamos al acumulador
mayor = nota; //la tomamos como nota mayor y menor
menor = nota;
for (int i = 2; i <= n; i++) { // leemos el resto de notas desde el alumno 2 hasta el alumno n
System.out.print("Nota del alumno " + i + ": ");
nota = sc.nextDouble();
suma = suma + nota; // la sumamos al acumulador
if (nota > mayor){ // se compara la nota con la mayor y con la menor actual
mayor = nota;
} else if (nota < menor) {
menor = nota;
}
}
// mostrar resultados
System.out.printf("Nota media: %.2f %n" , suma/n);
System.out.println("La mayor nota ha sido un " + mayor);
System.out.println("La menor nota ha sido un " + menor);
}
}
Este comentario ha sido eliminado por el autor.
ResponderEliminarEse do..while inicial, está de más; así me pareció y lo corrí y funciona bien sin él; o para que se supone que és?
ResponderEliminarEl número de alumnos debe ser un número positivo. Ese do while es para evitar que el número de alumnos sea un valor <= 0.
EliminarCuantas veces en la escuela te pusieron un -1
Eliminaraveces los profesores te ponen a prueba en los programas tomando encuenta esos errores
Eliminar//Con una nota maxima de 10
ResponderEliminarimport java.util.*;
import java.io.IOException;
public class MyClass {
public static void main(String args[]) throws IOException {
Scanner sc = new Scanner(System.in);
char I;
int n;
double c3;
int c1 = 0,c2 = 0;//contadores de notas
int M = 0,m = 10;//acumuladores de Mayor y menor nota
do{
System.out.print("Introduce la nota del alumno: ");
n = sc.nextInt();
c1 = c1 + n;
c2 = c2 + 1;
if (n >= M){
M = n;
}
if (n <= m){
m = n;
}
System.out.print("Desea continuar (s/n): ");
I = (char) System.in.read();
System.in.read();
}while (I != 'n' && I != 'N');
c3 = c1 / c2;
System.out.println("El promedio del curso es: "+c3);
System.out.println("la mayor nota del curso: "+m);
System.out.println("la menor nota del curso: "+n);
}
}
perdon confundi las variables a mostrar
EliminarSystem.out.println("la mayor nota del curso: "+M);
System.out.println("la menor nota del curso: "+m);
//sin una nota maxima extablecida
Eliminarimport java.util.*;
import java.io.IOException;
public class MyClass {
public static void main(String args[]) throws IOException {
Scanner sc = new Scanner(System.in);
char I;
double n;
double c3,c1 = 0;
int c2 = 0;//contador de notas
double M = 0,m = 0;//acumuladores de Mayor y menor nota
do{
System.out.print("Introduce la nota del alumno: ");
n = sc.nextDouble();
c1 = c1 + n;
c2 = c2 + 1;
if (c2 == 1){
M = n;
m = n;
}else{
if (n <= m){
m = n;
}
if (n >= M){
M = n;
}
}
System.out.print("Desea continuar (s/n): ");
I = (char) System.in.read();
System.in.read();
}while (I != 'n' && I != 'N');
c3 = c1 / c2;
System.out.println("El promedio del curso es: "+c3);
System.out.println("la mayor nota del curso: "+M);
System.out.println("la menor nota del curso: "+m);
}
}
Calcula el Promedio de Dos Notas en Java Nebteans con JOptionpane ���� https://ludelweb.net/calcular-promedio-dos-notas-java/
ResponderEliminarCalcula el Promedio de tres Notas en Java Nebteans con JOptionpane
ResponderEliminarhttps://ludelweb.net/calcular-promedio-tres-notas-java/
PROGRAMAR EN POO EL CALCULO DEL PROMEDIO DE NOTAS Y CONDICIONARLO EN LOS SIGUIENTES TERMINOS
ResponderEliminarNOTAS <10= DESAPROBADO
NOTAS =10,11 Y 12 =PASAN A RECUPERACION
NOTAS >12 APROBADOS
MENCIONAR CUANTOS APROBADOS HAY.
ALGUIEN SABE? EN POOH
Calcula el Promedio de tres Notas en Java Nebteans con JOptionpane falcimente --> https://imparteconocimientos.com/calcular-promedio-tres-notas-java/
ResponderEliminarcalcular la mayor nota del curso
ResponderEliminarescribe un programa que lea 5 notas y reporte la mayor y la menor nota. Asumir que se ingresan notas diferentes algoritmo
ResponderEliminarAyuda con este ejercicio
ResponderEliminar