50 algorotmos
TRANSCRIPT
![Page 1: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/1.jpg)
TRABAJO DE PROGRAMACIÓN
21 Estimar el número de páginas de in texto que puede almacenarse en la memoria de un computador, considerando un promedio de 300 palabras por página y 10 caracteres por palabra.
Asumir que un carácter ocupa un (1) byte. El tamaño de la memoria del computador debe ingresarse expresado en Kbyte.
Entrada: tamaño de la memoria (TamMen)
Salida: número de página (NumPag)
PSEUDOCODIGO:
Definimos constantes:
CarPorPal = 10//caracteres por palabras//
PalPorPag = 300//palabras por paginas//
Inicio
Ingresamos tamaño de la memoria en Kbyte: tammen;//lo declaramos en entero//
Covertimos tamMen en Kbytes a bytes:
Bytes = tamMen*1024;
Calculamos el número de caracteres:
CarPorPag = CarPorPal*PalPorPag;
Calculamos el número de páginas:
NumPag = bytes/ CarPorPag;
El número de páginas (NumPag) es:...
Fin
![Page 2: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/2.jpg)
CODIGO C#
using System;using System.Collections.Generic;using System.Text;
namespace ConsoleApplication3{classProgram {staticvoid Main(string[] args){Console.ForegroundColor = ConsoleColor.Yellow;Console.WriteLine("*** NÚMERO DE PAGINAS QUE SE ALMACENAN EN UNA MEMORIA ***");Console.WriteLine();Console.ForegroundColor = ConsoleColor.White;int tamem;//tamaño de memoriaint numpag;//numero de paginasint carporpal;//caracteres por palabraint palporpag;//palabras por paginasint bytes;
carporpal = 10; palporpag = 300;
Console.Write("Ingresar el Tamaño de Memoria en Kb: "); tamem = int.Parse(Console.ReadLine());
bytes = tamem * 1024; carporpal = carporpal * palporpag; numpag = bytes / carporpal;Console.WriteLine();Console.Write("El Número de Paginas es: ");Console.Write(numpag);Console.ReadLine();} }}
![Page 3: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/3.jpg)
22 De acuerdo a un principio aritmética, un número es múltiplo de 5 si termina en 0 ó en 5. Aplicando este principio determinar si un número entero es múltiplo de 5.
PSEUDO CODIGO:
Inicio
Ingresamos el numero
Si el número es divisible por 0 ó 5
Respuesta: El numero si es múltiplo de 5
Pero si no es divisible entonces
Respuesta: El número no es múltiplo de 5
Fin
![Page 4: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/4.jpg)
CODIGO C#
using System;using System.Collections.Generic;using System.Text;
namespace ConsoleApplication5{classProgram {staticvoid Main(string[] args){Console.ForegroundColor = ConsoleColor.Yellow;Console.WriteLine("*** VER SI UN NÚMERO ENTERO ES MULTIPLO DE 5 ***");Console.WriteLine();Console.ForegroundColor = ConsoleColor.White;int n;//se declara valores de tipo entero//int op;do {Console.Write("Ingrese el Número: ");n = int.Parse(Console.ReadLine());if (n % 5 == 0){Console.WriteLine();Console.Write("CORRECTO ---> ");Console.WriteLine("El Número {0} ES MULTIPLO de 5", n); }else {Console.WriteLine();Console.Write("ERROR ---> ");Console.WriteLine("El Número {0} NO ES MULTIPLO de 5", n); }Console.WriteLine();Console.WriteLine("**********************************");Console.WriteLine("INGRESAR NUEVO NUMERO");Console.WriteLine(" SI ---- [1] ; NO ---- [2]");
![Page 5: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/5.jpg)
Console.Write("SU OPCION: ");op = int.Parse(Console.ReadLine());Console.WriteLine("**********************************");Console.WriteLine(); }while (op == 1);} }}
23 Conociendo lo lados y le hipotenusa deltriángulo rectángulo aplicando el teorema de Pitágoras hallamos el perímetro y el área que representa conocido solamente el valor de sus catetos.
CODIGO C#
using System;using System.Collections.Generic;using System.Text;
namespace ConsoleApplication4{classProgram {staticvoid Main(string[] args){Console.ForegroundColor = ConsoleColor.White;int lado1, lado2;//lados del trianguloint H;//hipotenusaint Area;int Perimetro;Console.Write("Ingresar Valor a Lado1: "); lado1 = int.Parse(Console.ReadLine());Console.WriteLine("-----------------------");Console.Write("Ingresar Valor a Lado2: "); lado2 = int.Parse(Console.ReadLine());Console.WriteLine("-----------------------");Console.Write("Ingresar Valor a Hipotenusa: ");H = int.Parse(Console.ReadLine());Console.WriteLine("-----------------------");//calculamos el perimetro Perimetro = lado1 + lado2 + H;//calculamos el area Area = (lado1 * lado2) / 2;
![Page 6: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/6.jpg)
Console.WriteLine();Console.WriteLine("El Perimetro es: {0}", Perimetro);Console.WriteLine("El Area es: {0}", Area);Console.ReadLine(); } }}
24 Debido a los excelentes resultados, el restaurant decide ampliar sus ofertas de acuerdo a la siguiente escala de consumo. Determinar el importe a pagar por lo consumido, mostrando todos los importes.
Entrada: consumo;
Salidas: consumo, impuesto, importe, descuento;
PSEUDO CODIGO:
Pdesc1 = 0.30;//30% de descuento//
Pdesc2 = 0.20;//20% de descuento//
Pdesc3 = 0.15;//15% de descuento//
Consumo S/. Dscto(%)
Mayor a 100 30
Mayor a 60 20
Mayor a 30 15
Hasta 30 10
![Page 7: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/7.jpg)
Pdesc4 = 0.10;//10 de descuento//
Pimpto = 0.15;//15% de impuesto//
Inicio
Ingresamos el consumo;// es declarado como double//
SI (consumo > 100) ENTONCES
descuento = consumo * Pdesc1;
SINO
SI (consumo > 60) ENTONCES
descuento = consumo * Pdesc2;
SINO
SI (consumo > 30) ENTONCES
descuento = consumo * Pdesc3;
SINO
descuento = consumo * Pdesc4;
fin del SI
fin del SI
fin del SI
// Calculamos impuesto:
impuesto = (consumo - descuento) * Pimpto;
// Calculamos monto de importe:
importe = (consumo - descuento) + impuesto;
Los resultados:
Consumo:…
Descuento:…
Impuesto:…
Importe:…
![Page 8: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/8.jpg)
Fin
CODIGO C#
using System;using System.Collections.Generic;using System.Text;
namespace ConsoleApplication39{classProgram {staticvoid Main(string[] args){Console.ForegroundColor = ConsoleColor.Yellow;Console.WriteLine("*** AMPLIACIÓN DE OFERTAS ***");Console.WriteLine("");Console.ForegroundColor = ConsoleColor.White;double consumo, descuento, impuesto, importe;double Pdesc1, Pdesc2, Pdesc3, Pdesc4;double Pimpto;
Console.Write("Ingrese Consumo: "); consumo = double.Parse(Console.ReadLine());
Pdesc1 = 0.30;//30% de descuento// Pdesc2 = 0.20;//20% de descuento// Pdesc3 = 0.15;//15% de descuento// Pdesc4 = 0.10;//10 de descuento// Pimpto = 0.15;//15% de impuesto//if (consumo < 0) {Console.WriteLine("---ERROR---");Console.ReadLine(); }else {if (consumo > 100){ descuento = consumo * Pdesc1; }elseif (consumo > 60) {
![Page 9: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/9.jpg)
descuento = consumo * Pdesc2; }elseif (consumo > 30) { descuento = consumo * Pdesc3; }else descuento = consumo * Pdesc4;
//calculamos monto de impuesto// impuesto = (consumo - descuento) * Pimpto;//calculamos monto de importe a pagar// importe = (consumo - descuento) + impuesto;Console.WriteLine("");Console.WriteLine("--RESPUESTA--");Console.WriteLine(">>Consumo: {0}", consumo);Console.WriteLine(">>Descuento: {0}", descuento);Console.WriteLine(">>Impuesto: {0}", impuesto);Console.WriteLine(">>Importe a pagar: {0}", importe);Console.ReadLine(); } } }}
25 Ingresar un número entero positivo e imprimir un mensaje para indicar si el número e un múltiplo sólo 3 pero no de 6.
Entrada: número entero positivo: (n);
Salida: mensaje;
PSEUDO CODIGO:
Inicio
Ingresamos un número entero: n;
Determinamos si el número es múltiplo de 3 pero no de 6:
SI (n % 3 == 0) Y (n % 6 != 0) ENTONCES
Mensaje = “Si es múltiplo de 3”;
SINO
Mensaje = “No es múltiplo de 3”;
![Page 10: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/10.jpg)
fin del SI
El resultado es:…
Fin
CODIGO C#
using System;using System.Collections.Generic;using System.Text;
namespace ConsoleApplication40{classProgram {staticvoid Main(string[] args){Console.ForegroundColor = ConsoleColor.Yellow;Console.WriteLine("*** SE VA DETERMINAR SI UN NUMERO ES MULTIPLO DE 3 PERO NO DE 6 ***");Console.WriteLine("");Console.ForegroundColor = ConsoleColor.White;
int n;string mensaje;
Console.WriteLine("");Console.Write("Ingrese un numero: "); n = int.Parse(Console.ReadLine());//evaluar condicion//if ((n % 3 == 0) && (n % 6 != 0)) { mensaje = "Si es Multiplo"; }else { mensaje = "No es Multiplo"; }Console.WriteLine("");Console.Write(">>El Resultado es: ");Console.WriteLine(mensaje);
![Page 11: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/11.jpg)
Console.ReadLine(); } }}
26 La forma general de una ecuación de primer grado es: ax + b = 0. Resolver ecuaciones de este tipo donde se debe ingresar los coeficientes a y b. Pero ejemplo, si se ingresan los números 3.5 y 12 deberá mostrar lo siguiente:
3.5x + 12 = 0
x = -3.4285
Entrada: coeficientes: a, b;
Salida: la ecuación;
PSEUDO CODIGO:
Inicio
Ingresar valor al primer coeficiente: a;
Ingresar valor al segundo coeficiente: b;
SI (a = 0) ENTONCES
Escribimos: “Ecuación sin solución”;
SINO
inicio
x = (b * (-1) / a);
Escribimos resultados para:
A, “ x + “, b = 0, “x” = x;
fin
fin del SI
![Page 12: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/12.jpg)
Fin
CODIGO C#
using System;using System.Collections.Generic;using System.Text;
namespace ConsoleApplication42{classProgram {staticvoid Main(string[] args){Console.ForegroundColor = ConsoleColor.Yellow;Console.WriteLine("*** ECUACIÓN DE PRIMER GRADO ***");Console.WriteLine("");Console.ForegroundColor = ConsoleColor.White;double a, b, x;Console.Write("Ingresar Primer Coeficiente: ");a = double.Parse(Console.ReadLine());Console.Write("Ingresar Segundo Coeficiente:");b = double.Parse(Console.ReadLine());if (a == 0) {Console.WriteLine("Ecuacion Sin Solucion");}else { x = (b * (-1) / a);Console.WriteLine("");Console.WriteLine("Ecuacion a Resolver:");Console.Write(a);Console.Write("x");Console.Write(" + ");Console.Write(b);Console.Write(" = ");Console.WriteLine(" 0 ");Console.WriteLine("");
![Page 13: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/13.jpg)
Console.WriteLine(">>La Ecuacion Resuelta es:");Console.Write("x");Console.Write(" = ");Console.Write(x); }Console.ReadLine(); } }}
27 Determinar las raíces de una ecuación de segundo grado del tipo:ax2 + bx + c= 0. Considerar la siguiente formulas:
X1,2 =
Considerar el caso en que las raíces son imaginarias:
Entrada: coeficientes: a, b, c;
Salidas: raíces: r1, r2;
PSEUDO CODIGO:
Inicio
Ingresar valor al primer coeficiente: a;
Ingresar valor al segundo coeficiente: b;
Ingresar valor al tercer coeficiente: c;
Asumimos que no tiene raíces imaginarias:
Imaginario = falso;
Determinar valor de las raíces:
SI (a=0) y (b=0) ENTONCES
Escribir: “Ecuación sin raíces”;
SINO
![Page 14: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/14.jpg)
inicio
SI (a=0) ENTONCES
inicio
r1 = c/b*(-1);
r2 = r1;
fin
SINO
inicio
disc = b2 – 4* a* c;
SI (disc < 0) ENTONCES
inicio
Imaginario = verdad;
disc = (disc)*(-1);
fin
fin del SI
r1 = (-b + raíz cuadrada(disc)/(2*a);
r2 = (-b – raíz cuadrada(disc)/(2*a);
fin
fin del SI
La ecuación de segundo grado es:…
La raíz1 es: r1;
La raiz2 es: r2;
SI (imaginario es verdad)
Escribir: “raíces imaginarias”;
fin del SI
![Page 15: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/15.jpg)
fin
fin del SI
Fin
CODIGO C#
using System;using System.Collections.Generic;using System.Text;
namespace ConsoleApplication43{classProgram {staticvoid Main(string[] args){Console.ForegroundColor = ConsoleColor.Yellow;Console.WriteLine("*** DETERMINAR LAS RAICES DE UNA ECUACIÓN DE SEGUNDO GRADO ***");Console.WriteLine("");Console.ForegroundColor = ConsoleColor.White;double a, b, c, r1 = 0, r2 = 0, disc = 0;bool imaginario;Console.WriteLine("--Ingresar Coeficientes--");Console.WriteLine("");Console.Write("Ingresar Coeficiente 1: ");a = double.Parse(Console.ReadLine());Console.Write("Ingresar Coeficiente 2: "); b = double.Parse(Console.ReadLine());Console.Write("Ingresar Coeficiente 3: "); c = double.Parse(Console.ReadLine()); imaginario = false;if ((a == 0) && (b == 0)) {Console.WriteLine("Ecuacion sin Raiz");}elseif (a == 0) { r1 = (c / b) * (-1); r1 = r2; }else {
![Page 16: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/16.jpg)
disc = (b * b) - (4 * a * c); }if (disc < 0) { imaginario = true; disc = (disc) * (-1);} r1 = ((-b) + Math.Sqrt(disc)) / (2 * a);//Math.Sqrt es para raízr2 = ((-b) - Math.Sqrt(disc)) / (2 * a);Console.WriteLine("");Console.WriteLine("La Ecuacion de Segundo Grado es:");Console.WriteLine("");Console.WriteLine(" Ecuacion a Resolver:");Console.Write(a);Console.Write(" x*x ");Console.Write(" + ");Console.Write(b);Console.Write(" x ");Console.Write(" + ");Console.Write(c);Console.Write(" = ");Console.Write("0");Console.WriteLine("");Console.WriteLine("");Console.Write(">>La Raiz 1:");Console.WriteLine(r1);Console.Write(">>La Raiz 2:");Console.WriteLine(r2);if (imaginario){Console.WriteLine("");Console.WriteLine(" >>Son Raices Imaginarias"); }Console.ReadLine(); }
28 Una compañía de teléfonos necesita de la siguiente información por cada cliente para emitir su recibo de pago correspondiente: nombre, dirección, número telefónico y cantidad de llamadas realizadas al mes; para lo cual se debe considerar que si la cantidad de llamadas no excede de 50 la tarifa por llamada es de S/. 0.50 y si fuera mayor de 50 pero no excede a 150 la tarifa por llamada adicional es de S/.0.30; finalmente si la cantidad de llamadas fuera mayor a 150, la tarifa por llamada adicional es de S/.0.60. Se pide mostrar los datos del cliente así como el importe a pagar detallando los cálculos efectuados.
![Page 17: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/17.jpg)
Entrada: nombre, dirección, teléfono, número de llamadas;
Salida: importe, nombre, dirección, teléfono, llamada en exceso;
PSEUDO CODIGO:
Limite0 = 50;//limite de llamadas sin exceso//
Limite1 = 150;//limite de llamadas con primer exceso//
tarifa0 = 0.50;//tarifa sin exceso//
tarifa1 = 0.80;//tarifa con primer exceso//
tarifa2 = 1.10;//tarifa con segundo exceso//
Inicio
Ingrese el nombre;
Ingrese la dirección;
Ingrese el teléfono;
Ingrese el número de llamadas;
Inicializamos llamadas en exceso:
exceso0 = 0;//llamadas sin exceso//
exceso1 = 0;//llamadas con primer exceso//
exceso2 = 0;//llamadas con segundo exceso//
Calculamos llamadas en exceso:
SI (llamadas <= limite0) ENTONCES
exceso0 = llamadas;
SINO
SI (llamadas <= limite1) ENTONCES
inicio
exceso0 = limite0;
exceso1 = llamadas – limite0;
fin
![Page 18: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/18.jpg)
SINO
inicio
exceso0 = limite0;
exceso1 = limite1 – limite0;
exceso2 = llamadas – limite1;
fin
fin del SI
fin del SI
Calculamos importe que vamos a pagar:
importe0 = exceso0 * tarifa0;
importe1 = exceso1 * tarifa1;
importe2 = exceso2 * tarifa2;
importe = importe0 + importe1 + importe2;
Mostramos los resultados:
El nombre es:…
La dirección es:…
El teléfono es:…
Tarifa por llamadas: exceso0, tarifa0, importe0;
Tarifa por llamadas: exceso1, tarifa1, importe1;
Tarifa por llamadas: exceso2, tarifa2, importe2;
El importe es:… Fin
CODIGO C#
using System;using System.Collections.Generic;using System.Text;
![Page 19: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/19.jpg)
namespace ConsoleApplication44{classProgram {staticvoid Main(string[] args){Console.ForegroundColor = ConsoleColor.Yellow;Console.WriteLine("*** COMPAÑIA DE TELEFONOS ***");Console.WriteLine("");Console.ForegroundColor = ConsoleColor.White;string nombre, direccion;double exceso0, exceso1, exceso2;double llamadas, telefono;double importe, importe0, importe1, importe2;constint Limite0 = 50;constint Limite1 = 150;constdouble tarifa0 = 0.50;constdouble tarifa1 = 0.80;constdouble tarifa2 = 1.10;
Console.Write("Ingresar Nombre: "); nombre = Console.ReadLine();Console.Write("Ingresar Direccion: "); direccion = Console.ReadLine();Console.Write("Ingresar Telefono: "); telefono = double.Parse(Console.ReadLine());if (telefono < 0) {Console.WriteLine("---ERROR---");Console.ReadLine(); }else {Console.Write("Ingresar Número de Llamadas: "); llamadas = double.Parse(Console.ReadLine());if (llamadas < 0) {Console.WriteLine("---ERROR---");Console.ReadLine(); }else {//inicializar llamdas en exceso// exceso0 = 0; exceso1 = 0; exceso2 = 0;
if (llamadas <= Limite0)
![Page 20: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/20.jpg)
{ exceso0 = llamadas; }elseif (llamadas <= Limite1) { exceso0 = Limite0; exceso1 = llamadas - Limite0; }else exceso0 = Limite0; exceso1 = Limite1 - Limite0; exceso2 = llamadas - Limite1;//calcular importes a pagar// importe0 = exceso0 * tarifa0; importe1 = exceso1 * tarifa1; importe2 = exceso2 * tarifa2; importe = importe0 + importe1 + importe2;Console.WriteLine("");Console.WriteLine("---Los Datos son---");Console.Write(">>Nombre: ");Console.WriteLine(nombre);Console.Write(">>Direccion: ");Console.WriteLine(direccion);Console.Write(">>Telefono: ");Console.WriteLine(telefono);Console.Write(">>Llamadas: ");Console.WriteLine(llamadas);Console.WriteLine(">>Tarifa por Llamadas: {0}", exceso0, tarifa0, importe0);Console.WriteLine(">>Tarifa por Llamadas: {0}", exceso1, tarifa1, importe1);Console.WriteLine(">>Tarifa por Llamadas: {0}", exceso2, tarifa2, importe2);Console.Write(">>Importe: ");Console.WriteLine(importe);Console.ReadLine(); } } } }}
![Page 21: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/21.jpg)
29 Determinar el salario bruto y neto semanal de un trabajador considerando que si trabaja mas de 40 horas, el exceso sera considerado como horas extras cuya tarifa es el 50% más que la tarifa de una hora normal.Además, el trabajador se somete a un impuesto de 10% si su salario bruto sobrepasa los S/.80.00. Mostrar salario bruto, salario neto y descuento.Entrada: horas trabajadas: HorTra;
Tarifa por hora normal: TarNor;
Salida: salario bruto: SalBru;
salario neto: SalNet;
descuento: (SalBru - SalNet);
PSEUDO CODIGO:
MonLim = 80;
HorNor = 40;
PorInc = 0.50;
PorLey = 0.10;
Inicio
Ingresar horas trabajadas:HorTra;//lo declaramos como entero//
Ingresar tarifa normal: TarNor;//lo declaramos como entero//
Determinar el salario bruto:
SI (HorTra > HorNor) ENTONCES
inicio
SalHorNor = HorNor * TarNor;
SalHorExt = (HorTra - HorNor) * (1 + PorInc);
SalBru = SalHorNor + SalHorExt;
fin
SINO
SalBru = HorNor * TarNor;
![Page 22: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/22.jpg)
fin del SI
Determinar salario neto:
SI (SalBru > TarNor) ENTONCES
SalNet = SalBru * (1 - PorLey);
SINO
SalNet = SalBru;
fin del SI
El salario bruto(SalBru) es:...
El salario neto(SalNet) es:...
El descuento(SalBru - SalNet) es:...
Fin
CODIGO C#using System;using System.Collections.Generic;using System.Text;
namespace ConsoleApplication45{classProgram {staticvoid Main(string[] args){Console.ForegroundColor = ConsoleColor.Yellow;Console.WriteLine("*** SALARIO BRUTO DE UN TRABAJADOR***");Console.WriteLine("");Console.ForegroundColor = ConsoleColor.White;int HorTra;double TarNor;Console.Write("Ingrese las Horas Trabajadas: ");HorTra = int.Parse(Console.ReadLine());if (HorTra < 0){
![Page 23: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/23.jpg)
Console.WriteLine("---ERROR---");Console.ReadLine(); }else {Console.Write("Ingrese Tarifa de Trabajo por Hora: ");TarNor = double.Parse(Console.ReadLine());if (TarNor < 0) {Console.WriteLine("---ERROR---");Console.ReadLine(); }else {int MonLim = 80;int HorNor = 40;double PorInc = 0.50;double PorLey = 0.10;double SalHorNor;double SalHorExt;double SalBru;double SalNet;
if (HorTra > HorNor) { SalHorNor = HorNor * TarNor; SalHorExt = (HorTra - HorNor) * (1 + PorInc); SalBru = SalHorNor + SalHorExt; }else { SalBru = HorNor * TarNor;}//determinar sueldo neto//if (SalBru > TarNor){ SalNet = SalBru * (1 - PorLey); }else { SalNet = SalBru;}Console.WriteLine("");Console.WriteLine("--El Trabajador Recibira--");Console.Write(">>Salario Bruto: ");Console.WriteLine(SalBru);Console.Write(">>Descuento de Ley: ");Console.WriteLine(SalBru - SalNet);
![Page 24: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/24.jpg)
Console.Write(">>Salario Neto: ");Console.WriteLine(SalNet);Console.ReadLine();} } } }}
30.Un restaurante ofrece descuento del 20% para un consumo mayor de S/.30.00 y aplica un impuesto de 15% para todo consumo. Determinar el importe a pagar por lo consumido, mostrando todos los importes.
CODIGO C#
using System;using System.Collections.Generic;using System.Text;
namespace ConsoleApplication4{classProgram {staticvoid Main(string[] args){Console.ForegroundColor = ConsoleColor.Yellow;Console.WriteLine("*** DESCUENTO DE UN RESTAURANTE ***");Console.WriteLine();Console.ForegroundColor = ConsoleColor.White;double consumo;double descuento = 0;double impuesto;double importe;double Pdesc;double Pimpto;int op;do { Pdesc = 0.20;//20% descuento//
![Page 25: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/25.jpg)
Pimpto = 0.15;//15% de impuesto//
Console.Write("Ingrese la Cantidad de su Consumo: ");consumo = double.Parse(Console.ReadLine());
if (consumo < 0){Console.WriteLine("---ERROR---"); }else {if (consumo > 30) {Console.WriteLine();Console.WriteLine("<<<NOTA>>>");Console.WriteLine(" SI HABRA DESCUENTO");Console.WriteLine(); descuento = consumo * Pdesc;}elseif (consumo < 30) {Console.WriteLine();Console.WriteLine("<<<NOTA>>>");Console.WriteLine(" NO HABRA DESCUENTO");Console.WriteLine(); }//calculamos impuesto impuesto = (consumo - descuento) * Pimpto;//calculamos importe importe = (consumo - descuento) + impuesto;Console.WriteLine("<<<RESPUESTAS>>>");Console.WriteLine("******************************");Console.WriteLine("Consumo:{0}", consumo);Console.WriteLine("-------------------------------");Console.WriteLine("Descuento:{0}", descuento);Console.WriteLine("-------------------------------");Console.WriteLine("Impuesto:{0}", impuesto);Console.WriteLine("-------------------------------");Console.WriteLine("Importe:{0}", importe);Console.WriteLine("-------------------------------"); }Console.WriteLine();Console.WriteLine("******************************");Console.WriteLine("DESEA CONTINUAR");Console.WriteLine("SI--------------->(1)");Console.WriteLine("NO--------------->(2)");
![Page 26: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/26.jpg)
Console.Write("Su opción: "); op = int.Parse(Console.ReadLine());Console.Clear();Console.ForegroundColor = ConsoleColor.Yellow;Console.WriteLine("*** DESCUENTO DE UN RESTAURANTE ***");Console.WriteLine();Console.ForegroundColor = ConsoleColor.White; }while (op == 1);} }}
31.Determinar el MENOR valor de 5 numeros ingresados desde el teclado.
CODIFICACION:
using System;using System.Collections.Generic;using System.Text;
namespace ConsoleApplication4{classProgram {staticvoid Main(string[] args){Console.ForegroundColor = ConsoleColor.Yellow;Console.WriteLine("*** MENOR VALOR DE 5 NÚMEROS ***");Console.WriteLine();Console.ForegroundColor = ConsoleColor.White;double A, B, C, D, E;double menor;Console.Write("Ingresar valor a A: ");A = double.Parse(Console.ReadLine());Console.WriteLine("------------------------");Console.Write("Ingresar valor a B: ");B = double.Parse(Console.ReadLine());Console.WriteLine("------------------------");Console.Write("Ingresar valor a C: ");C = double.Parse(Console.ReadLine());Console.WriteLine("------------------------");Console.Write("Ingresar valor a D: ");D = double.Parse(Console.ReadLine());Console.WriteLine("------------------------");Console.Write("Ingresar valor a E: ");
![Page 27: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/27.jpg)
E = double.Parse(Console.ReadLine());Console.WriteLine("------------------------");
menor = A;//asume el primer valor//
if (menor > B) menor = B;if (menor > C) menor = C;if (menor > D) menor = D;if (menor > E) menor = E;Console.WriteLine();Console.WriteLine("<<<RESPUESTA>>>");Console.WriteLine("---------------------------------------");Console.WriteLine("Menor Valor Ingresado es: {0}", menor);Console.WriteLine("---------------------------------------");Console.ReadLine(); } }32.Dos personas desean intercambiar sus identidades (nombre, dirección, teléfono, edad) siempre
cuando la edad del primero fuese mayor que la edad del segundo en no más de 4 años. Ingresar los datos de cada persona y mostrar sus nuevas identidades o un mensaje mostrando la diferencia de edades que impidiera el intercambio de identidades.
CODIGO C#
using System;using System.Collections.Generic;using System.Text;
namespace ConsoleApplication7{classProgram {staticvoid Main(string[] args){Console.ForegroundColor = ConsoleColor.Yellow;Console.WriteLine(" *** CAMBIO DE DATOS DE PERSONAS ***");Console.ForegroundColor = ConsoleColor.White;
string nombre1, nombre2, nombre3, nombre4, direccion1, direccion2, direccion3, direccion4;int telefono1, telefono2, telefono3, telefono4, edad1, edad2, edad3, edad4;Console.WriteLine();
![Page 28: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/28.jpg)
Console.WriteLine("********************************");Console.ForegroundColor = ConsoleColor.Red;Console.WriteLine(" ---PRIMERA PERSONA---");Console.ForegroundColor = ConsoleColor.White;Console.WriteLine();Console.WriteLine("--------------------------");Console.Write("Ingrese Nombre: "); nombre1 = Console.ReadLine();Console.WriteLine("--------------------------");Console.Write("Ingrese Dirección: "); direccion1 = Console.ReadLine();Console.WriteLine("--------------------------");Console.Write("Ingrese Teléfono: "); telefono1 = int.Parse(Console.ReadLine());Console.WriteLine("--------------------------");Console.Write("Ingrese Edad: "); edad1 = int.Parse(Console.ReadLine());Console.WriteLine("--------------------------");Console.Clear();Console.WriteLine();Console.WriteLine("****************************");Console.ForegroundColor = ConsoleColor.Red;Console.WriteLine(" ---SEGUNDA PERSONA---");Console.ForegroundColor = ConsoleColor.White;Console.WriteLine();Console.WriteLine("--------------------------");Console.Write("Ingrese Nombre: "); nombre2 = Console.ReadLine();Console.WriteLine("--------------------------");Console.Write("Ingrese Dirección: "); direccion2 = Console.ReadLine();Console.WriteLine("--------------------------");Console.Write("Ingrese Teléfono: "); telefono2 = int.Parse(Console.ReadLine());Console.WriteLine("--------------------------");Console.Write("Ingrese Edad: "); edad2 = int.Parse(Console.ReadLine());Console.WriteLine("--------------------------");
if (edad1 > edad2 - 2)//SI EDAD 1 ES MAYOR QUE LA EDAD 2 POR 4 AÑOS RECIEN//HAY CAMBIOS EJEMPLO (18,18),(14,11) LA COSA QUE//QUE AL SER RESTADO LA EDAD 2 DEVE SER MENOR QUE LA EDAD 1 PARA QUE HAIGA CAMBIOS {Console.Clear();Console.WriteLine();Console.WriteLine("<<<NOTA>>>");Console.WriteLine("HAY CAMBIO DE IDENTIDADES");Console.WriteLine();
![Page 29: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/29.jpg)
Console.WriteLine("****************************");Console.ForegroundColor = ConsoleColor.Red;Console.WriteLine(" ---PRIMERA PERSONA---");Console.ForegroundColor = ConsoleColor.White;Console.WriteLine();Console.WriteLine("--------------------------");Console.Write("Ingrese Nuevo Nombre: "); nombre3 = Console.ReadLine();Console.WriteLine("--------------------------");Console.Write("Ingrese Nueva Dirección: "); direccion3 = Console.ReadLine();Console.WriteLine("--------------------------");Console.Write("Ingrese Nuevo Teléfono: "); telefono3 = int.Parse(Console.ReadLine());Console.WriteLine("--------------------------");Console.Write("Ingrese Nueva Edad: "); edad3 = int.Parse(Console.ReadLine());Console.WriteLine("--------------------------");
Console.WriteLine();Console.WriteLine("****************************");Console.ForegroundColor = ConsoleColor.Red;Console.WriteLine(" ---SEGUNDA PERSONA---");Console.ForegroundColor = ConsoleColor.White;Console.WriteLine();Console.WriteLine("--------------------------");Console.Write("Ingrese Nuevo Nombre: "); nombre4 = Console.ReadLine();Console.WriteLine("--------------------------");Console.Write("Ingrese Nueva Dirección: "); direccion4 = Console.ReadLine();Console.WriteLine("--------------------------");Console.Write("Ingrese Nuevo Teléfono: "); telefono4 = int.Parse(Console.ReadLine());Console.WriteLine("--------------------------");Console.Write("Ingrese Nueva Edad: "); edad4 = int.Parse(Console.ReadLine());Console.WriteLine("--------------------------");Console.WriteLine();Console.WriteLine("********************************");Console.WriteLine();Console.WriteLine("<<<RESPUESTAS>>>");Console.WriteLine();Console.ForegroundColor = ConsoleColor.Red;Console.WriteLine(" ---PRIMERA PERSONA---");Console.ForegroundColor = ConsoleColor.White;Console.WriteLine("Nombre: {0}", nombre3);Console.WriteLine("Dirección: {0}", direccion3);
![Page 30: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/30.jpg)
Console.WriteLine("Teléfono: {0}", telefono3);Console.WriteLine("Edad: {0}", edad3);Console.WriteLine();Console.ForegroundColor = ConsoleColor.Red;Console.WriteLine(" ---SEGUNDA PERSONA---");Console.ForegroundColor = ConsoleColor.White;Console.WriteLine("Nombre: {0}", nombre4);Console.WriteLine("Dirección: {0}", direccion4);Console.WriteLine("Teléfono: {0}", telefono4);Console.WriteLine("Edad: {0}", edad4);Console.WriteLine("********************************");Console.ReadLine();
}elseif (edad1 <= edad2)//SI LA EDAD 1 ES MENOR O IGUAL QUE LA EDAD 2//NO HAY CAMBIOS EJEMPLO (12,16),(10,16) LA COSA QUE//QUE AL SER RESTADO LA EDAD 2 NO DEVE SER MENOR QUE LA EDAD 1 OSINO VA VER CAMBIOS {Console.Clear();Console.WriteLine();Console.WriteLine("<<<NOTA>>>");Console.WriteLine(" NO HAY CAMBIO DE IDENTIDADES");Console.WriteLine("********************************");Console.WriteLine();Console.WriteLine("<<<RESPUESTA>>>");Console.WriteLine();Console.ForegroundColor = ConsoleColor.Red;Console.WriteLine(" ---PRIMERA PERSONA---");Console.ForegroundColor = ConsoleColor.White;Console.WriteLine("Nombre: {0}", nombre1);Console.WriteLine("Dirección: {0}", direccion1);Console.WriteLine("Teléfono: {0}", telefono1);Console.WriteLine("Edad: {0}", edad1);Console.WriteLine();Console.ForegroundColor = ConsoleColor.Red;Console.WriteLine(" ---SEGUNDA PERSONA---");Console.ForegroundColor = ConsoleColor.White;Console.WriteLine("Nombre: {0}", nombre2);Console.WriteLine("Dirección: {0}", direccion2);Console.WriteLine("Teléfono: {0}", telefono2);Console.WriteLine("Edad: {0}", edad2);Console.WriteLine("********************************");Console.ReadLine(); } } }
![Page 31: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/31.jpg)
33.Determinar elimporte a pagar por un alumno de un instituto cuya cuota tiene un porcentaje de descuento que se establece en la siguiente tabla y está en función al colegio de procedencia del alumno; asimismo los importes están exonerados de impuestos.
INSTITUTOS
COLEGIO A B C
Nacional 50 40 30
Particular 25 20 15
Entrada: Instituto, Colegio, cuota;
Salida: importe a pagar (importe);
PSEUDO CODIGO:
pdNA = 0.50; //50% descuento A.Nacional//
pdNB = 0.40; //40% descuento B.Nacional//
pdNC = 0.30; //30% descuento C.Nacional//
pdPA = 0.25; //25% descuento A.Particular//
pdPB = 0.20; //20% descuento B.Particular//
pdPC = 0.15; //15% descuento C.Particular//
Inicio
Ingrese institudo deseado: A, B, C;
Ingrese colegio deseado: N, P;
Ingrese cuota del mes;
Calculamos descuento:
CASO instituto SEA
"A" : CASO (colegio) SEA
nacional: Dscto = cuota * pdNA;
![Page 32: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/32.jpg)
particular: Dscto = cuota * pdPA;
fin del CASO
"B" : CASO (colegio) SEA
nacional: Dscto = cuota * pdNB;
particular: Dscto = cuota * pdPB;
fin del CASO
"C" : CASO (colegio) SEA
nacional: Dscto = cuota * pdNC;
particular: Dscto = cuota * pdPC;
fin del CASO
fin del CASO
calculamos importe:
importe = cuota - Dscto;
EL importe a pagar(importe) es:..
CODIGO C#
using System;using System.Collections.Generic;using System.Text;
namespace ConsoleApplication48{classProgram {staticvoid Main(string[] args){Console.ForegroundColor = ConsoleColor.Yellow;Console.WriteLine("*** IMPORTE A PAGAR POR UN INSTITUTO ***");
![Page 33: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/33.jpg)
Console.WriteLine("");Console.ForegroundColor = ConsoleColor.White;
char instituto, colegio;double cuota, Dscto = 0, importe;constdouble pdNA = 0.50; //50% descuento A.Nacional//constdouble pdNB = 0.40; //40% descuento B.Nacional//constdouble pdNC = 0.30; //30% descuento C.Nacional//constdouble pdPA = 0.25; //25% descuento A.Particular//constdouble pdPB = 0.20; //20% descuento B.Particular//constdouble pdPC = 0.15; //15% descuento C.Particular//
Console.Write("Ingrese Instituto A/B/C: "); instituto = char.Parse(Console.ReadLine());Console.Write("Ingrese Colegio N/P: "); colegio = char.Parse(Console.ReadLine());Console.Write("Ingrese Cuota del Mes: "); cuota = double.Parse(Console.ReadLine());//determinar descuento correspondiente//switch (instituto) {case'A': switch (colegio) {case'N': Dscto = cuota * pdNA; break;case'P': Dscto = cuota * pdPA; break; }break;case'B': switch (colegio) {case'N': Dscto = cuota * pdNB; break;case'P': Dscto = cuota * pdPB; break; }break;case'C': switch (colegio) {case'N': Dscto = cuota * pdNC; break;case'P': Dscto = cuota * pdPC; break; }break;}//calcular importe a pagar// importe = cuota - Dscto;//escribir resultados//Console.WriteLine("-RESPUESTA-");Console.Write(">>Importe a Pagar: ");Console.WriteLine(importe);Console.ReadLine(); } }}
![Page 34: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/34.jpg)
34.Una tienda distribuidora de ropa ha establecido porcentaje de descuento sobre el monto comprado de la siguiente forma:
HOMBRES MUJERES
ORIGEN/TALLA S M L S M L
Nacional 10 12 15 15 17 20
Importado 05 07 10 07 09 12
Determinar y mostrar, para un comprador, el monto comprado, el importe del descuento y el monto a pagar.
Entradas: monto de compra(monto_compra), origen, talla, sexo;
Salidas: monto de compra(monto_compra), descuento(dscto), monto a pagar(monto_compra - dscto);
PSEUDO CODIGO:
pdNHS = 0.10; //10% descuento nacional hombre S//
pdNHM = 0.12; //12% descuento nacional hombre M//
pdNHL = 0.15; //15% descuento nacional hombre L//
pdNMS = 0.15; //15% descuento nacional mujer S//
pdNMM = 0.17; //17% descuento nacional mujer M//
pdNML = 0.20; //20% descuento nacional mujer L//
pdIHS = 0.05; //05% importado nacional hombre S//
pdIHM = 0.07; //07% importado nacional hombre M//
pdIHL = 0.10; //10% importado nacional hombre L//
pdIMS = 0.07; //07% importado nacional mujer S//
pdIMM = 0.09; //09% importado nacional mujer M//
pdIML = 0.12; //12% importado nacional mujer L//
Inicio
Ingresamos monto de compra: monto_compra;
![Page 35: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/35.jpg)
Ingresamos el origen: Nacional, Importado;
Ingresamos el sexo: Hombre, mujer;
Ingresamos la talla: S, M, L;
Calcular monto del descuento:
CASO (origen) SEA
'N' : CASO (sexo) SEA
'H' : CASO (talla) SEA
'S': dscto = monto_compra * pdNHS;
'M': dscto = monto_compra * pdNHM;
'L': dscto = monto_compra * pdNHL;
fin del CASO
'M' : CASO (talla) SEA
'S': dscto = monto_compra * pdNMS;
'M': dscto = monto_compra * pdNMM;
'L': dscto = monto_compra * pdNML;
fin del CASO
fin del CASO
'I' : CASO (sexo) SEA
'H' : CASO (talla) SEA
'S': dscto = monto_compra * pdIHS;
'M': dscto = monto_compra * pdIHM;
'L': dscto = monto_compra * pdIHL;
fin del CASO
'M' : CASO (talla) SEA
'S': dscto = monto_compra * pdIMS;
'M': dscto = monto_compra * pdIMM;
![Page 36: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/36.jpg)
'L': dscto = monto_compra * pdIML;
fin del CASO
fin del CASO
fin del CASO
Los resultados son:
El monto de compra (monto_compra) es:...
El descuento (dscto) es:...
El monto a pagar (monto_compra - dscto) es:...
Fin
CODIGO C#
using System;using System.Collections.Generic;using System.Text;
namespace ConsoleApplication52{classProgram {staticvoid Main(string[] args){Console.ForegroundColor = ConsoleColor.Yellow;Console.WriteLine("*** TIENDA DE ROPA ***");Console.WriteLine("");Console.ForegroundColor = ConsoleColor.White;
double monto;int origen;int talla;int sexo;constdouble pdNHS = 0.10;//NACIONAL HOMBRE Sconstdouble pdNHM = 0.12;//NACIONAL HOMBRE M
![Page 37: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/37.jpg)
constdouble pdNHL = 0.15;//NACIONAL HOMBRE Lconstdouble pdNMS = 0.15;//NACIONAL MUJETR Sconstdouble pdNMM = 0.17;//NACIONAL MUJER Mconstdouble pdNML = 0.20;//NACIONAL MUJER Lconstdouble pdIHS = 0.05;//IMPORTADO HOMBRE Sconstdouble pdIHM = 0.07;//IMPORTADO HOMBRE Mconstdouble pdIHL = 0.10;//IMPORTADO HOMBRE Lconstdouble pdIMS = 0.07;//IMPORTADO MUJER Sconstdouble pdIMM = 0.09;//IMPORTADO MUJER Mconstdouble pdIML = 0.12;//IMPORTADO MUJER Ldouble Dscto = 0;
Console.Write(">>Introduce el Monto de la Compra: ");monto = double.Parse(Console.ReadLine());Console.WriteLine("");Console.WriteLine(">>Selecciona el Origen:\n1.Nacional\n2.Importado");Console.Write("Su opción: "); origen = int.Parse(Console.ReadLine());Console.WriteLine("");Console.WriteLine(">>Introduce Sexo:\n1.Hombre\n2.Mujer");Console.Write("Su opción: "); sexo = int.Parse(Console.ReadLine());Console.WriteLine("");Console.WriteLine(">>Introduce Talla:\n1.S\n2.M \n3.L");Console.Write("Su opción: "); talla = int.Parse(Console.ReadLine());
switch (origen) {case 1:switch (sexo) {case 1:switch (talla) {case 1: Dscto = monto * pdNHS;break;case 2: Dscto = monto * pdNHM;break;case 3: Dscto = monto * pdNHL;break; }break;case 2:switch (talla)
![Page 38: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/38.jpg)
{case 1: Dscto = monto * pdNMS;break;case 2: Dscto = monto * pdNMM;break;case 3: Dscto = monto * pdNML;break; }break; }break;case 2:switch (sexo) {case 1:switch (talla) {case 1: Dscto = monto * pdIHS;break;case 2: Dscto = monto * pdIHM;break;case 3: Dscto = monto * pdIHL;break; }break;case 2:switch (talla) {case 1: Dscto = monto * pdIMS;break;case 2: Dscto = monto * pdIMM;break;case 3: Dscto = monto * pdIML;break;}break; }break; }
![Page 39: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/39.jpg)
Console.WriteLine("");Console.WriteLine("--RESPUESTA--");Console.Write(">>Monto Comprado: ");Console.WriteLine(monto);Console.Write(">>Descuento: ");Console.WriteLine(Dscto);Console.Write(">>Monto a Pagar: ");Console.WriteLine(monto - Dscto);Console.ReadLine(); } }
35.Una tienda comercial ofrece ventas al crédito financiadas en tres formas como se indica a continuación:
TIPO % % NÚMERO
FINANCIAMIENTO INTERES CUOTA INICIAL LETTRAS
1 5 60 2
2 10 50 4
3 15 35 6
El cliente deberá firmar antes de la financiación el monto de la compra, el cual es afecto a un 10% de impuesto, por lo que el monto de la factura es igual al monto de la compra más el importe del impuesto.
Luego que el cliente elige el tipo de financiamiento que le convenga, se mostrará lo siguiente: monto de la factura, monto de los intereses, nuevo monto de la factura (incluyendo intereses), monto de la cuota inicial y el monto de cada letra por pagar (nuevo monto de la factura menos monto de cuota inicial entre número de letras).
Entradas: monto de compras: Mcompra;
tipo de financiamiento: tipo_fin;
Salidas: monto de compra: Mcompra;
impuesto;
monto de factura: Mfactura;
![Page 40: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/40.jpg)
intereses;
nuevo monto de factura: Nuevo_Mfactura;
monto de cuota inicial: Mcuotaini;
monto de cada letra: Mletra;
número de letras: Nletras;
tipo de financiamiento: tipo_fin;
PSEUDO CODIGO:
pint1 = 0.05; //5% de interes tipo 1//
pint2 = 0.10; //10% de interes tipo 2//
pint3 = 0.15; //15% de interes tipo 3//
pcin1 = 0.60; //60% de cuota inicial tipo 1//
pcin2 = 0.50; //50% de cuota inicial tipo 2//
pcin3 = 0.35; //35% de cuota inicial tipo 3//
nlet1 = 2; //numero de letras tipo 1//
nlet2 = 4; //numero de letras tipo 2//
nlet3 = 6; //numero de letras tipo 3//
pimp = 0.10; //10% de impuesto sobre monto de compra//
Inicio
Ingrese el monto de compra: Mcompra;
Ingrese el tipo de financiamiento (<1,2,3>): tipo_fin;
![Page 41: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/41.jpg)
Calculamos el monto del impuesto:
impuesto = Mcompra * pimp;
Calcular monto de la factura:
Mfactura = Mcompra + impuesto;
Determinar porcentaje de interes, cuota inicial y numero de letras:
CASO (tipo_fin) SEA
'1' : inicio
pinteres = pint1;
pcuotaini = pcin1;
Nletras = nlet1;
fin
'2' : inicio
pinteres = pint2;
pcuotaini = pcin2;
Nletras = nlet2;
fin
'3' : inicio
pinteres = pint3;
pcuotaini = pcin3;
Nletras = nlet3;
fin
fin del CASO
// Calcular montos requeridos:
intereses = Mfactura * pinteres;
Nuevo_Mfactura = Mfactura * intereses;
Mcuotaini = Nuevo_Mfactura * pcuotaini;
![Page 42: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/42.jpg)
Mletra = (Nuevo_Mfactura - Mcuotaini) / Nletras;
Mostrar resultados:
El monto de compra ( Mcompra) es:...
Los impuestos (impuesto) son:...
El monto de factura (Mfactura) es:...
Los intereses (intereses) son :
El nuevo monto factura (Nuevo_Mfactura) es:...
El monto de cuota inicial (Mcuotaini) es:...
El monto de cada letra (Mletra) es:...
Numero de letras (Nletras) :...
Tipo de financiamiento (tipo_fin) es:... Fin
CODIGO C#
using System;using System.Collections.Generic;using System.Text;
namespace ConsoleApplication53{classProgram {staticvoid Main(string[] args){Console.ForegroundColor = ConsoleColor.Yellow;Console.WriteLine("*** TIENDA DE CRÉDITO ***");Console.WriteLine("");Console.ForegroundColor = ConsoleColor.White;
double Mcompra, impuesto, Mfactura, intereses, Nuevo_Mfactura, Mcuotaini;double Mletra, pinteres = 0, pcuotaini = 0;byte Nletras = 0;char tipo_fin;constdouble pint1 = 0.05; //5% de interes tipo 1//constdouble pint2 = 0.10; //10% de interes tipo 2//constdouble pint3 = 0.15; //15% de interes tipo 3//constdouble pcin1 = 0.60; //60% de cuota inicial tipo 1//constdouble pcin2 = 0.50; //50% de cuota inicial tipo 2//
![Page 43: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/43.jpg)
constdouble pcin3 = 0.35; //35% de cuota inicial tipo 3//constint nlet1 = 2; //numero de letras tipo 1//constint nlet2 = 4; //numero de letras tipo 2//constint nlet3 = 6; //numero de letras tipo 3//constdouble pimp = 0.10; //10% de impuesto sobre monto de compra////ingresar datos//Console.Write("Ingresar monto de la compra: "); Mcompra = double.Parse(Console.ReadLine());Console.WriteLine("Ingresar tipo de financiamiento:<1,2,3>");Console.Write("Su opción: "); tipo_fin = char.Parse(Console.ReadLine());//calcular monto del impuesto// impuesto = Mcompra * pimp;//calcular monto de la factura// Mfactura = Mcompra + impuesto;//determinar porcentaje de interes, cuota inicial y numero de letras//switch (tipo_fin) {case'1':{ pinteres = pint1; pcuotaini = pcin1; Nletras = nlet1;}break;case'2': { pinteres = pint2; pcuotaini = pcin2; Nletras = nlet2; }break;case'3':{ pinteres = pint3; pcuotaini = pcin3; Nletras = nlet3; }break; }//calcular montos requeridos// intereses = Mfactura * pinteres; Nuevo_Mfactura = Mfactura * intereses; Mcuotaini = Nuevo_Mfactura * pcuotaini; Mletra = (Nuevo_Mfactura - Mcuotaini) / Nletras;//mostrar resultados//Console.WriteLine("");Console.WriteLine("");
![Page 44: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/44.jpg)
Console.WriteLine("--RESPUESTA--");Console.WriteLine("----------------------------------------");Console.WriteLine(">>El monto de compra es: {0}", Mcompra);Console.WriteLine("----------------------------------------");Console.WriteLine(">>Los impuestos son: {0}", impuesto);Console.WriteLine("----------------------------------------");Console.WriteLine(">>El monto de factura: {0}", Mfactura);Console.WriteLine("----------------------------------------");Console.WriteLine(">>Los intereses son: {0}", intereses);Console.WriteLine("----------------------------------------");Console.WriteLine(">>El nuevo monto factura: {0}", Nuevo_Mfactura);Console.WriteLine("----------------------------------------");Console.WriteLine(">>El monto de cuota inicial: {0}", Mcuotaini);Console.WriteLine("----------------------------------------");Console.WriteLine(">>El monto de cada letra: {0}", Mletra);Console.WriteLine("----------------------------------------");Console.WriteLine(">>Numero de letras: {0}", Nletras);Console.WriteLine("----------------------------------------");Console.WriteLine(">>Tipo de financiamiento: {0}", tipo_fin);Console.WriteLine("----------------------------------------");Console.ReadLine(); } }}
36.Los días de la semana se identifican por un numero de la siguiente forma: 0 para domingo, 1 para lunes, 2 para martes,etc. Determinar el día que corresponda a un número ingresado dando un mensaje adecuado para el caso que el número dado no corresponda a ningún dia de la semana.
CODIFICACION:
using System;using System.Collections.Generic;using System.Text;
namespace ConsoleApplication54{classProgram {staticvoid Main(string[] args){int día, op = 1;do {Console.ForegroundColor = ConsoleColor.Yellow;
![Page 45: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/45.jpg)
Console.WriteLine("*** DÍAS DE LA SEMANA ***");Console.ForegroundColor = ConsoleColor.White;Console.WriteLine("");Console.WriteLine(" Escoja el Día: <0--1--2--3--4--5--6>");Console.Write(" SU OPCCION: "); día = int.Parse(Console.ReadLine());Console.WriteLine("");switch (día) {case 0:Console.Write(">>>El Día es: ");Console.WriteLine("DOMINGO"); break;case 1:Console.Write(">>>El Día es: ");Console.WriteLine("LUNES"); break;case 2:Console.Write(">>>El Día es: ");Console.WriteLine("MARTES"); break;case 3:Console.Write(">>>El Día es: ");Console.WriteLine("MIERCOLES"); break;case 4:Console.Write(">>>El Día es: ");Console.WriteLine("JUEVES"); break;case 5:Console.Write(">>>El Día es: ");Console.WriteLine("VIERNES"); break;case 6:Console.Write(">>>El Día es: ");Console.WriteLine("SABADO"); break; }if (día > 6) {Console.WriteLine("--->EL NÚMERO INGRESADO NO ES VALIDO..........");
}Console.WriteLine("");Console.WriteLine("*************************************");Console.WriteLine("DESEA CONTINUAR>> SI--[1]/ NO--[0]");op = int.Parse(Console.ReadLine());Console.Clear(); } while (op == 1); } }}
![Page 46: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/46.jpg)
37.Una tienda de ropa ha establecido los porcentajes de descuento, que se indican a continuación, de acuerdo a ciertas características del comprador: nacionalidad (1,2) y del producto que compra: exo(H,M), talla (Niño, Joven, Adulto). Se sabe que una persona puede comprar varios productos por lo que se desea mostrar como resultados de lo siguiente: nombre del comprador, cantidad de productos comprados, importe comprado, importe descontado y el importe a pagar; para lo cual se deben ingresar los datos que sean necesarios. El proceso para la compra de una persona termina cuando al ingresar el nombre del comprador se presiona ENTER.
NiñoSexo
JovenSexo
AdultoSexo
Nacionalidad H M H M H M
1 5 4 7 9 10 12
2 4 5 9 7 12 10
CODIGO C#
using System;using System.Collections.Generic;using System.Text;
namespace ConsoleApplication55{classProgram {staticvoid Main(string[] args){Console.ForegroundColor = ConsoleColor.Yellow;Console.WriteLine("*** TIENDA DE ROPAS ***");Console.WriteLine("");Console.ForegroundColor = ConsoleColor.White;double monto;int origen;int talla;int sexo;string nombre;constdouble pdNHN = 0.05;//descuento Nacional Hombre Niño constdouble pdNHJ = 0.07;//descuento Nacional Hombre Joven constdouble pdNHA = 0.10;//descuento Nacional Hombre Adulto constdouble pdNMN = 0.04;//descuento Nacional Mujer Niña constdouble pdNMJ = 0.09;//descuento Nacional Mujer Jovenconstdouble pdNMA = 0.12;//descuento Nacional Mujer Adulta
![Page 47: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/47.jpg)
constdouble pdIHN = 0.04;//descuento Importado Hombre Niño constdouble pdIHJ = 0.09;//descuento Importado Hombre Jovenconstdouble pdIHA = 0.12;//descuento Importado Hombre Adulto constdouble pdIMN = 0.05;//descuento Importado Mujer Niña constdouble pdIMJ = 0.07;//descuento Importado Mujer Jovenconstdouble pdIMA = 0.10;//descuento Importado Mujer Adulta double Dscto = 0;Console.WriteLine("-------------------------------------------------");Console.Write("Ingrese Nombre del Comprador: "); nombre = Console.ReadLine();Console.WriteLine("-------------------------------------------------");Console.Write("Introduce el Monto de la Compra: ");monto = double.Parse(Console.ReadLine());Console.WriteLine("-------------------------------------------------");Console.WriteLine("Selecciona el Origen:\n1.Nacional\n2.Importado");Console.Write("Su opción: "); origen = int.Parse(Console.ReadLine());Console.WriteLine("-------------------------------------------------");Console.WriteLine("Introduce Sexo:\n1.Hombre\n2.Mujer");Console.Write("Su opción: "); sexo = int.Parse(Console.ReadLine());Console.WriteLine("-------------------------------------------------");Console.WriteLine("Introduce Talla:\n1.N\n2.J\n3.A");Console.Write("Su opción: "); talla = int.Parse(Console.ReadLine());Console.WriteLine("-------------------------------------------------");switch (origen) {case 1:switch (sexo) {case 1:switch (talla) {case 1: Dscto = monto * pdNHN;break;case 2: Dscto = monto * pdNHJ;break;case 3: Dscto = monto * pdNHA;break; }break;case 2:switch (talla)
![Page 48: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/48.jpg)
{case 1: Dscto = monto * pdNMN;break;case 2: Dscto = monto * pdNMJ;break;case 3: Dscto = monto * pdNMA;break; }break; }break;case 2:switch (sexo) {case 1:switch (talla) {case 1: Dscto = monto * pdIHN;break;case 2: Dscto = monto * pdIHJ;break;case 3: Dscto = monto * pdIHA;break; }break;case 2:switch (talla) {case 1: Dscto = monto * pdIMN;break;case 2: Dscto = monto * pdIMJ;break;case 3: Dscto = monto * pdIMA;break;}break; }break; }
![Page 49: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/49.jpg)
Console.WriteLine("");Console.WriteLine("<<<RESPUESTA>>>");Console.WriteLine("");Console.Write(">>Nombre del Comprador: ");Console.WriteLine(nombre);Console.WriteLine("------------------------");Console.Write(">>Monto Comprado: ");Console.WriteLine(monto);Console.WriteLine("------------------------");Console.Write(">>Descuento: ");Console.WriteLine(Dscto);Console.WriteLine("------------------------");Console.Write(">>Monto a Pagar: ");Console.WriteLine(monto - Dscto);Console.WriteLine("------------------------");Console.ReadLine(); } }}
38.Mostrar los dígitos de un número entero positivo en forma invertida. Por ejemplo: 1234se mostrara como 4321.Entrada: número entero positivo: nument;Salida: número invertido
PSEUDO CODIGO:
Inicio
Ingresar número entero: nument;
MIENTRAS (nument > 0) HACER
inicio
digito = residuo del nument / 10; //ultimo digito//
nument = entero del nument / 10; //descartaultimo término//
El digito (dig);
fin del MIENTRAS
![Page 50: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/50.jpg)
Fin
CODIGO C#
using System;using System.Collections.Generic;using System.Text;
namespace ConsoleApplication59{classProgram {staticvoid Main(string[] args){Console.ForegroundColor = ConsoleColor.Yellow;Console.WriteLine("*** NÚMERO INVERTIDO ***");Console.WriteLine("");Console.ForegroundColor = ConsoleColor.White;int nument;//NUMERO ENTEROint dig;//DIGITOSint op;do {Console.Write("Ingresar un Número: ");nument = int.Parse(Console.ReadLine());Console.WriteLine("El Número Invertido es: ");while (nument > 0) { dig = nument % 10; nument = nument / 10;Console.Write(dig); }Console.WriteLine("");Console.WriteLine("----------------------------------");Console.WriteLine("DESEA CONTINUAR.... SI(1), NO(2)");Console.Write("Su opción: ");op = int.Parse(Console.ReadLine());Console.Clear(); }while (op == 1); } }}
![Page 51: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/51.jpg)
39.Determinar la cantidad de dígitos que tiene un número entero y además mostrar la suma de los dígitos pares e impares. Considerar al cero (0) como dígito par.
Entrada: número entero: num;
Salida: cantidad de dígitos: contdig;
suma de dígitos pares: sumapar;
suma de dígitos impares: sumaimpar;
PSEUDO CODIGOS:
Inicio
Ingrese un número entero: num;
Inicializar elementos:
contdig = 0;//contador de dígitos//
sumapar = 0;//suma de dígitos pares//
sumaimpar = 0;//suma de dígitos impares//
MIENTRAS (num > 0) HACER
inicio
dig = residuo num/10;//ultimo dígito//
SI (dig = par) ENTONCES
sumapar = sumapar + dig;
SINO
sumaimpar = sumaimpar + dig;
fin del SI
contdig = contdig + 1;
num = entero del num / 10;//descarta últ. dígito//
fin del MIENTRAS
El número de dígitos (contdig) es:...
La suma de dígitos pares (sumapar) es:...
![Page 52: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/52.jpg)
La suma de dígitos impares (sumaimpar) es:...Fin
CODIGO C#
using System;using System.Collections.Generic;using System.Text;
namespace ConsoleApplication60{classProgram {staticvoid Main(string[] args){Console.ForegroundColor = ConsoleColor.Yellow;Console.WriteLine("*** CANTIDAD DE DÍGITOS QUE TIENE UN NÚMERO ENTERO ***");Console.WriteLine("");Console.ForegroundColor = ConsoleColor.White;int num;double contdig = 0;//contador de dígitos//double sumapar = 0;//suma de dígitos pares//double sumaimpar = 0;//suma de dígitos impares//double dig;
Console.Write("Ingresar el Número Entero que desee: ");num = int.Parse(Console.ReadLine());
while (num > 0) { dig = num % 10;
if (dig % 2 == 0){ sumapar = sumapar + dig;
}else { sumaimpar = sumaimpar + dig;}
contdig = contdig + 1; num = num / 10; }Console.WriteLine("");Console.WriteLine("--RESPUESTA--");Console.WriteLine("---------------------------------");Console.WriteLine(">>El Número de Digitos es: {0}", contdig);
![Page 53: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/53.jpg)
Console.WriteLine("---------------------------------");Console.WriteLine(">>La Suma de Digitos Pares: {0}", sumapar);//osea numeros pares se sumanConsole.WriteLine("---------------------------------");Console.WriteLine(">>La Suma de Digitos Impares: {0}", sumaimpar);//numeros imapres se sumanConsole.WriteLine("---------------------------------");Console.ReadLine(); } }}40.Convertir un número entero en base 10 a una base menor que 10, mostrándo el resultado en
pantalla.
Entrada: un número en base 10: num;
base menor que 10: bas;
Salida: número convertido a la base requerida;
PSEUDO CODIGO:
Inicio
Ingresar número entero: num;
Ingrese base menor que 10: bas;
Asegurar que la base sea menor que 10:
MIENTRAS (bas < 10) HACER
ingrese bas;
conversión del número a la base ingresada:
MIENTRAS (num > 0) HACER
inicio
residuo = residuo del num / bas;
num = entero del num / bas;
El residuo escrito de derecha a izquierda;
fin del MIENTRAS
fin del MIENTRAS
Fin
![Page 54: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/54.jpg)
CODIGO C#
using System;using System.Collections.Generic;using System.Text;
namespace ConsoleApplication61{classProgram {staticvoid Main(string[] args){Console.ForegroundColor = ConsoleColor.Yellow;Console.WriteLine("*** CONVERCIÓN DE UN NÚMERO EN BASE 10 A UNA MENOR ***");Console.WriteLine("");Console.ForegroundColor = ConsoleColor.White;int num;byte bas;int residuo;int op =1;do {Console.Write("Ingresar Número Entero: ");num = int.Parse(Console.ReadLine());if (num < 0) {Console.WriteLine(" --ERROR--");Console.ReadLine(); }else{Console.Write("Ingresar Base Menor a 10: "); bas = byte.Parse(Console.ReadLine());if ((bas == 0)||(bas == 1)||(bas >= 10))//lo igualamos a 10 xq la base debe ser menor {Console.WriteLine(" --ERROR--");Console.ReadLine(); }
![Page 55: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/55.jpg)
else {//La base debe ser menor que 10//while (bas < 10) {Console.WriteLine("");Console.Write(">>El Resultado es: ");while (num > 0) { residuo = num % bas; num = num / bas;Console.Write(residuo);}break; }Console.WriteLine("");Console.WriteLine("----------------------------------------");Console.WriteLine("DESEA CONTINUAR CON EL CAMBIO DE BASE:");Console.WriteLine("(1)............SI");Console.WriteLine("(2)............NO");Console.Write("Su opción: "); op = int.Parse(Console.ReadLine());Console.Clear(); } } }while (op == 1); } }}
![Page 56: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/56.jpg)
41.Convertir un número entero de base 10 a base 16; es decir, representarlo en el sistema Hexagesimal, almacenando el resultado de la conversión en una cadena, para luego mostrarla. Sugerencias: aplicar metodo de divisiones sucesivas.
Entradas: número decimal: num;
Salida: número en base 16: hex;
PSEUDO CODIGOS:
Definir constantes:
Nulo = ''; //cadena vacia//
Inicio
Ingresar número decimal: num;
Determinar su equivalente en base 16:
hex = nulo;
MIENTRAS (num > 0) HACER
inicio
residuo = residuo de num / 16;
CASO (residuo) SEA
10: digito = 'A';
11: digito = 'B';
12: digito = 'C';
13: digito = 'D';
14: digito = 'E';
15: digito = 'F';
SINO
residuo menor a 10:
digito = caracter del residuo;
fin del CASO
![Page 57: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/57.jpg)
hex = digito + hex;//forma la cadena//
num = entero de num / 16;
fin del MIENTRAS
El número en base 16 (hex) es:...
Fin
CODIGO C#
using System;using System.Collections.Generic;using System.Text;
namespace ConsoleApplication62{classProgram {staticvoid Main(string[] args){Console.ForegroundColor = ConsoleColor.Yellow;Console.WriteLine("*** CONVERTIR NÚMERO DE BASE 10 A BASE 16 ***");Console.WriteLine("");Console.ForegroundColor = ConsoleColor.White;int num, op;string hex;int residuo;conststring nulo = "";int digito;
//inicializar la cadena hexadecimal con nulo//do { hex = nulo;Console.Write("Ingresar Número Decimal: ");num = int.Parse(Console.ReadLine());
![Page 58: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/58.jpg)
do { residuo = num % 16;switch (residuo) {case 10: digito = 'A'; break;case 11: digito = 'B'; break;case 12: digito = 'C'; break;case 13: digito = 'D'; break;case 14: digito = 'E'; break;case 15: digito = 'F'; break;default: digito = Math.Sign(residuo + 48); break; } hex = digito + hex; num = num / 16; }while (num > 0);//escribir resultado//Console.WriteLine("");Console.Write(">>En Hexadecimal es: ");Console.WriteLine(hex);Console.WriteLine("----------------------");Console.WriteLine("DESEA CONTINUAR??");Console.WriteLine("(1).....Si");Console.WriteLine("(2).....No");Console.Write("Su opción: "); op = int.Parse(Console.ReadLine());Console.Clear(); }while (op == 1);
} }}
42.Determinar e número de veces en que se logra adivinar el valor de un número generado al azar que está comprendido entre 0 y 100. Orientar el siguiente intento mostrando un mensaje de ALTO o BAJO, según corresponda. Se obtiene un número al azar mediante una función determinada RANDOM.
Entrada: número: num;
Salida: número de intentos: intentos;
PSEUDO CODIGOS:
Inicio
![Page 59: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/59.jpg)
Inicializar contador de número de intentos:
intentos = 1;
Generar un número al azar:
azar = Random;
Ingrese un número: num;
Determinar número de intentos para adivinar:
MIENTRAS (num != azar) HACER
inicio
intentos = intentos + 1;
SI (num < azar) ENTONCES
escribir: 'BAJO'
SINO
escribir: 'ALTO'
fin del SI
Ingrese un número: num;
fin del MIENTRAS
El número de intentos es:...
Fin
CODIGO C#
using System;using System.Collections.Generic;using System.Text;namespace ConsoleApplication4{classProgram {staticvoid Main(string[] args) {
![Page 60: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/60.jpg)
int intentos = 1;int num;int azar;azar = Random;//Inicializar generador de números aleatorios//Console.WriteLine("Ingrese su número");num = int.Parse(Console.ReadLine());while (num != azar) { intentos = intentos + 1;if (num > azar) {Console.WriteLine("BAJO");Console.ReadLine(); }else{Console.WriteLine("ALTO");Console.ReadLine(); }Console.WriteLine("Ingrese su número");num = int.Parse(Console.ReadLine());}Console.WriteLine("Adivino en intentos son: {0}", intentos);Console.ReadLine(); } }}
43.Determinar el cociente entero de la divisón de 2 números naturales por el método de restas sucesivas hasta que la última diferencia sea menor al divisor.
El siguiente ejemplo ilustra el fundamento del metodo.
![Page 61: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/61.jpg)
Suponga que A = 1273 y B = 325;
1273 - 325 = 948 // primera resta//
948 - 325 = 623 //segunda resta//
623 - 325 = 298 //tercera resta//
Ya no se realiza una cuarta resta porque la última diferencia (298) es menor que el divisor (325).
Por lo tanto, el número de restas realizadas determina el cociente entero, que este ejemplo seía 3.
Entrada: 2 números enteros: A, B;
Salida: cocientes enteros: numdif;
PSEUDO CODIGOS:
Inicio
Ingresar valor al primer número: A;
Ingresar valor al segundo número: B;
Inicializar elementos:
div = A;//identifica el dividendo //
numdif = 0;//número de diferencias//
Determinar cociente entero:
MIENTRAS (div >= B) HACER
inicio
div = div - B;
numdif = numdif + 1;
fin del MIENTRAS
El cociente entero (numdif) es:...
Fin
CODIGO C#
using System;
![Page 62: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/62.jpg)
using System.Collections.Generic;using System.Text;
namespace ConsoleApplication63{classProgram {staticvoid Main(string[] args){Console.ForegroundColor = ConsoleColor.Yellow;Console.WriteLine("*** COCIENTE ENTERO DE LA DIVISIÓN DE DOS NÚMEROS ***");Console.WriteLine("");Console.ForegroundColor = ConsoleColor.White;long A;long B;int numdif = 0;//numero de diferenciaslong div;int op;do {Console.Write("Ingrese valor a A: ");A = long.Parse(Console.ReadLine());Console.Write("Ingrese valor a B: ");B = long.Parse(Console.ReadLine());
div = A;
while (div >= B) { div = div - B; numdif = numdif + 1;}Console.WriteLine("");Console.WriteLine("Cociente Entero: {0}", numdif);//la cantidad de las restas utilizadasConsole.WriteLine("--------------------------------");Console.WriteLine("Desea Continuar con la División");Console.WriteLine("(1).........Si");Console.WriteLine("(cualquier número)........Más tarde");op = int.Parse(Console.ReadLine());Console.Clear(); }while (op == 1); } }}
![Page 63: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/63.jpg)
44.Mostrar los N primeros términos de la siguiente serie, indicando además, por separado, la suma de los términos que ocupan posiciones pares, impares y de ambos:
0, 3, 8, 15, 24,....
Entrada: número de términos: numter;
Salida: suma de los términos en posición par: sumapares;
suma de los términos en posición impar: sumaimpares;
suma de todos los términos: sumatotal;
PSEUDO CODIGO:
Inicio
Ingrese número de términos: numter;
Inicializar elementos:
sumaimpares = 0;
sumapares = 0;
sumatotal = 0;
contador = 1;
término = 0;
incremento = 3;
MIENTRAS (contador <= numter) HACER
inicio
escribir término
sumatotal = sumatotal + termino;
SI (contador % 2 == 0) ENTONCES
sumapares = sumapares + termino;
SINO
sumapares = sumapares + termino;
![Page 64: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/64.jpg)
fin del SI
termino = termino + incremento;
incremento = incremento + 2;
contador = contador + 1;
fin del MIENTRAS
La suma de los términos en posición par (sumapares) es:...
La suma de los términos en posición impar (sumaimpares) es:...
La suma de todos los términos (sumatotal) es:...
Fin
CODIGO C#
using System;using System.Collections.Generic;using System.Text;namespace ConsoleApplication1{classProgram {staticvoid Main(string[] args) {int numter;int sumapares;int sumaimpares;int sumatotal;int contador;int termino;
![Page 65: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/65.jpg)
int incremento;Console.WriteLine("Ingrese número de términos"); numter = int.Parse(Console.ReadLine()); sumaimpares = 0; sumapares = 0; sumatotal = 0; contador = 1; termino = 0; incremento = 3;while (contador <= numter) {Console.WriteLine("Escribir término"); termino = int.Parse(Console.ReadLine());
sumatotal = sumatotal + termino;if (contador % 2 == 0)//posición par// { sumapares = sumapares + termino; }else { sumaimpares = sumaimpares + termino; termino = termino + incremento; incremento = incremento + 2; contador = contador + 1; } }Console.WriteLine("La suma de terminos en posición impar:{0}", sumaimpares);Console.WriteLine("La suma de terminos en posición par:{0}", sumapares);Console.WriteLine("La suma de todos los terminos:{0}", sumatotal);Console.ReadLine(); } }}
45.Dos automóviles parten simultáneamente uno de Lima y el otr de Huacho cn destinos a Trujillo, con velocidades promedios de 120 Km/h y 66 Km/h respectivamente. Se pide mostrar la distancia recorrida por cada automóvil con respecto a Lima, cada minuto hasta que el automóvil con mayor velocidad pase al otro. Considerar las siguientes distancias en toda la ruta:
![Page 66: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/66.jpg)
Lima Huacho Trujillo
130 Km
|-----------------|
570 Km
|----------------------------------------|
Entrada: ninguna;
Salida: tiempo, distancia del que parte de Lima(distlima);
distancia del que parte de huacho(disthua);
PSEUDO CODIGO:
veloc1 = 120;//auto que parte de Lima, Km/h
veloc2 = 66;//auto que parte de Huacho, Km/h
recorrido = 570;//distancia entre Lima y Trujillo, Km
interv = 1;//intervalo de tiempo, min
Inicio
Inicializar elementos:
distlima = 0;
dishua = 130;
time = 0;
Mostrar distancias recorridas:
MIENTRAS (distlima <= dishua) HACER
inicio
escribir:
distancia a lima: distlima;
distancia a huacho: disthua;
tiempo: time;
![Page 67: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/67.jpg)
time = time + (interv / 60);// en horas//
distlima = distlima + veloc1 * time;
dishua = dishua + veloc2 * time;
fin del MIENTRAS
La distancia a lima (distlima) es:...
La distancia a huacho (dishua) es:...
El tiempo (time) es:...
Fin
CODIGO C#
using System;using System.Collections.Generic;using System.Text;
namespace ConsoleApplication68{classProgram {staticvoid Main(string[] args){Console.ForegroundColor = ConsoleColor.Yellow;Console.WriteLine("*** DISTANCIA DE LIMA - HUACHO - TRUJILLO ***");Console.WriteLine("");Console.ForegroundColor = ConsoleColor.White;int time;int distlima;int dishua;constint veloc1 = 120;constint veloc2 = 66;constint recorrido = 570;constint interv = 1;int op;do
![Page 68: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/68.jpg)
{ distlima = 0; dishua = 130; time = 0;
while (distlima <= dishua){Console.Write("Distancia a Lima: "); distlima = int.Parse(Console.ReadLine());Console.Write("Distancia a Huacho: "); dishua = int.Parse(Console.ReadLine());Console.Write("Tiempo: ");time = int.Parse(Console.ReadLine()); time = time + (interv / 60); distlima = distlima + veloc1 * time;dishua = dishua + veloc2 * time; }Console.WriteLine("La Distancia a Lima:{0}", distlima);Console.WriteLine("La Distancia a Huacho:{0}", dishua);Console.WriteLine("El Tiempo fue de:{0} horas", time * 60);Console.WriteLine("----------------------------");Console.WriteLine("Desea continuar");Console.WriteLine("1------->siiiii");Console.WriteLine("2------->nooooo"); op = int.Parse(Console.ReadLine());Console.Clear(); }while (op == 1); } }}
46.Evaluará el resultado de la siguiente serie para los N primeros términos donde N no debe ser mayor que 15:
1 + x/2 – x2/4 + x3/8 – x4/16 + x5/32 - .....
Entradas: número de términos: numterm;
valor de x: x;
Salida: resultados parciales: numerador, denominador(denom),suma;
resultado final: suma;
![Page 69: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/69.jpg)
PSEUDO CODIGO:
Inicio
Ingresar número de términos: numterm;
Ingresar valor de x: x;
Inicializar elementos:
suma = 0;
cont = 1;
numerador = 1;
denom = 1;
Acumular sumatoria de términos:
MIENTRAS (cont <= numterm) HACER
inicio
suma = suma + (numerador / denom);
escribir:
Contador: cont;
Numerador: numerador;
Denominador: denom;
numerador = numerador * x * (-1);
denom = denom * 2;
cont = cont + 1;
fn del MIENTRAS
La suma es:....
Fin
![Page 70: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/70.jpg)
CODIGO C#
using System;using System.Collections.Generic;using System.Text;
namespace ConsoleApplication70{classProgram {staticvoid Main(string[] args){Console.ForegroundColor = ConsoleColor.Yellow;Console.WriteLine("*** EVALUAR EL RESULTADO DE LA SIGUIENTE SERIE ***");Console.WriteLine("");Console.ForegroundColor = ConsoleColor.White;double numterm;double x;double numerador;double denom;double suma;double cont;//ingresamos datos//Console.Write("Ingresar Numero de Términos: ");numterm = double.Parse(Console.ReadLine());if (numterm > 15) {Console.WriteLine("***ERROR***");Console.ReadLine();}else {Console.Write("Ingresar Valor de 'X': ");x = double.Parse(Console.ReadLine());
suma = 0; cont = 1; numerador = 1; denom = 1;
while (cont <= numterm){ suma = suma + (numerador / denom);Console.ForegroundColor = ConsoleColor.Green;Console.WriteLine("===================================");Console.ForegroundColor = ConsoleColor.White;Console.WriteLine(">>Contador:{0}", cont);Console.WriteLine("------------------------------");
![Page 71: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/71.jpg)
Console.WriteLine(">>Numerador:{0}", numerador);Console.WriteLine("------------------------------");Console.WriteLine(">>Denominador:{0}", denom);Console.WriteLine("------------------------------"); numerador = numerador * x * (-1);denom = denom * 2; cont = cont + 1; }Console.WriteLine("");Console.WriteLine("");Console.Write(">>La Suma de los {0} Primeros Términos es:::", numterm);Console.WriteLine(suma);Console.WriteLine("---------------------------------------------------");Console.ReadLine(); } } }}
47.Una farmacia ha clasificado sus productos de la siguiente manera:
TIPO CLASE
G analgésicos
R antibióticos
P antipiréticos
T otros
Cada clase puede ser de procedencia Nacional o Importada. En un proceso se ingresan los siguientes datos: procedencia (N, I, ENTER), tipo de operación (Entrada, Salida), tipo de producto (G, R, P, T), cantidad. El proceso termina cuando al ingresar la procedencia se presione ENTER debiendo mostrar a continuación el stock de cada tipo de producto de acuerdo a su procedencia, asumiendo que el proceso empieza con stock 0 para todos los tipos de producto.
Entrada: procedencia, tipo de producto (tipo_pr), tipo de operación (tipo_op), cantidad;
Salida: stock de analgésicos Nacionales (stockGN), stock de analgésicos Importado (stockGI); stock de antibióticos Nacionales (stockRN), stock de antibióticos Importado (stockRI); stock de
![Page 72: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/72.jpg)
antipiréticos Nacionales (stockPN), stock de antipiréticos Importado (stockPI); stock de otros Nacionales (stockTN), stock de otros Importado (stockTI),
PSEUDO CODIGO:
Inicio
Inicializar stock por producto y procedencia:
stockGN = 0;//producto G nacional//
stockGI = 0;//producto G importado//
stockRN = 0;//producto R nacional//
stockRI = 0;//producto R importado//
stockPN = 0;//producto P nacional//
stockPI = 0;//producto P nacional//
stockTN = 0;//producto T nacional//
stockTI = 0;//producto T importado//
Inicializar fin del proceso repetitivo:
fin = falso;
Proceso repetitivo:
MIENTRAS (no sea fin) HACER
inicio
ingrese procedencia <N,I>: procedencia;
SI (procedencia = enter) ENTONCES
fin = verdad;
SINO
inicio
![Page 73: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/73.jpg)
ingrese tipo de producto <G,R,P,T>: tipo_pr;
ingrese tipo de operación <E,S>: tipo_op;
ingrese cantidad: cantidad;
actualizar stock:
CASO (tipo_pr) SEA
'G' : CASO (procedencia) SEA
'N' : CASO (tipo_op) SEA
'E': stockGN = stockGN + 1;//incremento//
'S': stockGN = stockGN - 1;//disminuye//
fin del CASO
'I' : CASO (tipo_op) SEA
'E': stockGI = stockGI + 1;//incremento//
'S': stockGI = stockGI - 1;//disminuye//
fin del CASO
fin del CASO
'R' : CASO (procedencia) SEA
'N' : CASO (tipo_op) SEA
'E': stockRN = stockRN + 1;//incremento//
'S': stockRN = stockRN - 1;//disminuye//
fin del CASO
'I' : CASO (tipo_op) SEA
'E': stockRI = stockRI + 1;//incremento//
'S': stockRI = stockRI - 1;//disminuye//
fin del CASO
fin del CASO
![Page 74: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/74.jpg)
'P' : CASO (procedencia) SEA
'N' : CASO (tipo_op) SEA
'E': stockPN = stockPN + 1;//incremento//
'S': stockPN = stockPN - 1;//disminuye//
fin del CASO
'I' : CASO (tipo_op) SEA
'E': stockPI = stockPI + 1;//incremento//
'S': stockPI = stockPI - 1;//disminuye//
fin del CASO
fin del CASO
'T' :CASO (procedencia) SEA
'N' : CASO (tipo_op) SEA
'E': stockTN = stockTN + 1;//incremento//
'S': stockTN = stockTN - 1;//disminuye//
fin del CASO
'I' : CASO (tipo_op) SEA
'E': stockTI = stockTI + 1;//incremento//
'S': stockTI = stockTI - 1;//disminuye//
fin del CASO
fin del CASO
fin del CASO
fin
fin del SI
fin del MIENTRAS
![Page 75: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/75.jpg)
Mostramos resultados:
Procedencia (procedencia):...
ANALGESICOS NACIONAL (stockGN):...
ANALGESICOS IMPORTADO (stockGI):...
ANTIPIRETICOS NACIONAL (stockPN):...
ANTIPIRETICOS IMPORTADOS (stockPI):...
ANTIBIOTICOS NACIONAL (stockRN):...
ANTIBIOTICOS IMPORTADO (stockRI):...
OTROS NACIONAL (stockTN):...
OTROS IMPORTADOS (stockTI):...
Fin
CODIGO C#
using System;using System.Collections.Generic;using System.Text;
namespace ConsoleApplication71{classProgram {staticvoid Main(string[] args) {Console.ForegroundColor = ConsoleColor.Yellow;Console.WriteLine("*** FARMACIA ***");Console.WriteLine("");Console.ForegroundColor = ConsoleColor.White;int op;char procedencia;char tipo_pr;
![Page 76: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/76.jpg)
char tipo_op;int cantidad;double stockGN, stockGI, stockRN, stockRI, stockPN, stockPI, stockTN, stockTI;bool fin;constdouble enter = 13;//inicializar stock por producto y procedencia// stockGN = 0;//producto G nacional// stockGI = 0;//producto G importado// stockRN = 0;//producto R nacional// stockRI = 0;//producto R importado// stockPN = 0;//producto P nacional// stockPI = 0;//producto P nacional// stockTN = 0;//producto T nacional// stockTI = 0;//producto T importado////inicializar fin del proceso repetitivo// fin = false;do {Console.WriteLine("Ingrese Procedencia:<N,I>");Console.Write("Opción: "); procedencia = char.Parse(Console.ReadLine());Console.WriteLine("------------------------------");if (procedencia == enter) { fin = true; }else
Console.WriteLine("Ingrese Tipo de Producto:<G,R,P,T>");Console.Write("Opción: "); tipo_pr = char.Parse(Console.ReadLine());Console.WriteLine("----------------------------------------");Console.WriteLine("Ingrese Tipo de Operacion:<E,S>");Console.Write("Opción: "); tipo_op = char.Parse(Console.ReadLine());Console.WriteLine("----------------------------------------");Console.Write("Ingrese Cantidad: "); cantidad = int.Parse(Console.ReadLine());Console.WriteLine("----------------------------------------");//actualizar stock//switch (tipo_pr) {case'G':switch (procedencia) {case'N':switch (tipo_op) {
![Page 77: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/77.jpg)
case'E': stockGN = stockGN + 1; break;//incremento//case'S': stockGN = stockGN - 1; break;//disminuye// }break;case'I':switch (tipo_op) {case'E': stockGI = stockGI + 1; break;//incremento//case'S': stockGI = stockGI - 1; break;//disminuye// }break; }break;
case'R':switch (procedencia) {case'N':switch (tipo_op) {case'E': stockRN = stockRN + 1; break;//incremento//case'S': stockRN = stockRN - 1; break;//disminuye// }break;case'I':switch (tipo_op) {case'E': stockRI = stockRI + 1; break;//incremento//case'S': stockRI = stockRI - 1; break;//disminuye// }break; }break;
case'P':switch (procedencia) {case'N':switch (tipo_op) {case'E': stockPN = stockPN + 1; break;//incremento//case'S': stockPN = stockPN - 1; break;//disminuye// }break;case'I':switch (tipo_op) {case'E': stockPI = stockPI + 1; break;//incremento//
![Page 78: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/78.jpg)
case'S': stockPI = stockPI - 1; break;//disminuye// }break; }break;
case'T':switch (procedencia) {case'N':switch (tipo_op) {case'E': stockTN = stockTN + 1; break;//incremento//case'S': stockTN = stockTN - 1; break;//disminuye// }break;case'I': switch (tipo_op) {case'E': stockTI = stockTI + 1; break;//incremento//case'S': stockTI = stockTI - 1; break;//disminuye//}break; }break; }Console.WriteLine("Desea continuar?? Si(1),No(otro)");Console.Write("Su opción: "); op = int.Parse(Console.ReadLine()); }while (op != 1);//mostrar resultados//Console.WriteLine(">>PROCEDENCIA: {0}", procedencia);Console.WriteLine("----------------------------------------");Console.WriteLine(">>ANALGESICOS NACIONAL: {0}", stockGN);Console.WriteLine("----------------------------------------");Console.WriteLine(">>ANALGESICOS IMPORTADO: {0}", stockGI);Console.WriteLine("----------------------------------------");Console.WriteLine(">>ANTIPIRETICOS NACIONAL: {0} ", stockPN);Console.WriteLine("----------------------------------------");Console.WriteLine(">>ANTIPIRETICOS IMPORTADOS: {0}", stockPI);Console.WriteLine("----------------------------------------");Console.WriteLine(">>ANTIBIOTICOS NACIONAL: {0}", stockRN);Console.WriteLine("----------------------------------------");Console.WriteLine(">>ANTIBIOTICOS IMPORTADO: {0}", stockRI);Console.WriteLine("----------------------------------------");Console.WriteLine(">>OTROS NACIONAL: {0}", stockTN);Console.WriteLine("----------------------------------------");Console.WriteLine(">>OTROS IMPORTADOS: {0}", stockTI);
![Page 79: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/79.jpg)
Console.WriteLine("----------------------------------------");Console.ReadLine(); } }}
48.Un estudiante ha registrado 10 instituciones que dictan un curso de computación de su interés, a diferentes costos. Desea determinar el costo promedio del curso, el costo más elevado, el costo más bajo y el nombre de la institución que ofrece el costo más bajo. Se sabe además que ningún costo llega a tener 4 cifras.
ENTRADA: nombre del instituto: nombre;
Costo del curso: costo;
SALIDA: costo promedio: costo_prom;
Costo mayor: costo_may;
Costo menor: costo_men;
Nombre de quien tiene costo menor: nombre_costomen
PESUDO CODIGOS:
Definir constantes
NumIns = 10;
Maxcosto = 999;
Inicio
Inicializar elementos
Contador = 1;
Suma = 0
Costo_may = 0
Costo_men = Maxcosto
![Page 80: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/80.jpg)
REPETIR
Ingresarmos nombre y costo;
Acumulador de costo
Suma = Suma + costo;
Determinar el costo mayor
SI costo > costo_may ENTONCES
Costo_may = costo
Fin del SI
Determinar el costo menor e identificar su nombre
SI costo < costo_men ENTONCES
Inicio
Costo_men = costo;
Nombre_costomen = nombre;
Fin del SI
Incrementamos contador
HASTA contador > NumInst
Calcular costo promedio
Costo_prom = suma / NumInst
Mostrar resultado
Escribir costo_prom, costo_may, costo_men, nombre_costomen
Fin
![Page 81: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/81.jpg)
CODIGO C#
using System;using System.Collections.Generic;using System.Linq;
namespace ConsoleApplication73{classProgram {staticvoid Main(string[] args) {Console.ForegroundColor = ConsoleColor.Yellow;Console.WriteLine("*** INSTITUCIONES ***");Console.WriteLine("");Console.ForegroundColor = ConsoleColor.White;
constint NumInst = 10;constint Maxcosto = 999;
string nombre, nombre_costomen;double costo, suma, costo_prom = 1, costo_may, costo_men;int contador, cantidad; contador = 1;//contador de instituciones// suma = 0;//acumulador de costos// costo_may = 0;//supuesto falso del mayor costo// costo_men = Maxcosto;//supuesto falso del menor costo//
// Console.Write("Instituto Nroº: ");//Console.WriteLine(contador);Console.Write("INGRESE CANTIDAD DE INSTITUTO: "); cantidad = int.Parse(Console.ReadLine());if (cantidad > NumInst) {Console.WriteLine("");Console.WriteLine("-----------------ERROR----------------------");Console.ReadLine(); }else {for (int i = 1; i <= cantidad; i++){Console.Write(">>Instituto Nroº: ");Console.WriteLine(contador);Console.Write(" **Nombre del Instituto: ");Console.ForegroundColor = ConsoleColor.Yellow; nombre = Console.ReadLine();
![Page 82: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/82.jpg)
Console.ForegroundColor = ConsoleColor.White;Console.Write(" **Costo del Curso: "); costo = double.Parse(Console.ReadLine());//acumulador de costos suma = suma + costo;//determinar el costo mayor//if (costo > costo_may) { costo_may = costo; }//determinar el costo menor e identificar su nombre//if (costo < costo_men) { costo_men = costo; nombre_costomen = nombre; }//incrementa contador// contador = contador + 1;do//lo declaro con DO para que pueda leer el promedio {//calculamos costo promedio// costo_prom = suma / NumInst; }while (contador > NumInst);
//Console.WriteLine("NOMBRE DE LA EMPRESA: {0}", nombre);// Console.WriteLine(nombre_costomen); }
Console.WriteLine("");Console.WriteLine("");Console.WriteLine("---RESPUESTAS---");Console.WriteLine("");Console.WriteLine("-------------------------------");Console.WriteLine(">>COSTO PROMEDIO: {0}", costo_prom);Console.WriteLine("-------------------------------");Console.WriteLine(">>COSTO MAYOR: {0}", costo_may);Console.WriteLine("-------------------------------");Console.WriteLine(">>COSTO MENOR: {0}", costo_men);Console.WriteLine("-------------------------------");// Console.WriteLine(nombre_costomen);Console.ReadLine(); } } }}
![Page 83: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/83.jpg)
49.Ingresar un numero en base B, se debe validar la escritura del numero en función de la base. Por ejemplo: si la base e 2, solo podrá ingresar digitos 0 y 1. Considere base de 2 a 16. Sugerencia: capture los digitos como caracteres y terminar el ingreso cuando se presione ENTER.
PSEUDO CODIGO:
Inicio
Ingresar la base menor a 16 y mayor a 2
REPETIR
Ingresamos base
HASTA que (la base se encuentre entre 2 a 16)
Ingresarmos digitos de acuerdo a la base
REPETIR
REPETIR
Ingresamos digito como carácter: digitoIng
SI digitoIng comprende de ‘A’ hasta ‘F’ ENTONCES
digitoNum = digitoIng – 55
SINO
digitoNum = digitoIng – 48
fin del SI
HASTA (0 < digitoNum < base -1) o (digitoIng sea ‘ENTER’)
SI digitoIng ¡= ‘ENTER’ ENTONCES
Escribimos digitoInt
Fin del SI
HASTA digitoInt == ‘ENTER’
Fin
![Page 84: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/84.jpg)
CODIGO C#
using System;using System.Collections.Generic;using System.Text;
namespace ConsoleApplication74{classProgram {staticvoid Main(string[] args){Console.ForegroundColor = ConsoleColor.Yellow;Console.WriteLine("*** BASE DESCONOCIDA***");Console.WriteLine("");Console.ForegroundColor = ConsoleColor.White;
int basee, digitoNum;char digitoIng;
Console.Write("Ingrese Base menor a 16 y mayor a 2: ");basee = int.Parse(Console.ReadLine());if (basee == 1 || basee > 16) {Console.WriteLine("");Console.WriteLine("***ERROR***");Console.ReadLine(); }else {Console.Write("Ingrese un Número {0} en Base: {1}",digitoNum, basee);digitoNum = int.Parse(Console.ReadLine());for (int i = 1; i <= digitoIng; i++) {if (digitoIng >= 2 || digitoIng <= 16) { digitoNum = digitoIng - 55; }else digitoNum = digitoIng - 48; }if (((0 < digitoNum) || (digitoNum < basee - 1)) || (digitoIng == 'ENTER')) {if (digitoIng != 'ENTER')
![Page 85: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/85.jpg)
{Console.WriteLine(digitoIng); } } } } }}
50.Determinar el costo de produccion y el volume de equilibrio de N productos, bajo las siguientes condiciones.
1. Cada producto se identifica por su código y su decripcion
2. Cada producto tiene un costo fijo y un costo variable
3. Ademas de cada producto se sabe su producción y su precio de venta
4. El costo de producción se determina por:
CostoProd = CostoFijo + CostoVar * Produccion
5. El volumen de equilibrio se determina por:
Volumen = CostoFijo / CostoVar – PrecioVta
PSEUDO CODIGOS:
Inicio
Ingrese numero de producciones: numprod
Inicializamos contador de productos
contProd = 0
REPETIR
Ingrese datos: código, descrip,costofijo, costovar, producción, preciovta
Calculamos costo de producción
Costoprod = CostoFijo + CostoVar * Produccion
![Page 86: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/86.jpg)
Calcular volumen de equilibrio
Volumen = CostoFijo / CostoVar – PrecioVta
Resultados:
Código, descrip, costo de producción(costoprod), volumen de equilibrio(volumen)
Costoprod = costoprod + 1;
HASTA contprod = numprod
Fin
CODIGO C#
using System;using System.Collections.Generic;using System.Text;
namespace ConsoleApplication76{classProgram {staticvoid Main(string[] args){Console.ForegroundColor = ConsoleColor.Yellow;Console.WriteLine("*** CALCULAR EL VOLUMEN Y EL COSTO DE PRODUCCIÓN ***");Console.WriteLine("");Console.ForegroundColor = ConsoleColor.White;int NumProd, ContProd;string Codigo, Descrip;double CostoFijo, CostoVar, Produccion, PrecioVta, CostoProd, Volumen;
Console.Write("Ingresar Número de Productos: ");NumProd = byte.Parse(Console.ReadLine());//INICIALIZAR CONTADOR DE PRODUCTO ContProd = 0;
do {//INGRESAR DATOSConsole.Write(" >> Código: "); Codigo = Console.ReadLine();Console.Write(" >> Descipción: "); Descrip = Console.ReadLine();Console.Write(" >> Costo Fijo: ");
![Page 87: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/87.jpg)
CostoFijo = double.Parse(Console.ReadLine());Console.Write(" >> Costo Variable: ");CostoVar = double.Parse(Console.ReadLine());Console.Write(" >> Producción: "); Produccion = double.Parse(Console.ReadLine());Console.Write(" >> Precio Venta: "); PrecioVta = double.Parse(Console.ReadLine());
//CALCULAR COSTO DE PRODUCCIÓN Y VOLUMEN DE EQUILIBRIO CostoProd = CostoFijo + CostoVar * Produccion; Volumen = CostoFijo / (CostoVar - PrecioVta);
//ESCRIBIMOS RESULTADOSConsole.WriteLine("");Console.WriteLine(" --- RESPUESTA ---");Console.WriteLine("");Console.WriteLine("----------------------------------");Console.WriteLine(" ** Código : {0}", Codigo);Console.WriteLine("----------------------------------");Console.WriteLine(" ** Descripción : {0}", Descrip);Console.WriteLine("----------------------------------");Console.WriteLine(" ** Costo Producción : {0}", CostoProd);Console.WriteLine("----------------------------------");Console.WriteLine(" ** Volumen Equilib. : {0}", Volumen);Console.WriteLine("----------------------------------");
ContProd = ContProd + 1;//siguiente producto}while(ContProd == NumProd);Console.ReadLine();} }}
![Page 88: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/88.jpg)
51.Procesar el movimiento bancario de un cuenta, ingresando inicialmente el numero de cuenta, nombre del cliente y saldo anterior. Luego ingresar el tipo de movimiento ( 1 = deposito, 2 = retiro, 0 = fin) y la cantidad que lo represente. Si se ingresa otro tipo de movimiento dar el mensaje de movimiento NO VALIIDO.Terminar cuando se ingrese 0 como tipo de movimiento y mostrar los datos de la cuenta así como el numero de depósitos y retiros, saldo anterior, los totales de los depósitos, retiros y el saldo actual.
PSEUDO CODIGO:
Inicio
Datos iniciales:
Numero de cuenta, nombre del cliente, saldo anterior
Acumuladores
totDep = 0
totRet = 0
contadores
numDep = 0
numRet = 0
![Page 89: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/89.jpg)
procesar movimiento bancario: fin = falso
REPETIR
Ingrese tipo de movimiento
1: inicio
Ingrese cantidad:cant
totDep = totDep + cant
numDep = numDep + 1
fin
2: inicio
Ingresar cantidad:
totRet =totRep = cant
numRet = numRet +1
fin
0: fin = verdadero
SINO
Inicio
Mensaje = tipo invalido
Escribir mensaje
Fin
Fin del CASO
HASTA fin ==verdadero
Determinar saldo actual: Sact = Sact + totDep – totRet
Escribimos resultado:
Numero de cuenta, nombre del cliente, saldo anterior, numero de deposito, numero de retiros, total depositos, total retiros, saldo actual.
Fin
![Page 90: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/90.jpg)
CODIGO C#using System;using System.Collections.Generic;using System.Text;
namespace ConsoleApplication77{classProgram {staticvoid Main(string[] args){Console.ForegroundColor = ConsoleColor.Yellow;Console.WriteLine("*** PROCESO DE UN MOVIMIENTO BANCARIO ***");Console.WriteLine("");Console.ForegroundColor = ConsoleColor.White;int NumDep, NumRet, TiposMov;bool fin;string Ncta, Nombre;double SAnt, TotDep, TotRet, SAct;int Cant;//NumDep = Número de Deposito//NumRet = Número de Retiro//Ncta = Número de Cuenta
![Page 91: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/91.jpg)
//Mens = Mensaje//SAnt = Saldo Anterior//TotDep = Total de Deposito//TotRet = Total de Retiros//SAct = Saldo Actual//TiposMov = Tipos de movimiento//Cant = cantidad
Console.Write(" >Número de Cuenta: "); Ncta = Console.ReadLine();Console.Write(" >Nombre: "); Nombre = Console.ReadLine();Console.Write(" >Saldo Anterior: ");SAnt = double.Parse(Console.ReadLine());
//INICIALIZAR ACUMULADORES TotDep = 0;//total de depositos TotRet = 0;//total de retiros//INICIALIZAR CONTADORES NumRet = 0; NumDep = 0;//PROCESAR MOVIMIENTO BANCARIO fin = false;do {Console.WriteLine(" >Ingrese Tipo de Movimiento: /n1.DEPOSITO/n2.RETIROS/n0.FIN");Console.Write(" Su Opción: "); TiposMov = int.Parse(Console.ReadLine());switch (TiposMov) {// case (TiposMov)case 1: {Console.Write(" >Ingrese Cantidad: "); Cant = int.Parse(Console.ReadLine());
TotDep = TotDep + Cant; NumDep = NumDep + 1; } break;case 2: {Console.Write(" >Ingrese Cantidad: "); Cant = int.Parse(Console.ReadLine()); TotRet = TotRet + Cant; NumRet = NumRet + 1; } break;case 0: {
![Page 92: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/92.jpg)
fin = true;} break;
default: {Console.WriteLine("");Console.WriteLine(" *TIPO DE MOVIMIENTO INVALIDO*");Console.ReadLine(); }break; } }while(fin == true);
//DETERMINAR SALDO ACTUAL SAct = SAnt + TotDep - TotRet;//escribimos resultadosConsole.WriteLine("");Console.WriteLine(" <<<RESPUESTA>>>");Console.WriteLine("");Console.WriteLine(" ------------------------------------ ");Console.WriteLine(" ** Número de Cuenta: {0}", Ncta);Console.WriteLine(" ------------------------------------ ");Console.WriteLine(" ** Nombre: {0}", Nombre);Console.WriteLine(" ------------------------------------ ");Console.WriteLine(" ** Saldo Anterior: {0}", SAnt);Console.WriteLine(" ------------------------------------ ");Console.WriteLine(" ** Total Depositos: {0}", TotDep);Console.WriteLine(" ------------------------------------ ");Console.WriteLine(" ** Númro de Deposito: {0}", NumDep);Console.WriteLine(" ------------------------------------ ");Console.WriteLine("");Console.WriteLine(" ------------------------------------ ");Console.WriteLine(" ** Total de Retiros: {0}", TotRet);Console.WriteLine(" ------------------------------------ ");Console.WriteLine(" ** Número de Retiros: {0}", NumRet);Console.WriteLine(" ------------------------------------ ");Console.WriteLine("");Console.WriteLine(" ------------------------------------ ");Console.WriteLine(" ** Saldo Actual: {0}", SAct);Console.WriteLine(" ------------------------------------ ");Console.ReadLine(); } }}
Contabilizar los números de 5 cifras que sean múltiplos de 3 y 4 a la vez.
![Page 93: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/93.jpg)
Entrada: ninguna;
Salida: cantidad de múltiplos de 3 y 4 a la vez: contador;
PSEUDO CODIGOS:
Nminimo = 10000;//primer numero de 5 cifras//
Nmaximo = 99999;//ultimo numero de 5 cifras//
Inicio
Inicializar contador:
contador = 0;
Contabilizar múltiplos de 3 y 4 a la vez:
PARA (num = Nminimo HASTA Nmaximo) HACER
SI (residuo de num / 3 == 0) y (residuo de num / 4 == 0) ENTONCES
contador = contador + 1;
fin del SI
fin del PARA
Los números de 5 cifras multiplos de 3 y 4 (contador) son:....
Fin
CODIFICACION:
using System;using System.Collections.Generic;using System.Text;
namespace ConsoleApplication4{classProgram {staticvoid Main(string[] args){Console.ForegroundColor = ConsoleColor.White;// definir constantes//double num, contador, Nminimo, Nmaximo; Nminimo = 10000;//primer numero de 5 cifras// Nmaximo = 99999;//ultimo numero de 5 cifras//
![Page 94: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/94.jpg)
Console.WriteLine("");Console.WriteLine("***Buscando número de 5 cifras", " mulltiplos de 3 y 4 a la vez......espere please");// iniciar contador de multiplos
contador = 0;// contabilizar los multiplos de 3 y 4 a la vez//
for (num = Nminimo; num <= Nmaximo; num++)if ((num % 3 == 0) & (num % 4 == 0)) contador = contador + 1;//escribir resultados//Console.WriteLine("");Console.WriteLine("");Console.WriteLine(">>Los números de 5 cifras multiplos de 3 y 4 son: ");Console.Write(contador);Console.ReadLine(); } }}
![Page 95: 50 ALGOROTMOS](https://reader034.vdocuments.co/reader034/viewer/2022042607/54feb7fb4a7959592e8b4d9e/html5/thumbnails/95.jpg)