You are on page 1of 47

UNIDAD III - ALGORITMOS Y DIAGRAMAS DE FLUJO.

Objetivos: El alumno elaborará algoritmos, diagramas de flujo y pseudocódigos para la resolución de problemas. Producto Final: El alumno realizará un cuadernillo con 60 ejercicios resueltos
que contenga: − − − Estructuras de control, Diagramas de flujo, Pseudocódigo, y Pruebas de escritorio (mínimo dos corridas con valores distintos).

Tema: Reglas para elaborar algoritmos, Pseudocódigo y diagramas de flujo.
Saber: Reconocer la sintaxis utilizada para el desarrollo de pseudocódigo.
Identificar la simbología utilizada en el desarrollo de diagramas de flujo. Describir el procedimiento para realizar una prueba de escritorio.

Saber Hacer: Plantear la solución de un problema empleando pseudocódigo y
diagramas de flujo.

Ser: Analítico, Ordenado, Sistemático, Coherente, Proactivo y Asertivo.

Reglas para elaborar algoritmos
1. 2. 3. 4. 5. Un algoritmo tiene cero o más entradas. Un algoritmo tiene una o más salidas. Un algoritmo ha de ser finito en el tiempo. Un algoritmo debe ser preciso. Cuanto más eficaz un algoritmo mejor.

Un procesador entiende y ejecuta algoritmos, lee los algoritmos de arriba hacia abajo, ejecutando instrucción por instrucción, reconoce instrucciones elementales: leer datos, mostrar datos y realizar operaciones aritméticas.

Simbología utilizada en los diagramas de flujo
Significado Inicio DFD Norma

Entrada

Proceso

Salida

Decisión

Estructura Para

Estructura Mientras

Ejemplos de aprendizaje
Ejemplo 1 - Abarrotes Desarrollar el pseudocódigo, diagrama de flujo y prueba de escritorio de un programa que lea el costo individual y la cantidad de productos que compra un cliente en una tienda de abarrotes para calcular el importe a pagar y el cambio que debe recibir el cliente.

Tabla de análisis

Datos de entrada
ctoProducto cantProductos Pago

Proceso
importe = ctoProducto * cantProductos cambio = pago - importe

Salida
Importe cambio

El programa lee el costo individual y la cantidad de artículos que compra un cliente, para calcular el importe a pagar y el cambio que debe recibir. ctoProducto, cantProductos, importe, pago y cambio son variables de tipo real.

Pseudocódigo 1. Mostrar “Escribe el Costo individual del producto “ 2. Leer ctoProducto 3. Mostrar “Escribe la Cantidad de Productos “ 4. Leer cantProductos 5. Importe = ctoProducto * cantProductos 6. Mostrar “Importe a pagar “, importe 7. Mostrar “Pago del cliente” 8. Leer pago 9. cambio = pago – importe 10. Mostrar “Su cambio es “, cambio 11. Mostrar “Gracias por su visita”

Diagrama de flujo

Prueba de escritorio
Las pruebas de escritorio son pruebas manuales que se encargan de visualizar el comportamiento de los estados de las variables en el transcurso de la ejecución de un programa. La forma de hacer una prueba de escritorio es muy sencilla, para hacerlo se elabora una tabla con varias columnas, en la primera se indica el número de corrida, en las siguientes se colocan los valores de los datos de entrada, en otra se colocan los valores que las variables adquieren durante el proceso. Se simula línea por línea la ejecución del programa. En cada línea donde exista un cambio de estado o una petición de información, se deberá actualizar la columna de resultados.

ReadLine()).ReadLine()). Console.ReadLine()).WriteLine("Su cambio es " + cambio).WriteLine("Gracias por su visita"). } } } . cambio = pago . Console.Parse(Console. Console. Console. cantProductos = double. importe.WriteLine("Escribe el Costo individual del producto "). pago = double. Console. cantProductos. importe = ctoProducto * cantProductos.ReadKey(). ctoProducto = double.Parse(Console.importe.Prueba de escritorio Datos entrada Pago 100 200 50 50 60 Número Corrida 1 2 3 4 5 Datos entrada ctoProducto 20 15 35 8 18 cantProductos 2 4 1 5 3 Salida importe 40 60 35 40 54 Salida Cambio 60 140 15 10 6 Código C# namespace ConsoleApplicationAbarrotes { class Program { static void Main(string[] args) { double ctoProducto.WriteLine("Pago del cliente ").WriteLine("Escribe la Cantidad de Productos ").Parse(Console. pago. Console. cambio.WriteLine("Importe a pagar " + importe). Console.

calif3 y promedio son variables de tipo real. 7. 5. Tabla de análisis Datos de entrada Proceso Salida calif1 calif2 promedio = (calif1 + calif2 + calif3)/3 Promedio calif3 El programa lee tres calificaciones de un alumno y calcula el promedio. promedio Diagrama de flujo . 6. 8. 4. Pseudocódigo 1. calif1. 3.Ejemplo 2 – Promedio Calificaciones Desarrollar un programa que lea tres calificaciones de un alumno y calcule su promedio. 2. calif2. Mostrar “Escribe la primera calificación“ Leer calif1 Mostrar “Escribe la segunda calificación“ Leer calif2 Mostrar “Escribe la tercera calificación“ Leer calif3 promedio = (calif1 + calif2 + calif3)/3 Mostrar “El promedio es “.

Console.ReadKey().Parse(Console.WriteLine("Escribe la tercera calificación ").ReadLine()).Prueba de escritorio Número de corrida 1 2 3 4 calif1 7 8 10 9. Console.ReadLine()). calif2 = double. Console.Parse(Console. calif1 = double.WriteLine("El promedio es " + promedio).ReadLine()). promedio = 0.33 Código C# namespace ConsoleApplicationPromedioCalificaciones { class Program { static void Main(string[] args) { double calif1.5 Datos entrada calif2 7 9 8 8.Parse(Console. Console. calif3 = double. promedio = (calif1 + calif2 + calif3) / 3. Console.5 calif3 7 7 6 10 Salida promedio 7 8 8 9.WriteLine("Escribe la segunda calificación "). } } } . calif2.WriteLine("Escribe la primera calificación "). calif3.

Mostrar “El promedio es “. promedio Diagrama de flujo . Leer edad2 5.Ejemplo 3 – Promedio Edades El programa lee la edad de tres personas y calcula el promedio. Mostrar “Escribe la tercera edad“ 6. edad1. Leer edad1 3. Mostrar “Escribe la primera edad“ 2. promedio = (edad1 + edad2 + edad3)/3 8. Leer edad3 7. Mostrar “Escribe la segunda edad“ 4. edad2. edad3 y promedio son variables de tipo real Pseudocódigo 1.

Console. promedio = (edad1 + edad2 + edad3) / 3. promedio = 0. promedio . edad2. temp3 y promedio son variables de tipo real. Console.ReadLine()). edad2 = double. temp2. Console. edad3 = double. Leer temp2 5. } } } Ejemplo 4 – Promedio Temperaturas El programa lee tres temperaturas y calcula el promedio de ellas. Console. Console. Pseudocódigo 1. temp1. edad1 = double.Parse(Console. edad3.ReadLine()). Mostrar “El promedio es “.WriteLine("Escribe la primera edad ").WriteLine("Escribe la tercera edad ").Parse(Console. Leer temp3 7.WriteLine("Escribe la segunda edad "). Mostrar “Escribe la segunda temperatura“ 4. promedio = (temp1 + temp2 + temp3)/3 8.ReadLine()).Prueba de escritorio Número de corrida 1 2 3 4 5 edad1 17 8 10 18 16 Datos entrada edad2 15 9 20 20 15 edad3 16 7 15 22 20 Salida promedio 16 8 15 20 17 Código C# namespace ConsoleApplicationPromedio_Edades { class Program { static void Main(string[] args) { double edad1. Leer temp1 3.ReadKey(). Mostrar “Escribe la primera temperatura“ 2.WriteLine("El promedio es " + promedio).Parse(Console. Mostrar “Escribe la tercera temperatura“ 6.

Diagrama de flujo Prueba de escritorio Número de corrida 1 2 3 4 5 temp1 37 15 40 28 26 Datos entrada temp2 30 19 28 34 20 temp3 25 27 35 24 18 Salida promedio Código C# namespace ConsoleApplicationPromedio_Temperaturas { class Program { .

usando valores constantes.Parse(Console. temp2 = double. temp3.WriteLine("Escribe la primera temperatura "). } } } Ejemplo 5 .static void Main(string[] args) { double temp1.ReadLine()).3 5. Mostrar “Son “.ReadLine()).WriteLine("Escribe la tercera temperatura ").Parse(Console. Console. temp3 = double. Console. son variables de tipo real. temp2. Console.05 4. Pseudocódigo 1. Mostrar “Escribe la cantidad de pesos“ 2. dólares y euros. “ Euros” . Console.WriteLine("Escribe la segunda temperatura "). euros = pesos/17. temp1 = double. Mostrar “Son “. “ Dolares“ 6.Parse(Console.ConversionPesos_DolaresEuros El programa lee una cantidad de pesos y la convierte a dólares y euros.ReadKey(). promedio = 0. dolares = pesos/13.ReadLine()). dolares.WriteLine("El promedio es " + promedio). Pesos. promedio = (temp1 + temp2 + temp3) / 3. Leer pesos 3. Console. euros.

Diagrama de flujo Prueba de escritorio Número de corrida 1 2 3 4 5 Datos entrada Pesos 3000 15500 4010 2800 260 Salida dolares Euros Código C# namespace ConsoleApplicationConversionPesos_DolaresEuros { class Program { static void Main(string[] args) .

para calcular el porcentaje de rechazo. Console. Tabla de análisis Datos de Entrada PzsProd PzsDef Proceso PorRech = (PzsDef/PzsPrd) * 100 Salida PorRech El programa lee la cantidad de piezas producidas y rechazadas en una línea de producción. PorRech .ReadKey(). euros = pesos/17.WriteLine("Escribe la cantidad de pesos").3. PzsDef y PorRech son variables de tipo real. Leer PzsProd 3. Leer PzsDef 5. Mostrar “Captura las piezas defectuosas “ 4. dolares. Console.Parse(Console. para calcular el porcentaje de rechazo.ReadLine()). dolares = pesos/13. Console.WriteLine("Son " + dolares + “ Dolares”). Console. PorRech = (PzsDef / PzsProd) * 100 6. Mostrar “Captura las piezas producidas en la línea de producción” 2.{ double pesos. Mostrar “El porcentaje de rechazo de la línea es “. } } } Ejemplo 6 – Porcentaje Rechazo Desarrollar un programa que lea una cantidad de piezas producidas y defectuosas en una línea de producción.05. Pseudocódigo 1. PzsProd. euros.WriteLine("Son " + euros + “ Euros”). pesos = double.

Diagrama de flujo Prueba de escritorio Datos de entrada PzsProd 550 605 900 435 560 PzsDef 70 35 120 67 230 Salida PorRech Código en C# namespace ConsoleApplicationPorcentaje_Rechazo { class Program { static void Main(string[] args) .

ReadLine()). Console.WriteLine("Captura las piezas defectuosas"). a partir de la cantidad total de alumnos que presentaron un examen y el número de alumnos que lo reprobaron.Parse(Console. Leer AlumnosRep 5.ReadLine()). PorRep .{ double PzsProd.WriteLine("El porcentaje de rechazo en la línea es" + PorRech).Parse(Console. Leer CantAlumnos 3. CantAlumnos. Mostrar “Captura la cantidad de alumnos que presentaron el examen” 2. Pseudocódigo 1. PzsDef. PzsProd = double. PorRech.WriteLine("Captura las piezas producidas en la línea"). Tabla de análisis Datos de Entrada CantAlumnos AlumnosRep Proceso PorRep = (AlumnosRep/CantAlumnos) * 100 Salida PorRep El programa lee la cantidad de alumnos que presentaron un examen y el número de alumnos reprobados. para calcular el porcentaje de reprobación de un grupo. AlumnosRep y PorRep son variables de tipo real. Mostrar “El porcentaje de reprobacion es“. Console. PorRech = (PzsDef / PzsProd) * 100. Console. Console. PzsDef = double. Mostrar “Captura el número de alumnos reprobados “ 4.ReadKey(). PorRep = (CantAlumnos / AlumnosRep) * 100 6. } } } Ejemplo 7 – Porcentaje Reprobacion Desarrollar un programa que calcule el porcentaje de reprobación de un grupo.

AlumnosRep. .Diagrama de flujo Prueba de escritorio Datos de entrada CantAlumnos 55 40 33 35 60 AlumnosRep 7 15 12 17 23 Salida PorRep Código en C# namespace ConsoleApplicationPorcentaje_Reprobacion { class Program { static void Main(string[] args) { double CantAlumnos. PorRep.

WriteLine("Captura el número de alumnos reprobados").ReadLine()). para calcular el porcentaje de ventas de dicho mes.Parse(Console. } } } Ejemplo 8 – Porcentaje Ventas Desarrollar un programa para el dueño de una tienda que necesita calcular el porcentaje de ventas correspondiente a un mes a partir del importe de ventas anual. PorRep = (AlumnosRep / CantAlumnos) * 100. Pseudocódigo 1.Parse(Console. Leer VtsMes 3. PorVentas = (VtsMes / VtsAnuales) * 100 6.ReadKey(). Console. Leer VtsAnuales 5.WriteLine("Captura la cantidad de alumnos que presentaron examen").ReadLine()). PorVentas . Mostrar “Captura las ventas anuales de la tienda“ 4. AlumnosRep = double. CantAlumnos = double. VtsMes. VtsAnuales y PorVentas son variables de tipo real.Console. Console. Mostrar “Captura las ventas del mes” 2. Console.WriteLine("El porcentaje de reprobacion es" + PorRep). Tabla de análisis Datos de Entrada VtsMes VtsAnuales Proceso PorVentas = (Vts/VtsAnuales) * 100 Salida PorVentas El programa lee las ventas de un mes y las ventas anuales de una tienda. Mostrar “El porcentaje de ventas del mes es“.

Parse(Console. Console.Diagrama de flujo Prueba de escritorio Datos de entrada VtsMes 55000 67434 30457 35015 16069 VtsAnuales 23456045 60467256 35789589 40788529 80356785 Salida PorVentas Código en C# namespace ConsoleApplicationPorcentaje_Ventas { class Program { static void Main(string[] args) { double VtsMes. VtsAnuales. VtsMes = double.Parse(Console. PorVentas. Console. VtsAnuales = double.ReadLine()).WriteLine("Captura las ventas del mes").WriteLine("Captura las ventas anuales de la tienda").ReadLine()). .

SueldoDia.WriteLine("El porcentaje de ventas del mes es" + PorVentas). 4. 11.ReadKey().075 SueldoT = SueldoS . SueldoT . 5. } } } Ejemplo 9 – Sueldo Semanal Desarrollar un programa para el dueño de un taller mecánico que necesita un programa que lea el número de un empleado. 7. Pseudocódigo 1.5%. para calcular el sueldo semanal considerando un impuesto del 7.PorVentas = (VtsMes / VtsAnuales) * 100. 10. 12. para calcular el sueldo semanal de sus empleados considerando un impuesto del 7. Mostrar “Captura el numero del empleado” Leer Numero Mostrar “Captura los días trabajados“ Leer DiasTrab Mostrar “Captura el sueldo diario” Leer SueldoDia SueldoS = DiasTrab * SueldoDia Impuesto = SueldoS * 0. 8. los días trabajados y el sueldo diario.Impuesto Mostrar “Sueldo semanal antes de impuestos “. 9. 6. DiasTrab. SueldoS Mostrar “Impuesto “. SueldoS. Impuesto y SueldoT son variables de tipo real. Tabla de análisis Datos de Entrada Numero DiasTrab SueldoDia Proceso SueldoS = DiasTrab * SueldoDia Impuesto = SueldoS * 0.5%.Impuesto Salida SueldoS Impuesto SueldoT El programa lee el número del empleado. los días trabajados y el sueldo diario. 3. 2. Console. Numero. Console. Impuesto Mostrar “Sueldo Total “.075 SueldoT = SueldoS .

Diagrama de flujo Prueba de escritorio Numero 1051 434 304 5015 606 Datos de entrada DiasTrab SueldoDia 7 850 4 367 6 655 5 385 10 425 SueldoS Salida Impuesto SueldoT .

} } } . SueldoDia = double. Impuesto.Código en C# namespace ConsoleApplicationSueldoSemanal { class Program { static void Main(string[] args) { double Numero. DiasTrab. Console. Console.075.ReadKey().WriteLine("Captura los dias trabajados"). SueldoS = DiasTrab * SueldoDia.ReadLine()).Parse(Console. Numero = double.Parse(Console.WriteLine("Captura el sueldo diario"). Console. Console.WriteLine("Impuesto " + Impuesto).WriteLine("Captura el numero del empleado "). SueldoS. SueldoT.ReadLine()). Console. SueldoDia. Console.WriteLine("Sueldo Semanal " + SueldoS).ReadLine()). Console. Impuesto = SueldoS * 0.WriteLine("Sueldo Total " + SueldoT). DiasTrab = double. SueldoT = SueldoS .Parse(Console.Impuesto.

12. Mostrar “Captura el codigo del producto” Leer codigo Mostrar “Captura el costo unitario del producto“ Leer ctoProd Mostrar “Captura la cantidad de productos comprados” Leer cantProd importe = ctoProd * cantProd descuento = importe * 0. para calcular el importe a pagar aplicando un descuento del 8%. descuento e importeT son variables de tipo real. importe. importeT .descuento Mostrar “Importe sin descuento “. 6. 4.08 importeT = importe . 7. 11. 10.descuento Salida Importe descuento importeT El programa lee el código de un producto. 5. 3. importe Mostrar “Descuento “. desuento Mostrar “Importe Total “. su costo unitario y la cantidad comprada. 9. Tabla de análisis Datos de Entrada codigo ctoProd cantProd Proceso importe = ctoProd * cantProd descuento = importe * 0. codigo. 2. su costo unitario y la cantidad comprada.Ejemplo 10 – Importe Descuento Desarrollar un programa que lea el código de un producto.08 importeT = importe . cantProd. para calcular el importe a pagar por el cliente aplicando un descuento del 8%. ctoProd. 8. Pseudocódigo 1.

35 56.Diagrama de flujo Prueba de escritorio Datos de entrada ctoProd 23.5 80 15.05 Salida descuento codigo 2340 4567 5432 8762 4257 cantProd 4 6 10 3 5 importe importeT .45 10.

WriteLine("Captura la cantidad de productos comprados"). descuento = importe * 0.ReadLine()).WriteLine("Descuento " + descuento). } } } . Console. Console. importe.WriteLine("Importe sin descuento " + importe).Parse(Console.Parse(Console.WriteLine("Captura el codigo del producto "). ctoProd = double. cantProd. ctoProd.ReadKey(). Console.descuento. codigo = double. Console. cantProd = double.WriteLine("Importe Total " + importeT).ReadLine()).ReadLine()).08. importe = ctoProd * cantProd.WriteLine("Captura el costo unitario del producto").Parse(Console. Console. importeT. descuento. Console.Código en C# namespace ConsoleApplicationImporte_Descuento { class Program { static void Main(string[] args) { double codigo. Console. importeT = importe .

descuento Salida Importe descuento importeT El programa lee el código del tipo de gasolina. 10. 12. para calcular el importe a pagar aplicando un descuento del 15%. Pseudocódigo 1. importe Mostrar “Descuento “.15 importeT = ctoLitro . importe. descuento e importeT son variables de tipo real. 7.15 importeT = importe . desuento Mostrar “Importe Total “. 6. 3. ltsComp. Tabla de análisis Datos de Entrada codigo ctoLitro ltsComp Proceso importe = ctoLitro * ltsComp descuento = importe * 0. para calcular el importe a pagar por el cliente considerando un descuento del 15%. 5.Ejemplo 11 – Gasolina Importe Descuento Desarrollar un programa que lea el código del tipo de gasolina. Mostrar “Captura el codigo de la gasolina” Leer codigo Mostrar “Captura el costo por litro de la gasolina“ Leer ctoLitro Mostrar “Captura la cantidad de litros comprados” Leer ltsComp importe = ctoLitro * ltsComp descuento = importe * 0. importeT .descuento Mostrar “Importe sin descuento “. 4. codigo. 11. 8. ctoLitro. 9. 2. los litros comprados y el precio por litro. los litros comprados y el precio por litro.

67 11.Diagrama de flujo Prueba de escritorio codigo 1 2 4 1 3 Datos de entrada ctoLitro 10.6 9.45 10.05 12.05 ltsComp 5 15 20 30 25 importe Salida descuento importeT Código C# namespace ConsoleApplicationGasolinaImporte_Descuento { class Program .

WriteLine("Captura el codigo de la gasolina"). ctoLitro. importeT.{ static void Main(string[] args) { double codigo. ltsComp = double. Console.Parse(Console.descuento. importe = ctoLitro * ltsComp.15. la cantidad comprada y el tipo de cambio del dólar para calcular el importe a pagar en pesos y dólares.ReadLine()). el costo unitario y la cantidad comprada. Console.5%. Console.WriteLine("Captura los litro de gasolina comprados"). Tema: Contadores y acumuladores. codigo = double. que requiere leer el código del artículo. Saber: Reconocer el funcionamiento de un contador y un acumulador. importe.ReadKey(). para calcular el importe a pagar y el cambio que debe recibir el cliente. .WriteLine("Importe Total " + importeT). Console.ReadLine()). importeT = importe . y el cambio que debe recibir el cliente. Console. ltsComp.WriteLine("Importe sin descuento " + importe). Console. aplicando un descuento del 8%.Parse(Console. aplicando un impuesto del 6. descuento. ctoLitro = double. Programa 20 Desarrollar un programa para el dueño de una tienda. el costo unitario.Parse(Console.WriteLine("Captura el costo por litro de la gasolina"). } } } Ejercicios de aprendizaje individual Programa 19 El dueño de una tienda requiere un programa que lea el código del producto.WriteLine("Descuento " + descuento). Console.ReadLine()). descuento = importe * 0.

El programa de un banco calcula el saldo de un cliente utilizando un totalizador SaldoInicial = 120 Cuando el cliente realiza un deposito SaldoInicial = SaldoInicial + deposito Cuando el cliente realiza un retiro SaldoInicial = SaldoInicial . el programa puede contar las rentas que ha realizado un cliente. Sirven para contar las acciones o sucesos que ocurren durante una estructura de repetición.Saber Hacer: Comparar entre un contador y un acumulador. cada vez que se produce un determinado suceso o acción. Contador: Variable cuyo valor inicial. en un tiempo determinado. para alcanzar un valor final. se incrementa o decrementa (aumenta o disminuye) en una cantidad constante. Se deben inicializar. esto es asignarle un valor inicial el cual irá aumentando o disminuyendo en cada repetición. suma sobre sí misma un conjunto de valores variables. el programa de un banco utiliza un contador para determinar el número de veces que un cliente utilizo su tarjeta durante el mes. Rentas = 0 Cuando el cliente renta una película Rentas = Rentas + 1 En un banco se puede contar el número de clientes que se atienden al día NumCliente = 0 Cuando se atiende un cliente NumCliente = NunCliente + 1 Acumulador o totalizador: Variable cuyo valor inicial.retiro El programa de una tienda comercial. programa puede calcular el total de ventas que se registro en una caja ImporteVentas = 0 Cuando el cajero atiende a un cliente ImporteVentas = ImporteVentas + Ventas . Uso_tarjeta = 0 Cuando el cliente paga con su tarjeta Uso_tarjeta = Uso_tarjeta + 1 En un videoclub. Por ejemplo.

Cuando un cliente realiza un cambio o cancela una venta ImporteVentas = ImporteVentas . por ejemplo si necesitamos leer la edad de 15 personas. ContadorPersonas = ContadorPersonas + 1 AcumuladorEdades = AcumuladorEdades + Edad .VentaCancelada El programa de un celular que controla el saldo del usuario. ContadorPersonas = 0 AcumuladorEdades = 0 Cuando se le pregunta a una persona su edad se debe incrementar el contador de las personas y el acumulador de las edades. para calcular la edad promedio. utiliza un acumulador para calcular el saldo luego de cada operación que realiza el cliente. se requiere contar a las personas y acumular su edad. En este ejemplo será necesario inicializar tanto el contador como el acumulador. SaldoInicial = 200 Cuando el cliente realiza una llamda SaldoInicial = SaldoInicial – CostoTiempoLlamada Cuando el cliente realiza una carga de tiempo SaldoInicial = SaldoInicial + CargaTiempo En ocasiones será necesario utilizar un contador y un acumulador al mismo tiempo.

Tema: Estructuras de control de selección (selectivas). . Estructuras Selectivas Dobles Se realiza uno de dos bloques de instrucciones luego de evaluarse una condición. Simples Ó Únicas Permiten realizar o no un bloque de instrucciones. Saber Hacer: Resolver un problema determinado aplicando las estructuras de control selectivas y verificar la solución a través de una prueba de escritorio. Compuestas y Múltiples. Múltiples Se realiza uno de varios bloques de instrucciones luego de evaluarse varias condiciones. Saber: Reconocer el funcionamiento de las estructuras de control selectivas: Simples.

Leer pago 13.1 descuento = importe * 0. descuento 9. Al final el programa debe mostrar importe sin descuento. cambio Prueba de escritorio No corrida precio Cantidad importe descuento importetot pago cambio Desarrolla diagrama de flujo y codifica en C# . precio. Mostrar “Captura pago del cliente” 12. Mostrar “Importe con descuento “. Leer cantidad 5. El programa lee el precio de un artículo y la cantidad comprada para calcular el importe sin descuento.Ejercicios de aprendizaje Ejercicio 1 – Calcular Descuento Desarrollar un programa que lea el precio de un artículo y la cantidad comprada. importetot = importe – descuento 10. Mostrar “Captura la cantidad comprada” 4. Cambio = pago – importetot 14. Si cantidad >=100 entonces 7. importe 7. descuento el importe total sin descuento y el cambio. Mostrar “Importe sin descuento “. importetot 11. Leer precio 3.2 descuento = 0 fin_si 8. para calcular el importe y un descuento del 25% si la cantidad comprada es mayor o igual a 100. importetot. cantidad. importe. Pseudocódigo 1. importe = precio * cantidad 6. descuento. un descuento del 25% si la cantidad es mayor o igual a 100 y el importe sin descuento.25 sino 7. pago y cambio son variables de tipo real. Mostrar “El descuento es “. Mostrar “Captura el precio del articulo” 2. Mostrar “Su cambio es “.

Mostrar “El descuento en dólares es”. Mostrar “Importe en pesos sin descuento “. .1 descuentop = importep * 0. . Mostrar “Captura el precio del articulo” 2. importetotp. para calcular: . importep. imported. Leer pago 18.Ejercicio 2 – Calcular Descuento Dolares Desarrollar un programa que lea el precio de un artículo. descuentop. Mostrar “Tipo de cambio” 6.Importe a pagar en pesos y dólares.4 descuentod = 0 fin_si 11. importetotd = imported .25 10. la cantidad comprada y el tipo de cambio del dólar para calcular el importe a pagar en pesos y dólares. precio. El programa lee el precio de un artículo. Leer tcambio 7. importetotp = importep – descuentop 14.descuentod 15. imported = importep/tcambio 9. Mostrar “Su cambio es “.Importe total en pesos y dólares. Leer cantidad 5.Descuento del 35% en pesos y dólares si la cantidad comprada es mayor o igual a 200. un descuento en pesos y dólares del 35% si la cantidad es mayor o igual a 200 y el importe total en pesos y dolares. importep = precio * cantidad 8. descuentod 13. Si cantidad >=100 entonces 10. Mostrar “El descuento en pesos es “. Mostrar “Captura pago del cliente” 17. importep 10. Pseudocódigo 1. Cambio = pago – importetot 19.2 descuentod = descuentop/tcambio sino 10.3 descuentop = 0 10.Cambio en pesos y dólares. Mostrar “Captura la cantidad comprada” 4. . Mostrar “Importe sin descuento “. descuentop 12. descuentod. Leer precio 3. cambio . pago y tcambio son variables de tipo real. la cantidad comprada y el tipo de cambio del dólar. importetot 16. asumiendo que se paga en pesos. cantidad.

promedio 1.El sueldo total que debe recibir el trabajador. Muestra un mensaje de felicitación si el promedio es mayor o igual a 8. 2. para calcular su promedio. 4.El Sueldo neto considerando el sueldo bruto y el bono. 7. Ejercicio 4 – Calcular Promedio Calificaciones Desarrollar un programa que lea las tres calificaciones parciales de un alumno. pseudocódigo. . calif3 y promedio son variables de tipo real. El programa lee 3 calificaciones de un alumno.2 Mostrar “Necesitas estudiar mas. calif1.Prueba de escritorio No corrida precio cantidad tcambio importep imported Ejercicio 3 – Calcular Sueldo Semanal Desarrollar un programa que lea el sueldo por día y los días trabajados para calcular el sueldo semanal de un trabajador. calif2. Elaborar tabla de análisis. . 6. 8. diagrama de flujo. El programa debe mostrar un mensaje de felicitaciones si el promedio es mayor o igual a 8. en caso contrario debe mostrar un mensaje animándolo a estudiar.1 . prueba de escritorio y código en C#. . sino uno animándolo a estudiar. 8. Pseudocódigo Mostrar “Captura la calificación 1” Leer calif1 Mostrar “Captura la calificación 2” Leer calif2 Mostrar “Captura la calificación 3” Leer calif3 promedio = (calif1 + calif2 + calif3)/3 Si promedio>= 8 entonces Mostrar “Felicidades tu promedio es ”. Elaborar tabla de análisis. diagrama de flujo.Un bono del 35% sobre el sueldo bruto si el empleado trabajo los 6 días. pseudocódigo.6% sobre el sueldo neto. promedio else 8. 3. Se debe calcular: .El sueldo bruto en base a los días trabajados. . para calcular su promedio. 5. tu promedio es “. prueba de escritorio y código en C#.Un impuesto del 8.

sbruto Mostrar “Bono “. Al final el programa debe mostrar: Sueldo Bruto.35 sino bono = 0 fin_si sneto = sbruto + bono impuesto = sneto * 0. impuesto y el sueldo total. 13. 8. diagrama de flujo. sneto. el cual calcula a partir de las piezas buenas producidas y el costo por pieza. 2.2 7. bono Mostrar “Sueldo Neto “. 6. sbruto. stotal Prueba de escritorio No Corrida pzsbns ctopza sbruto bono sneto impuesto Stotal .Ejercicio 5 – Calcula Sueldo y Bono El dueño de un taller de costura necesita un programa para calcular el sueldo total de sus empleados. Mostrar “Captura las piezas buenas” Leer pzsbns Mostrar “Captura el costo por pieza” Leer ctopza sbruto = pzsbns * ctopza Si pzsbns > 150 entonces bono = sbruto * 0. bono. sueldo neto. del empleado de un taller de costura. 10. Elaborar tabla de análisis. Si ellos producen más de 150 piezas buenas obtienen un bono adicional del 35% sobre su sueldo bruto. El programa lee la cantidad de piezas buenas producidas y el costo por pieza. pseudocódigo. 9. sneto Mostrar “Impuesto “. 4. 6. Sueldo Neto. 14.1 6. 3. impuesto y stotal son variables de tipo real.06 stotal = sneto – impuesto Mostrar “Sueldo Bruto “. 11. ctopza. pzsbns. impuesto Mostrar “Sueldo Total “. Pseudocódigo 1. bono. 5. prueba de escritorio y código en C#. para calcular el sueldo bruto. Impuesto. 12. sin embargo su sueldo genera un impuesto del 6%. Sueldo Total. Bono.

Leer edad3 7. Elaborar tabla de análisis. Si edad3 > mayor entonces 11. para calcular cual es la edad mayor y mostrarla en pantalla. para calcular el importe a pagar en pesos y dólares. mayor = edad3 12. prueba de escritorio y código en C#. mayor . Mostrar “La edad mayor es”. Elaborar tabla de análisis. Mostrar “Captura la tercera edad” 6. Pseudocódigo 1. Fin_si 17. Leer edad2 5. Elaborar tabla de análisis. pseudocódigo. mayor = edad3 16. mayor = edad1 8. Ejercicio 7 – Calcular Edad Mayor Desarrollar un programa que lea la edad de tres personas. El dueño ha prometido un descuento del 15% si los clientes consumen más de 20 litros. mayor = edad2 10. Leer edad1 3. diagrama de flujo. Sino 14. Fin_si 13. pseudocódigo. Mostrar “Captura la primera edad” 2. el cual debe leer los litros comprados por el cliente. Mostrar “Captura la segunda edad” 4. Fin_si 18. prueba de escritorio y código en C#. Si edad2 > mayor entonces 9. diagrama de flujo.Ejercicio 6 – Calcular Venta Gasolinera El dueño de una gasolinera necesita un programa para calcular sus ventas diarias. diagrama de flujo. Si edad3 > mayor entonces 15. prueba de escritorio y código en C#. pseudocódigo. el precio por litro y el tipo de cambio del dólar.

89” Mostrar ”[3] Diesel 10. 14. Mostrar “Captura el primer promedio” Leer prom1 Mostrar “Captura el segundo promedio” Leer prom2 Mostrar “Captura el tercer promedio” Leer prom3 menor = prom1 Si prom2 < menor entonces menor = prom2 Si prom3 < menor entonces menor = prom3 Fin_si Sino Si prom3 < menor entonces menor = prom3 Fin_si Fin_si Mostrar “El promedio menor es”. Mostrar “Gasolinera los 3 pinos” Mostrar “[1] Magna 9. 6. 12. 10.15 Sino Si tipo = 2 entonces precio = 9. 2. 15. 6. menor Ejercicio 9 – Calcular Importe Cambio Gasolinera Desarrollar un programa para la “Gasolinera 3 Pinos”. 5. 18. Pseudocódigo 1. 9. 7.89 Sino Si opcion = 3 entonces .50 “ Mostrar “[2] Premium 9. 7. 8. 16. Pseudocódigo 1. debe mostrar un menú con los tipos de gasolina que ofrece y los precios. 11. Se necesita leer la cantidad de litros comprados para calcular el importe a pagar y el cambio a recibir por el cliente.05 “ Mostrar “Selecciona el tipo de gasolina” Leer tipo Si tipo >=1 and tipo<=3 Si tipo=1 entonces precio = 9. 13. 8. para calcular cual es el promedio menor y mostrarlo en pantalla. 4. 5. 3. 2. 4. 17. 3.Ejercicio 8 – Calcular Promedio Menor Desarrollar un programa que lea el promedio de tres alumnos.

05 Sino Mostrar “Opcion Incorrecta” Tcambio = 0 fin_si fin_si fin_si 8. 17. Pseudocodigo 1.05 fin_si fin_si fin_si Mostrar “Captura los litros comprados “ Leer litros Importe = litros * precio Mostrar “Importe a pagar ”. 5.89” Mostrar ”[3] Yen 18. Mostrar “Casa de Cambio los cuates” Mostrar “[1] Dolar 12. euros y yenes.9. 6.15 “ Mostrar “[2] Euro 16. 14. precio = 10. 3. 11. 2. 12. 4. El programa debe mostrar en un menú de opciones el tipo de moneda y el tipo de cambio. 10. importe Mostrar “Pago del cliente “ Leer pago Cambio = pago – importe Mostrar “Su cambio es “.15 Sino Si moneda = 2 entonces tcambio = 16. 13. para calcular el importe a pagar por cliente y su cambio correspondiente al tipo de moneda comprada.05 “ Mostrar “Selecciona el tipo de moneda” Leer moneda Si moneda = 1 entonces tcambio = 12.89 Sino Si moneda = 3 entonces tcambio = 18. Leer cantidad . 16. Mostrar “Captura la cantidad de moneda comprada “ 9. cambio Sino Mostrar “Selección incorrecta” fin_si Ejercicio 10 – Venta Dolares Euros Yenes Desarrollar un programa para una casa de cambio que vende dólares. 7. 15.

} else Console.Parse(Console. Console. cantidad. moneda = double. tcambio = 0.17.WriteLine("Cantidad ").WriteLine("1 Dolar ").WriteLine("Opcion incorrecta ").10. pago.Parse(Console. Console.importe. else if (moneda == 3) tcambio = 0. Console. Console. Importe = cantidad * tcambio Mostrar “Importe a pagar ”. 11. 15.ReadKey(). } if (tcambio > 0) { Console.ReadLine()).WriteLine("Cancelar").WriteLine("Casa de cambio la Mejor"). 12. } } . Console. Console. if (moneda >= 1 && moneda <= 3) { if (moneda == 1) tcambio = 13. pago = double.ReadLine()).ReadLine()).WriteLine("Importe " + importe).WriteLine("Pago ").3. cambio Codigo C# static void Main(string[] args) { double moneda.5. 13. importe Mostrar “Pago del cliente “ Leer pago Cambio = pago – importe Mostrar “Su cambio es “.WriteLine("Selecciona el tipo de moneda "). 14. Console.WriteLine("Cambio " + cambio). importe.WriteLine("2 Euero "). Console. Console. cambio. else if (moneda == 2) tcambio = 18. cambio = pago . else Console. cantidad = double. importe = cantidad * tcambio.WriteLine("3 Yen ").Parse(Console.

Si cantidad >= 200 descuento del 20% . si se compran más de 4 boletos . considerando los siguientes descuentos: .[ 2 ] Durango . el cual debe leer las horas de estancia de un vehículo. Se ofrecen los siguientes descuentos: . nacionales e internacionales. Se debe calcular el importe a pagar de acuerdo a las siguientes tarifas.Ejercicio 11 – Calcular Importe Cambio Desarrollar un programa para una tienda que vende productos al mayoreo. para calcular el importe y el cambio.Si minutos >= 60 entonces descuento del 10% .[ 3 ] Mexico Se debe calcular el importe a pagar de acuerdo a la cantidad de boletos comprados.2 horas – 8 pesos .Si minutos >= 200 entonces descuento del 25% Ejercicio 14 – Calcular Importe Agencia Viajes Desarrollar un programa para una agencia de viajes que muestre el siguiente menú de opciones: Agencia de Viajes GRECIA Destinos . .Si minutos >= 100 entonces descuento del 15% . Se concede un descuento del 15%.[ 1 ] Tijuana . Se debe mostrar un menú con los tipos de llamada y sus costos por minuto y leer los minutos de la llamada. el cual debe leer el precio unitario y la cantidad comprada para calcular el importe a pagar y el cambio.Si cantidad >= 100 descuento del 15% .Más de 3 horas – 7 pesos por hora Ejercicio 13 – Importe Caseta Telefonica Desarrollar un programa para una caseta telefónica que ofrece llamadas locales.1 hora – 10 pesos .Si cantidad >= 300 descuento del 25% Ejercicio 12 – Calcular Importe Estacionamiento Desarrollar un programa para un estacionamiento.

“Necesita alimentarse mejor. Se debe leer el nombre del vendedor y el precio de la casa para calcular la comisión de 30 vendedores. El alumno debe desarrollar el diagrama de flujo en el programa DFD y el código en C# y mostrar los resultados en su cuaderno.00 3.“Necesita cambiar sus hábitos alimenticios sufre de obesidad” Ejercicio 16 – Calcular Importe Videojuegos Desarrollar un programa para una tienda que vende videojuegos a los siguientes precios: 1. Wii 750. . utilizando estructuras de control y repetición.“Debe cuidarse tiene un poco de sobrepeso” . El programa debe calcular el importe de 100 ventas.“Felicidades. el cual debe leer el peso en kilogramos y la estatura en metros para calcular el índice de masa corporal y mostrar los siguientes mensajes de acuerdo al peso del paciente: . para calcular el importe a pagar y el cambio a recibir. sufre de desnutrición” .00 2. tiene en el peso ideal” . PlayStation 3 900.Ejercicio 15 – Calcular Masa Corporal Desarrollar un programa para un nutriólogo. Se debe leer el tipo de videojuego y la cantidad que el cliente compra. Tarea Resolver en el cuaderno los siguientes ejercicios.00 Se debe mostrar un menú con los tipos de videojuegos y sus precios correspondientes. Ejercicio 17 – Calcular Comision Constructora Desarrollar un programa para una empresa constructora que se dedica a la venta de casas y ofrece una comisión del 15% a sus vendedores de acuerdo al precio de la casa comprada por el cliente. Xbox 650.

Se ejecutan las instrucciones y luego se evalúa una condición Puede trabajar con un contador o bandera.Tema: Estructuras de repetición. cuando se desconoce el número de repeticiones. cuando se desconoce el número de repeticiones. c) Mientras. inicial y final de contador. Para Ó For Permite que se repitan un conjunto de instrucciones. puede trabajar con un contador ó Bandera. necesita un contador. Se evalúa una condición. Estructuras Repetitivas Mientras ó While Se utiliza para que se repitan un conjunto de instrucciones. Saber Hacer: Resolver un problemas determinado aplicando las estructuras de control repetitivas y verificar la solución a través de pruebas de escritorio. b) Repite. . a) Para-hasta. Hacer Mientras ó Do/While Se utiliza para que repita un bloque de instrucciones. Se Evalúa el valor. Saber: Reconocer el funcionamiento de las estructuras de control repetitivas. para controlar el número de repeticiones.

para calcular: El nombre del vendedor y la venta mínima. Ejercicio 2 Desarrollar un programa que lea el nombre y la edad de 20 personas. considerando un impuesto de 6.7% y un bono del 35% si el empleado laboro por lo menos 10 días. El nombre del vendedor y la venta máxima. .El nombre y la edad de la persona que tenga la edad mínima. .Ejercicios de aprendizaje Ejercicio 1 Desarrollar un programa que lea la edad de 15 personas. . para calcular la edad promedio. neto y total. Ejercicio 5 Desarrollar un programa que lea la edad de 15 personas y calcule cuántos son menores de edad y cuántos son mayores de edad. El promedio de ventas. Se debe calcular el sueldo bruto. se debe leer el nombre. sueldo diario y días trabajados de los empleados. Ejercicio 4 Desarrollar un programa que lea el nombre de 20 vendedores y la cantidad de ventas mensuales. para calcular: . Ejercicio 3 Desarrollar el programa para un taller donde laboran 16 empleados.El nombre y la edad de la persona que tenga la edad máxima. Ejercicio 6 Desarrollar un programa que lea las calificaciones de 25 alumnos y calcular cuántas acreditaron la materia con una calificación mayor o igual a 7 y cuántos la reprobaron usando una estructura MIENTRAS.Edad promedio de todas las personas.

Se debe mostrar el sueldo bruto de cada empleado y el sueldo bruto total de todos los empleados. yenes y euros. Ejercicio 9 Desarrollar un programa que calcule los importes de ventas de una casa de cambio. la temperatura máxima y la temperatura mínima.Edad máxima. los días trabajados y el sueldo diario de un conjunto no determinado de empleados. Se deben registrar las ventas de 200 clientes. Ejercicio 11 Desarrollar un programa que lea el número. mínimo y promedio de cada tipo de gasolina. . Ejercicio 8 Desarrollar un programa que calcule el importe de 25 ventas de una gasolinera. . .Ejercicio 7 Desarrollar un programa que lea el nombre de 15 personas. para calcular la temperatura promedio. Al final se debe mostrar la cantidad total de artículos comprados y el importe total a pagar. así como el cambio que el cliente deberá recibir.Promedio de ventas generales. Al final del día el dueño necesita saber el importe de ventas totales para cada tipo de moneda.Importe máximo. mínima y promedio del género femenino. Ejercicio 12 Desarrollar un programa que lea las temperaturas diarias del mes de octubre.Edad máxima. Se debe leer el código de cada artículo y la cantidad comprada para calcular el importe. para ello se debe leer el tipo de gasolina y los litros comprados. mínima y promedio del género masculino. la edad y el género para calcular: . Debe mostrar en un menú los tipos de moneda y su tipo de cambio. Se deberá mostrar un menú con los tres tipos de gasolina ofrecidos y el precio por litro de cada tipo. . Al final se debe mostrar: . La casa de cambio ofrece dólares.Cuántos son del género masculino y femenino. Ejercicio 10 Desarrollar un programa que calcule el importe total que debe pagar un cliente que compra una cantidad no determinada de artículos.

el nombre y el monto del vendedor que realizo la menor venta. el nombre y el monto del vendedor que realiza la mayor venta. .Ejercicio 13 Desarrollar un programa que lea el nombre y las ventas de 15 vendedores. para calcular el promedio de ventas de todos los vendedores.

sueldo 9. num. 2. e=e+1 11. “ = “. 7. I. Mostrar “Escribe un número” Leer numero num = 1 Para num = 1 hasta num <=15 mult = numero * num Mostrar numero. Mostrar “Sueldo “. mult num = num + 1 Fin_para No 2 4 6 8 10 7 5 8 3 6 numero 2 4 6 8 10 num mult . sueldostotales=0 2. Fin_para 12. 8. Leer sueldo_diario Mostrar “Escribe los días trabajados” 5. e=1. desarrolla su diagrama de flujo. Analiza el siguiente algoritmo y anota en la tabla de abajo las corridas correspondientes a los valores establecidos. Desarrolla diagrama de flujo. Revisa el siguiente algoritmo. 5. Mostrar “Sueldos Totales “. sueldostotales = sueldostotales + sueldo 10. Para e=1 hasta e<=15 3.Programas de Ejercicios para evaluar los conocimientos del Tercer Parcial Instrucciones: Lee cuidadosamente y realiza cada una de las acciones que se te indica. 1. 1. sueldo= sueldo_diario * días_trab 8. 6. Leer días_trab 7. Mostrar “Ingresa el sueldo diario del empleado”. 3. prueba de escritorio y Código en Visual C#. código en Visual C# y explica su funcionamiento. e 4. prueba de escritorio.sueldostotales II. 6. 4. “ * “ .

c=1. suma = _______ . Para c=1 hasta c < = 25 3. 8.III. 1. “Alumnos” Analiza el siguiente algoritmo. 11. importe 8. 1. suma = _____________ 6. __________________ 17. Mostrar “Importe “. Promedio = __________________ 16. ______________ . Fin_Mientras Revisa el siguiente algoritmo y completa sus espacios. . Sino Mostrar _________________ 10. Mostrar “Minutos de la llamada” Leer minutos 9. Mostrar _________________ 8. 6. Mostrar “Minutos de la llamada” 2. 4. 10. Mostrar “En total pasaron “. Leer minutos 3. Si calif < = 7. 1. _____________ . FinSi 13. 7. 7. gastostotales=0 Mostrar “Ingresa un gasto” Leer gasto Mientras gasto < > -1 gastostotales = gastostotales + gasto Mostrar “Ingresa un gasto” Leer gasto Fin_mientras IV. 2. desarrolla su diagrama de flujo. cp = _______ .0 entonces 7. c = ______________ 14. prueba de escritorio. Revisa el siguiente algoritmo. Mientras minutos < > 0 4. código en Visual C# y explicación de su funcionamiento. Leer ______________ 5. Mostrar “Escribe tu calificación “ 4. 3. cr = ___________ 9. 5. prueba de escritorio. código en Visual C# y explica su funcionamiento. Mostrar “En total reprobaron “. desarrolla su diagrama de flujo. cr = _______ 2. Fin_para 15. V. Mostrar “Costo por minuto” 5. cp = ___________ 12. Leer costo importe = minutos * costo 6. Mostrar “Promedio “. “Alumnos” 18.

___________________ . Mostrar “Ingresa la edad de la persona ”. cmen = _________________ 13. ________________. Sino 11. Si edad < min entonces 18. Desarrolla el diagrama de flujo. “mayores de edad” 25. “menores de edad” 26. ___________________ 27. min = ______________ 2. Mientras p < = 20 4. Revisa el siguiente algoritmo y completa los espacios. Mostrar “Hay “. Finsi 14. Mostrar “La edad máxima es “. ________________ 24. Mostrar “El gasto total fue de “. Mostrar __________________________ 9. Leer ________ suma = ________________ 6. cmay = __________________ 10. cg . Fin_si 17. Mostrar “Fueron “. 21. prueba de escritorio y explicación del programa. código en Visual C#. p = 1. ________ 5. 7. Fin p=p+1 20. Si edad > max entonces max = ____________ 15. _______________ . 16. cmen = ________ 3. Mostrar “La edad promedio es”. Promedio = _________________ 23. Mostrar __________________________ 12. Si edad > = 18 entonces 8. max = ___________. 1.gastostotales VI. Mostrar “La edad mínima es ”. “ Gastos” 10. Fin_mientras 22. cmay = _______ . Mostrar “Hay “. min = _____________ 19. suma = _________ .9.