Calificaciones númericas: Enunciado del Problema
Hola, en este post, hablaremos sobre como convertir una calificación numérica, como un 20, 19, 15, 07, a una letra como una A, B, C, D hasta E. Para ello, es preciso, conocer el siguiente enunciado:Un algoritmo que permita convertir calificaciones numéricas, según la siguiente tabla:
A = 19 y 20, B =16, 17 y 18, C = 13, 14 y 15, D = 10, 11 y 12, E = 1 hasta el 9. Se asume que la nota está comprendida entre 1 y 20.
Ahora, la solución en diagrama de flujo
Y para completar, el diagrama de flujo del algoritmo para que seas capaz de auditar el pseudocodigo por ti mismo. Vamos, sólo es cuestión de escribir el mismo pseudocodigo de arriba, en la ventana del Pseint (programa para ejecutar pseudocodigo) y luego ya verás como genera por sí mismo el diagrama correspondiente.Allí está el pseudocodigo en forma de diagrama de flujo, aunque no se vea muy bien porque no pude pasar bien el interprete de Pseint. Es impresionante que dicha herramienta no sea capaz de producir apropiadamente el diagrama, a pesar de que ya lleva uno años en encima. Debería unirme como colaborador del proyecto a ver si puedo reparar unos cuantos errores. XD.
Ahora, la solución en pseudocódigo
Para solucionar el problema, es posible inferir que requeriremos de muchos condicionales if, que sean capaces de comprobar si el valor de la nota se encuentra en el rango que permite cada letra, y en consecuencia asignarle un valor en letras. Para ello, aqui te presento el algoritmo que necesitas en forma de pseudocodigo:(Pseudocodigo 100% fiable, ya depurado)
Proceso Calificaciones
Definir calificacion_a_leer como Entero;
Escribir Sin Saltar "Ingrese calificacion en valor numerico: ";
Leer calificacion_a_leer;
Si (calificacion_a_leer = 20) || (calificacion_a_leer = 19) Entonces
Escribir Sin Saltar "Su nota: ", "A (Brillante)";
FinSi
Si (calificacion_a_leer > 15) && (calificacion_a_leer < 19) Entonces
Escribir Sin Saltar "Su nota: ", "B (Sobresaliente)";
FinSi
Si (calificacion_a_leer > 9) && (calificacion_a_leer < 16) Entonces
Escribir Sin Saltar "Su nota: ", "C (Regular)";
FinSi
Si (calificacion_a_leer < 10) Entonces
Escribir Sin Saltar "Su nota: ", "E (No muy bueno)";
FinSi
FinProceso
En otra ocasión, mostraré su equivalente en C++, por si alguien le interesa.
me muero
ResponderEliminarMuchas gracias me sirvio
ResponderEliminarMuchas gracias, muy útil lo que nos compartes.
ResponderEliminarMe interesa en C++, cómo lo compartirías?
Por acá, o por correo??
Gracias we! Eres un genio
ResponderEliminargracias
ResponderEliminarGracias me sirvió mucho
ResponderEliminarEl Pseudocodigo es del problema de:
ResponderEliminarUn algoritmo que permita convertir calificaciones numéricas, según la siguiente tabla:
A = 19 y 20, B =16, 17 y 18, C = 13, 14 y 15, D = 10, 11 y 12, E = 1 hasta el 9. Se asume que la nota está comprendida entre 1 y 20.
el pseudocodigo no esta mal, pero no es lo que realmente se solicita atentos con eso y leer bien el enunciado
ResponderEliminar