Advertisement
Brandford

Prueba I (Pregunta2) *Update* - Taller de Programación III

Apr 15th, 2014
66
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 5.90 KB | None | 0 0
  1. /*
  2.  * Alumno: Victor H. Morales M.
  3.  * Docente: Victor Valenzuela R.
  4.  * Asignatura: Taller de Programación III
  5.  * Información: Prueba I. Pregunta Nº2
  6.  */
  7.  
  8. using System;
  9. using System.Collections.Generic;
  10. using System.Linq;
  11. using System.Text;
  12.  
  13. namespace TProgIII_PruebaI_VictorMorales2
  14. {
  15.     class Program
  16.     {
  17.         static void Main(string[] args)
  18.         {
  19.             int numero_movil;           //Numero movil ingresado
  20.             int numero_movil_calculado; //Utilizado para validar numero de digitos
  21.             double monto_recargado;     //Monto ingresado para la recarga
  22.             double bono;                //Bono segun condicion
  23.             int medio_pago;             //Medio de pago
  24.             double cargo_extra;         //argo extra por medio de pago
  25.             int largo_variable;         //variable que determina numero de digitos
  26.             double total_cargado;       //Total general      
  27.             double total_cargado_auxiliar=0;    //Auxiliar para determinar menor y mayor
  28.             int continuar_recarga;      //Variable que determina un nuevo ingreso
  29.  
  30.             double recarga_mayor =0;    //Indicadores para estadisticas        
  31.             double recarga_menor = 0;    //Indicadores para estadisticas
  32.             int contar_recargas = 0;     //Indicadores para estadisticas
  33.             double sumario_recargas_recibidas = 0;   //Indicadores para estadisticas
  34.             double sumario_bonos_entregados = 0;    //Indicadores para estadisticas
  35.  
  36.             do{
  37.                 Console.Clear();
  38.                 Console.Write("*************** RECARGA DE CELULARES ONLINE ***************\n\n");
  39.  
  40.                 //Ingreso y validación de numero de movil
  41.                 do{
  42.                     Console.Write("\n- Ingrese Numero de Celular \t\t\t: ");
  43.                     numero_movil = int.Parse(Console.ReadLine());
  44.                     numero_movil_calculado = numero_movil;
  45.                     largo_variable = 0;
  46.                     while (numero_movil_calculado != 0)
  47.                     {
  48.                         numero_movil_calculado = numero_movil_calculado / 10;
  49.                         largo_variable++;
  50.                     }
  51.                     if (!(largo_variable == 8))
  52.                         Console.Write("\n#Debe ingresar 8 digitos\n\n");
  53.                 } while (!(largo_variable == 8));
  54.  
  55.                 //Ingreso y validación del medio de pago
  56.                 do{
  57.                     Console.Write("- Ingrese Medio de Pago <1. Cred, 2. Debi> \t: ");
  58.                     medio_pago = int.Parse(Console.ReadLine());
  59.                     if (!(medio_pago == 1 || medio_pago == 2))
  60.                         Console.Write("\n#Debe ingresar 1 o 2\n\n");
  61.                 }while(!(medio_pago == 1 || medio_pago == 2));
  62.                
  63.                 //Ingreso y validación de monto a recargar
  64.                 do{
  65.                     Console.Write("- Ingrese Monto a Recargar \t\t\t: ");
  66.                     monto_recargado = double.Parse(Console.ReadLine());
  67.                     if (!(monto_recargado >= 3500 && monto_recargado <= 20000))
  68.                         Console.Write("\n#Monto de recarga fuera del rango permitido 3500-20000\n\n");
  69.                 } while (!(monto_recargado >= 3500 && monto_recargado <= 20000));
  70.  
  71.                 //Asignación de bono
  72.                 bono = 0;
  73.                 if (monto_recargado >= 3500 && monto_recargado <= 4999)
  74.                     bono = 1500;
  75.                 else if (monto_recargado >= 5000 && monto_recargado <= 9999)
  76.                     bono = 2500;
  77.                 else if (monto_recargado >= 10000 && monto_recargado <= 14999)
  78.                     bono = 5000;
  79.                 else if (monto_recargado >= 15000 && monto_recargado <= 20000)
  80.                     bono = 7500;
  81.  
  82.                 //Asignación en caso que medio de pago sea credito
  83.                 cargo_extra = 0;
  84.                 if (medio_pago == 1)
  85.                 {
  86.                     cargo_extra = (monto_recargado+bono) * 0.10;
  87.                 }
  88.                
  89.                 //Mostrar resumen parcial de la recarga realizada
  90.                 total_cargado = monto_recargado + bono +cargo_extra;
  91.                 Console.Write("\n Sumario: \n");
  92.                 Console.Write("Se han cargado $ " + total_cargado + " al numero celular " + numero_movil);
  93.  
  94.                 //Asignaciones de estadisticas
  95.                 contar_recargas++;
  96.                 sumario_bonos_entregados += bono;
  97.                 sumario_recargas_recibidas += monto_recargado;
  98.  
  99.                 //Determinar las cargas menores y mayores
  100.                 if (total_cargado_auxiliar == 0)
  101.                 {
  102.                     recarga_mayor = monto_recargado;
  103.                     recarga_menor = monto_recargado;
  104.                 }
  105.  
  106.                 if ((total_cargado_auxiliar > 0) && (total_cargado > total_cargado_auxiliar))
  107.                     recarga_mayor = monto_recargado;
  108.  
  109.                 if ((total_cargado_auxiliar > 0) && (total_cargado <= total_cargado_auxiliar))
  110.                     recarga_menor = monto_recargado;
  111.  
  112.                 total_cargado_auxiliar = total_cargado;
  113.  
  114.                 Console.Write("\n\n¿Desea realizar otra recarga? (1. si, 2. no) \t: ");
  115.                 continuar_recarga = int.Parse(Console.ReadLine());
  116.  
  117.             } while (!(continuar_recarga != 1) && (contar_recargas != 50));
  118.  
  119.             //Presentanción de las estadísticas
  120.             Console.Clear();
  121.             Console.Write("\n Estadisticas: \n");
  122.             Console.Write("\n Monto Mayor: " + recarga_mayor);
  123.             Console.Write("\n Monto Menor: " + recarga_menor);
  124.             Console.Write("\n Total Recargas: " + contar_recargas);
  125.             Console.Write("\n Total Recargas Recibidas: " + sumario_recargas_recibidas);
  126.             Console.Write("\n Total Bonos Otorgados: " + sumario_bonos_entregados);
  127.  
  128.             Console.ReadKey();
  129.  
  130.         }
  131.     }
  132. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement