You are on page 1of 3

#include <iostream>

#include <conio.h>
#include <stdio.h>
using namespace std;
using namespace System;

int ingresarNum() {
int x;
do {
cout << "Ingrese la cantidad de notas: ";
cin >> x;
} while (x < 0);
return x;
}

void ingresarNotas(float vnotas[], int *num) {


Random r;
for (int i = 0; i < *num; i++)
{
vnotas[i] = r.Next(0, 21);

}
}

void mostrarNotas(float vnotas[], int *num) {


for (int i = 0; i < *num; i++)
{
cout << "[" << vnotas[i] << "]";
}
cout << endl;
}

void obtenerAprobados(float vnotas[], int *num) {


cout << " ==== APROBADOS ==== " << endl;
for (int i = 0; i < *num; i++)
{
if (vnotas[i] > 12.49) {
cout << "Alumno " << i + 1 << " = " << vnotas[i] << endl;
}
}

void obtenerPromedio(float vnotas[], int *num) {


float sum=0;
for (int i = 0; i <*num; i++)
{
sum += vnotas[i]; // sum=sum+vnotas[i]
}
cout << "El promedio de notas es: " << (sum / *num) << endl;
}

void obtenerFrecuencia(float vnotas[], int *num) {


int cont = 0;
int may = 0;
int frec = 0;
for (int i = 0; i < *num; i++) {
cont = 0;
for (int j = 0; j < *num; j++) {
if (vnotas[i] == vnotas[j]) {
cont++;
}
}
if (cont > may) {
may = cont;
frec = vnotas[i];
}
}
cout << "La frecuencia es " << frec << " y se repite " << may << " veces."<<endl;
}

void obtenerPromedioMenosNotaMenor(float vnotas[], int *num) {


float sum = 0, min=30;
for (int i = 0; i < *num; i++)
{
if (vnotas[i] < min) {
min = vnotas[i];
}
sum += vnotas[i];
}
cout << "La nota menor en el arreglo es: "<<min<<endl;
cout << "Promedio sin nota menor: " << float(sum-min)/(*num-1) << endl;

}
void main() {
int *num = new int; // puntero de tipo int
*num = ingresarNum();
float *vnotas = new float[*num];
ingresarNotas(vnotas, num);
mostrarNotas(vnotas, num);
obtenerAprobados(vnotas, num);
obtenerPromedio(vnotas, num);
obtenerFrecuencia(vnotas, num);
obtenerPromedioMenosNotaMenor(vnotas, num);
_getch();
}

You might also like