se tienen registradas las calificaciones obtenidas en un examen por 50 estudiantes. los datos son cal1,cal2,......cal50, dond cal es un numero entero comprendido entre los valores de 0y 10 (0<=cal,0<=10).
escriba un programa q calcule e imprima la frecuencia de cada uno de los posibles valores.
la salida del progrma debe ser como se muestra acontinuacion:
--------calificacion-------- ------frecuencia--------
0 >>>>>>>>>>>>> 1 ALUMNOS
1 >>>>>>>>>>>>> ....
2 >>>>>>>>>>>>> ....
3 >>>>>>>>>>>>> 4 ALUMNOS
4 >>>>>>>>>>>>> 2 ALUMNOS
.. >>>>>>>>>>>>> .......
10 >>>>>>>>>>>>> 3 ALUMNOS
ayudenme si puedo hacerlo de una forma mas facil o resumida
FRECUENCIA_NOTAS
estudiante<-1;
cal <-0;
con0<-0;
con1<-0;
con2<-0;
con3<-0;
con4<-0;
con5<-0;
con6<-0;
cont7<-0;
cont8<-0;
con9<-0;
con10<-0;
Escribir "calficaciones Alumnos";
Para estudiante<-1 Hasta 50 Hacer
Repetir
Escribir "ingrese la nota del estudiante ", estudiante;
Leer notas;
Hasta Que (cal >= 0) & (cal <=10)
Si cal = 0 Entonces
con0<-con0 + 1;
Si cal = 1 Entonces
con1<-con1 + 1;
FinSi
Si cal = 2 Entonces
con2<-con2 + 1;
FinSi
Si cal = 3 Entonces
con3<-con3 + 1;
FinSi
Si cal = 4 Entonces
con4<-con4 + 1;
FinSi
Si cal = 5 Entonces
con5<-con5 + 1;
FinSi
Si cal = 6 Entonces
con6<-con6 + 1;
FinSi
Si cal = 7 Entonces
con7<-con7 + 1;
FinSi
Si cal = 8 Entonces
con8<-con8 + 1;
FinSi
Si cal = 9 Entonces
con9<-con9 + 1;
FinSi
Si cal = 10 Entonces
con10<-con10 + 1;
FinSi
FinPara
Escribir " Calificacion--------Frecuencia ";
Escribir " nota 0 : ", con0;
Escribir " nota 1 : ", con1;
Escribir " nota 2 : ", con2;
Escribir " nota 3 : ", con3;
Escribir " nota 4 : ", con4;
Escribir " nota 5 : ", con5;
Escribir " nota 6 : ", con6;
Escribir " nota 7 : ", con7;
Escribir " nota 8 : ", con8;
Escribir " nota 9 : ", con9;
Escribir " nota 10 :", con10;
FinProceso
Si no puedes usar vectores, entonces creo que tu código es adecuado, tienes que leer cada nota y verificar a mano si es 0, 1, 2, 3...etcétera
Como ligera mejora, para hacer el código un poco más corto, podrías usar un switch/case (según valor)
Su estructura es la siguiente:
Según_Valor: <expresión>
<valor1>: <bloque de instrucción 1>
<valor2>: <bloque de instrucción 2>
<valorn>: <bloque de instrucción n>
Por_Defecto: <bloque de instrucción por defecto>
Fin_Según_Valor
Donde la variable a considerar en tu caso, sería la nota.
En "valorn" va la nota en cuestión, y en órdenes incrementarías el contador en una unidad
"Defecto" es la acción a tomar en caso de que no se cumpla ninguno de los otros casos, por ejemplo, si alguien introdujese como nota un 11, podrías hacer que el caso por defecto dijese "la nota introducida es errónea".
Más o menos te quedaría algo así:
Escribir "calficaciones Alumnos";
Para estudiante<-1 Hasta 50 Hacer
Repetir
Escribir "ingrese la nota del estudiante ", estudiante;
Leer notas;
Hasta Que (cal >= 0) & (cal <=10)
Segun_Valor(cal)
0:
con0<-con0 + 1
1:
con1<-con1 + 1
2:
con2<-con2 + 1
3:
con3<-con3 + 1
4:
con4<-con4 + 1
5:
con5<-con5 + 1
6:
con6<-con6 + 1
7:
con7<-con7 + 1
8:
con8<-con8 + 1
9:
con9<-con9 + 1
10:
con10<-con10 + 1
fin_segun_valor
FinSi
FinPara
Escribir " Calificacion--------Frecuencia ";
Escribir " nota 0 : ", con0;
Escribir " nota 1 : ", con1;
Escribir " nota 2 : ", con2;
Escribir " nota 3 : ", con3;
Escribir " nota 4 : ", con4;
Escribir " nota 5 : ", con5;
Escribir " nota 6 : ", con6;
Escribir " nota 7 : ", con7;
Escribir " nota 8 : ", con8;
Escribir " nota 9 : ", con9;
Escribir " nota 10 :", con10;
Un saludo.