Estoy haciendo un programa en c#, si tú ingresas el puntaje obtenido de un certamen, te calculará la nota.
Las condiciones (if-else) a mi parecer están bien.
El problema es que al ingresar por ejemplo:
puntaje total: 10
puntaje obtenido: 10
El programa se cierra... y no muestra el resultado. y creo que el error se debe a esta línea:
Console.WriteLine("La calificación obtenida es: {0}", formula1);
Probablemente sea el numero que está en los { }
Utilizo SharpDevelop 4.4.
-----------
Al invocar la segunda formula, no hay problema, muestra el resultado.
Ahora bien, ¿Cuál es mi error?
Código:
using System; namespace borrar2 { class programa { static void Main() { float puntajetotal; float puntajeobtenido; float porcentajedeexigencia; float puntajecorte; float porcentajedeexigencia2; float formula1; float formula2; Console.ForegroundColor = ConsoleColor.White; Console.WriteLine("Programa para calcular una nota."); Console.WriteLine("Válido para Chile."); Console.Write("Ingrese el puntaje total del certamen: "); puntajetotal = Convert.ToSingle( Console.ReadLine()); Console.Write("Ingrese puntaje obtenido: "); puntajeobtenido = Convert.ToSingle( Console.ReadLine()); Console.Write("Ingrese porcentaje de exigencia (%): "); porcentajedeexigencia = Convert.ToSingle( Console.ReadLine()); while (porcentajedeexigencia <= 9) { Console.Write("Ingrese un número mayor que 9: "); porcentajedeexigencia = Convert.ToSingle( Console.ReadLine()); } porcentajedeexigencia2 = porcentajedeexigencia / 100; puntajecorte = puntajetotal * porcentajedeexigencia2; formula1 = (puntajeobtenido * 7) / puntajetotal; formula2 = (puntajeobtenido * 4) / puntajecorte; if (puntajeobtenido > puntajecorte) Console.WriteLine("La calificación obtenida es: {0}", formula1); else if (puntajeobtenido <= puntajecorte) Console.WriteLine("La calificación obtenida es: {0}", formula2); Console.ReadKey(); }}}