Programación en C Sharp

Que es un algoritmo? Los algoritmos son el conjunto de pasos que se hacen para cumplir cierto objetivo, por ejemplo: Si tienes que hacer un jugo de papaya, lo primero que tienes que hacer es:

jueves, 23 de octubre de 2014

Ejercicios con Si compuestos

Cuando resuelves algoritmos con condicionales, existen diversas formas y variantes de resolver un mismo ejercicio, pero debes tener siempre presente que debe obtenerse los mismos resultados, es decir, cuidar que una solución nos brinde las respuestas correctas. Las condiciones son vitales a la hora de hacer algoritmos.

Ejercicio 1. Los Números
Hacer un algoritmo y programa que indique si un numero es positivo, negativo o es neutro (es neutro cuando es igual a cero). ESTE EJERCICIO TIENE 4 SOLUCIONES DISTINTAS, HAREMOS DOS.

 PRIMERA SOLUCIÓN

Análisis:
  • Consideremos usar solo condicionales sin su opuesto, es decir:
Si dato == o 
Si dato > 0
Si dato < 0
"Es Neutro"
"Es positivo"
"Es negativo"
Ya vimos usaremos tres condiciones independientes, es decir, tres condicionales SI.
    Variables de Entrada: dato
    Variables de Salida: no existen, son solo los mensajes.

    Diseño: 
    Algoritmo LosNumeros
    Inicio
              Entero dato
              Leer(dato)
              Si dato == 0 Entonces
                        Escribir("Es neutro")
              FinSi
              Si dato > 0 Entonces
                        Escribir("Es positivo")
              FinSi
              Si dato < 0 Entonces
                        Escribir("Es negativo")
              FinSi
    Fin


    SEGUNDA SOLUCIÓN
    Análisis:
    • Ahora desarrollemos el ejercicio con dos condicionales:

    Si dato > 0Sino
    "Es positivo"

    Si dato == 0Sino
    "Es neutro""Es negativo"


    Ya vimos usaremos tres condiciones independientes, es decir, tres condicionales SI.
      Variables de Entrada: dato
      Variables de Salida: no existen, son solo los mensajes.

      Diseño: 
      Algoritmo LosNumeros2
      Inicio
                Entero dato
                Leer(dato)
                Si dato > 0 Entonces
                          Escribir("Es positivo")
                Sino
                          Si dato == 0 Entonces
                                    Escribir("Es neutro")
                          Sino
                                    Escribir("Es negativo")
                          FinSi
                FinSi
      Fin

      TERCERA Y CUARTA SOLUCIÓN 
      Existen dos soluciones más similares en forma a la segunda, estas son:
      Algoritmo LosNumeros3
      Inicio
                Entero dato
                Leer(dato)
                Si dato < 0 Entonces
                          Escribir("Es negativo")
                Sino
                          Si dato == 0 Entonces
                                    Escribir("Es neutro")
                          Sino
                                    Escribir("Es positivo")
                          FinSi
                FinSi
      Fin

      Algoritmo LosNumeros4
      Inicio
                Entero dato
                Leer(dato)
                Si dato = 0 Entonces
                          Escribir("Es neutro")
                Sino
                          Si dato < 0 Entonces
                                    Escribir("Es negativo")
                          Sino
                                    Escribir("Es positivo")
                          FinSi
                FinSi
      Fin
      Analiza las soluciones y prueba en C#.



        Ejercicio 6. El estacionamiento

        Un estacionamiento cobra de la siguiente forma:
        • Menos de 1hora 5.50um
        • Por 1hora exacta 6.00um
        • Por mas de una hora, se cobrara 6.00 de la primera hora mas 0.15um por minuto de exceso.
        Hacer el programa y algoritmo que permita pedir el tiempo en minutos y nos muestre cuanto se le cobrara al que contrata la cochera. (Aquí también tenemos varias soluciones, haremos una de ellas.)
        Análisis:
        • Consideremos primero que ingresamos 60 minutos, es decir, una hora exacta:
        Si tiempo < 60Sino
        costo = 5.5

        Si tiempo == 60Sino
        costo = 6costo = 6 + 0.15*(tiempo - 60)



        Diseño:
        Algoritmo ElEstacionamiento
        Inicio
                  Entero tiempo
                  Real costo
                  Leer (tiempo)
                  Si tiempo < 60 Entonces
                            costo = 5.50
                  Sino
                            Si tiempo == 60 Entonces
                                      costo = 6
                            Sino
                                      costo = 6 + 0.15*(tiempo - 60)
                            FinSi
                  FinSi
                  Escribir (costo)
        Fin

        Código: 
                 public static void Main(string[] args)
                {

                    int tiempo;
                    double costo;
                    Console.Write("Ingresa la cantidad de minutos usados: ");
                    tiempo = int.Parse(Console.ReadLine());
                    if (tiempo < 60)
                    {
                        costo = 5.50;
                    }
                    else
                    {
                        if (tiempo == 60)
                        {
                            costo = 6;
                        }
                        else
                        {
                            costo = 6 + 0.15*(tiempo - 60);
                        }
                    }
                    Console.WriteLine("El costo es: " + costo);
                    Console.ReadLine();
                }
        Notas:
        • Cuando usamos una estructura SI dentro de otra, esta recibe el nombre de estructuras anidadas.
        • Cuando resuelvas un ejercicio piensa siempre en la forma más optima de resolverlo, es decir, la forma más sencilla, clara y corta de resolverlo.
        • Ahora que comienzas a programar siempre busca más de una solución a los problemas, esto te brindara experiencia y mayor lógica a la hora de solucionar problemas.

        Equivalencia: 



        • Hacer un programa que permita el ingreso de tres números y nos indique cual es el mayor de los números.
        • Hacer un programa para verificar la existencia de un triangulo, un triangulo existe solo si la suma de dos de sus lados es mayor al tercero.
        • Hacer un programa que permita el ingreso de 5 números y nos indique el mayor de los 5.

        No hay comentarios:

        Publicar un comentario