/******************************************************************************
Welcome to GDB Online.
GDB online is an online compiler and debugger tool for C, C++, Python, PHP, Ruby,
C#, OCaml, VB, Perl, Swift, Prolog, Javascript, Pascal, COBOL, HTML, CSS, JS
Code, Compile, Run and Debug online from anywhere in world.
*******************************************************************************/
//PROYECTO 3. CALCULAR NOTAS DE ALUMNOS
#include <iostream>
#include <conio.h>
#include <stdlib.h>
using namespace std;
int main(){
//DECLARACIÓN DE VARIABLES
int N, min=999, max=0, mayor, menor;
char opcion;
float notas[100], suma = 0, promedio = 0, rango1 = 0, rango2 = 0;
//ENTRADA DE DATOS
do{
system("cls");
cout<<"Digite la cantidad de alumnos para guardar notas: "; cin>>N;
if(N >= 20 && N<=30){
for(int i = 0; i <N; i++){
cout<<"Digite la nota del alumno "<<i+1<<": "; cin>>notas[i];
//Operaciones
suma += notas[i]; //Cálculo de la suma de notas
}
//Más Operaciones
promedio = suma / N; //Cálculo del promedio de notas
//IMPRIMIENDO RESULTADO
cout<<"_____________________________________________________________________________________"<<endl;
cout<<"\nLa suma total de notas ingresadas es de: "<<suma<<endl;
cout<<"\nEl promedio total de notas del salon es de: "<<promedio<<endl;
cout<<"\nLa nota mayor pertenece al ";
for(int i=0; i<N; i++){
if(notas[i] > max){ //Cálculo para sacar la nota mayor
max = notas[i];
mayor = i+1;
}
}
cout<<"alumno "<<mayor<<" con "<<max<<endl;
cout<<"\nLa nota menor pertenece al ";
for(int i=0; i<N; i++){
if(notas[i] < min){ //Cálculo para sacar la nota menor
min = notas[i];
menor = i+1;
}
}
cout<<"alumno "<<menor<<" con "<<min<<endl;
//SACANDO EL RANGO DE NOTAS PROMEDIO
rango1 = promedio-1;
rango2 = promedio+1;
cout<<"\nAlumnos que se encuentran dentro del rango promedio "<<rango1<<" y "<<rango2<<": "<<endl;
for(int i=0; i< N; i++){
if(notas[i] >= rango1 && notas[i] <= rango2){
cout<<"\nAlumno "<<i+1<<" - Nota: "<<notas[i];
}
}
//SACANDO LAS NOTAS MENOR DE 6 CON TRABAJO EXTRA
cout<<endl;
cout<<"\nAlumnos que tuvieron nota menor o igual a 6 se les ha subido 1 punto por un trabajo extra: "<<endl;
for(int i=0; i<N; i++){
if(notas[i]<=6){
cout<<"\nAlumno "<<i+1<<" tiene una nota de "<<notas[i]<<" y le queda a "<<notas[i]+1;
}
}
cout<<endl;
cout<<"_____________________________________________________________________________________"<<endl;
}else{
cout<<"\nDebe de ingresar una cantidad de alumnos en el rango [20-30]: "<<endl;
}
cout<<endl;
cout<<"\nDesea ingresar de nuevo digite si o no (s/n): "; cin>>opcion;
}while(opcion == 's' || opcion == 'S');
getch();
}