C sharp - Ayuda C# sentencias condicionales (novato)

   
Vista:

Ayuda C# sentencias condicionales (novato)

Publicado por averyhotnerd (3 intervenciones) el 04/05/2015 19:31:47
Hola,

Estoy teniendo problemas para una tarea de programación. Me solicitan lo siguiente:

Escribe un programa de consola en lenguaje C#, el cual solicite la captura de un número entre 1 y 100 y, dependiendo del valor, devuelva en pantalla una letra de acuerdo a los siguientes rangos:

Si el valor es 100: devuelva la letra A.
Si el valor está entre 90 y 99: devuelva la letra B.
Si el valor está entre 80 y 89: devuelva la letra C.
Si el valor está entre 70 y 79: devuelva la letra D.
Si el valor es menor a 70: devuelva la letra E.

Esto es lo que tengo hasta ahora y no me muestra errores, más después de introducir los números =< a 89 me sigue dando la letra B:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
static void Main(string[] args)
        {
            Console.WriteLine("Ingrese un número entre el 1 y el 100");
            int num = int.Parse(Console.ReadLine());
 
            if (num == 100)
            {
                Console.WriteLine("A");
            }
            else
                if (num < 99 || num > 90)
                {
                    Console.WriteLine("B");
                }
 
                else
                    if (num < 89 || num > 80)
                    {
                        Console.WriteLine("C");
                    }
                    else
                        if (num < 79 || num > 70)
                        {
                            Console.WriteLine("D");
                        }
                     else
                            if (num <= 69)
                            {
                                Console.WriteLine("E");
                            }
            Console.ReadKey();
        }
    }
}

Por favor ayuda, y explíquenme porqué su corrección. Muchisimas gracias. Tengan le paciencia a este humilde principiante.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Ayuda C# sentencias condicionales (novato)

Publicado por Rene gar (1 intervención) el 05/05/2015 23:41:13
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
 
            Console.WriteLine("Ingrese un valor por consola ");
            int num = int.Parse(Console.ReadLine());
 
            if (num < 70) Console.WriteLine("E");
            else if (num <= 79) Console.WriteLine("D");
            else if (num <= 89) Console.WriteLine("C");
            else if (num <= 99) Console.WriteLine("B");
            else if (num == 100) Console.WriteLine("A");
 
            Console.ReadKey();
        }
    }
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Ayuda C# sentencias condicionales (novato)

Publicado por averhotnerd (3 intervenciones) el 13/05/2015 02:18:18
Muchas gracias!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Ayuda C# sentencias condicionales (novato)

Publicado por gaston (5 intervenciones) el 18/05/2015 13:06:26
Falta tabulación
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Ayuda C# sentencias condicionales (novato)

Publicado por Oscar Chàvez Ferra (4 intervenciones) el 13/05/2015 02:08:13
Hola averyhotnerd,bien ,lo que estas haciendo no es correcto ,en primer lugar porque después del primer if es más conveniente usar, else if(num<=99 ||num==98 ||num==97),así ,tal como está escrito else if y deberías comparar todo el rango de números ,sino la expresión boleana nunca se va a cumplir para los números que no compares.Usa else if para todos los rangos y veras que ya te funciona,sino usas el else solo ,de todos modos funciona.Recuerda else if en la misma línea
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Ayuda C# sentencias condicionales (novato)

Publicado por averhotnerd (3 intervenciones) el 13/05/2015 02:19:00
Muchas gracias por la explicación. Me ha sido de gran ayuda!

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Ayuda C# sentencias condicionales (novato)

Publicado por Oscar Chavez (4 intervenciones) el 13/05/2015 02:36:21
Aquí tiene s otras posibles opciones
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Inserte un Número");
            int num = int.Parse(Console.ReadLine());
            if (num.Equals(100))
                Console.WriteLine("Usted ha sacdo una 'A'");
            else if (num.Equals(99) ||num>=90)
                Console.WriteLine("Usted ha sacdo una 'B'");
            else if (num.Equals(89) || num.Equals(88) || num.Equals(87) || num.Equals(86) || num.Equals(85) || num.Equals(84)
              || num.Equals(83) || num.Equals(82) || num.Equals(81) || num.Equals(80))
                Console.WriteLine("Usted ha sacdo una 'C'");
            else if (num.Equals(79) || num.Equals(78) || num.Equals(77) || num.Equals(76) || num.Equals(75) || num.Equals(74)
             || num.Equals(73) || num.Equals(72) || num.Equals(71) || num.Equals(70))
                Console.WriteLine("Usted ha sacdo una 'D'");
            else
                Console.WriteLine("Usted ha sacdo una 'E'");
            Console.ReadKey(true);
        }
    }
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar