SlideShare una empresa de Scribd logo
z
EJERCITARIO
Introducción a los Algoritmos.
Programación estructurada.
Ejercicios de algorítmica.
Programación estructurada
P á g i n a 1 | 55
ALGORITMOS
Introducción a los Algoritmos
Programación estructurada
Estructuras elementales de programación
Definiciones elementales
EJERCICIOS PRÁCTICOS
El presente documento es un compilado de ejercicios prácticos, con sus bases teóricas
elementales, con el objeto de que sea utilizado como recurso didáctico para el
desarrollo de las materias técnicas de algorítmica y otras relacionadas a la lógica de
programación.
Este material es realizado por los alumnos del Primer curso del Bachillerato Técnico en
Informática del Colegio Técnico San Francisco, en el desarrollo de los trabajos de la
materia “Algorítmica” durante año lectivo 2019.
Damos gracias a Dios
A nuestros padres y maestros
Por el apoyo incondicional y
la confianza depositada en nosotros.
Ejercicios de algorítmica.
Programación estructurada
P á g i n a 2 | 55
Algorítmica y programación
Presentación
El desarrollo de algoritmos es un tema fundamental en el diseño de programas o
soluciones lógicas informáticas y es la base de toda la programación en general. Por lo
cual, el alumno debe tener buenas bases que le sirvan para poder crear de manera
fácil y rápida sus programas.
La siguiente documentación tiene como objetivo el de servir de apoyo al estudiante,
facilitarle el desarrollo de su capacidad analítica y creadora, para de esta manera
mejorar su destreza en la elaboración de algoritmos que sirven como base para la
codificación de los diferentes programas que tendrá que desarrollar a lo largo de su
carrera.
¿Qué es algoritmo?
La palabraalgoritmose derivade latraducciónal latínde lapalabra árabe alkhowarizmi,
nombre de un matemáticoyastrónomoárabe que escribióuntratado sobre manipulaciónde
númerosyecuacionesenel sigloIX.
Un algoritmoesuna serie de pasosorganizadosque describe el procesoque se debe seguir,
para dar solucióna unproblemaespecífico.
¿Tipos de algoritmos…?
Existendostiposyson llamadosasípor su naturaleza:
 Cualitativos:Son aquellosenlosque se describenlospasosutilizandopalabras.
 Cuantitativos:Son aquellosenlosque se utilizancálculosnuméricosparadefinir
lospasosdel proceso.
Lenguajes Algorítmicos
Un Lenguaje algorítmicoesunaserie de símbolosyreglasque se utilizanparadescribirde
maneraexplícitaunproceso.
Ejercicios de algorítmica.
Programación estructurada
P á g i n a 3 | 55
Tipos de Lenguajes Algorítmicos
 Gráficos:Es la representacióngráficade lasoperacionesque realizaunalgoritmo
(diagramade flujo).
 No Gráficos:Representaenformadescriptivalasoperacionesque debe realizar
un algoritmo(pseudocodigo).
inicio
edad:entero
escriba“cual estu edad?”
leaedad
si edad>=18 entonces
escriba“eresmayorde edad”
finsi
escriba“findel algoritmo”
fin
Metodología para la creación de algoritmos
Ahora que ya sabemos qué es un algoritmo, vamos a estudiar la metodología para la
solución de un problema mediante un ordenador. La creación de un algoritmo y su
programación es una etapa, pero como programador debes realizar varios pasos antes
y después.
El computador es una máquina que por sí sola no puede hacer nada, necesita ser
programada, es decir, introducirle instrucciones u órdenes que le digan lo que tiene
que hacer. Un programa es la solución a un problema inicial, así que todo comienza
allí: en el Problema. El proceso de programación es el siguiente: Dado un determinado
problema el programador debe idear una solución y expresarla usando un algoritmo
(aquí es donde entra a jugar); luego de esto, debe codificarlo en un determinado
lenguaje de programación y por último ejecutar el programa en el computador el cual
refleja una solución al problema inicial. Esto es a grandes rasgos lo que hace el
programador de computadores.
La parte que corresponde a este manual es la de: “Dado un determinado problema
debemos idear una solución y expresarla usando un ALGORITMO!”.
Ejercicios de algorítmica.
Programación estructurada
P á g i n a 4 | 55
Metodología para la solución de
problemas por mediode computadora
DEFINICIÓN DEL PROBLEMA
Esta fase está dada por el enunciado del problema, el cual requiere una definición clara
y precisa. Es importante que se conozca lo que se desea que realice la computadora;
mientras esto no se conozca del todo no tiene mucho caso continuar con la siguiente
etapa.
ANÁLISIS DEL PROBLEMA
Una vez que se ha comprendidoloque se deseade lacomputadora,esnecesariodefinir:
 Los datosde entrada.
 Cuál es lainformaciónque se deseaproducir(salida)
 Los métodosyfórmulasque se necesitanparaprocesarlosdatos.
Una recomendaciónmuyprácticaesel de colocarse enel lugarde la computadoray analizar
qué eslo que se necesitaque se ordene y enqué secuenciaparaproducirlosresultados
esperados.
DISEÑO DEL ALGORITMO
Las características de un buenalgoritmoson:
 Debe tenerunpuntoparticularde inicio.
 Debe serdefinido,nodebe permitirdoblesinterpretaciones.
 Debe sergeneral,esdecir, soportarlamayoría de las variantesque se puedan
presentarenladefinicióndelproblema.
 Debe serfinitoentamañoy tiempode ejecución.
 Diseñodel Algoritmo
 Pruebade escritoriooDepuración
Se denominapruebade escritorio a la comprobaciónque se hace de un algoritmoparasaber
si está bienhecho.Estapruebaconsiste entomardatos específicoscomoentradayseguirla
secuenciaindicadaenel algoritmohastaobtenerunresultado,el análisisde estosresultados
indicarási el algoritmoestácorrecto o si por el contrariohay necesidadde corregirloohacerle
ajustes.
Ejercicios de algorítmica.
Programación estructurada
P á g i n a 5 | 55
Entidades primitivas para el desarrollo de
algoritmos
Para el proceso de Algoritmos es necesario aprender a desarrollar un conjunto
de elementos.
Todos estos elementos con los cuales se construyen dichos algoritmos se basan
en una disciplina llamada: Programación Estructurada.
Empecemos por conocer las reglas para cambiar fórmulas matemáticas a
expresiones válidas para la computadora, además de diferenciar constantes e
identificadores y tipos de datos simples.
Tipos De Datos.
Todos los datos tienen un tipo asociado con ellos. Un dato puede ser un simple
carácter, tal como ‘b’, un valor entero tal como 35. El tipo de dato determina la
naturaleza del conjunto de valores que puede tomar una variable.
Tipos de Datos Simples.
DatosNuméricos:
Permitenrepresentarvaloresescalaresde formanumérica,estoincluye alosnúmerosenteros
y losreales.Este tipode datospermiten realizaroperacionesaritméticascomunes.
Ejercicios de algorítmica.
Programación estructurada
P á g i n a 6 | 55
Datoslógicos:
Son aquellosque solopuedentenerdosvalores(ciertoofalso) yaque representanel
resultadode unacomparaciónentre otrosdatos (numéricosoalfanuméricos).
Datosalfanuméricos (string):
Es una secuenciade caracteresalfanuméricosque permitenrepresentarvaloresidentificables
de forma descriptiva,estoincluyenombresde personas,direcciones,etc.Esposible
representarnúmeroscomoalfanuméricos,peroestospierdensupropiedadmatemática,es
decirno esposible haceroperacionesconellos.Este tipode datosse representanencerrados
entre comillas.
Identificadores.
Los identificadores representan los datos de un programa (constantes, variables,
tipos de datos). Un identificador es una secuencia de caracteres que sirve para
identificar una posición en la memoria de la computadora, que permite acceder a su
contenido.
Ejemplo:
» Nombre
» Num_hrs
» Calif2
Reglas para formar un identificador
 Debe comenzarcon unaletra(A a Z, mayúsculasominúsculas) ynodeben
contenerespaciosenblanco.
 Letras,dígitosy caracteres comola subraya( _ ) estánpermitidosdespuésdel
primercarácter.
 La longitudde identificadorespuede serde varioscaracteres.Peroes
recomendable unalongitudpromediode 8caracteres.
 El nombre del identificadordebe darunaideadel valorque contiene.
Ejercicios de algorítmica.
Programación estructurada
P á g i n a 7 | 55
Constantes,variablesy expresiones
Constantes
Una constante esun dato numéricooalfanuméricoque nocambiadurante laejecucióndel
programa.
Ejemplo:
pi = 3.1416
Variable
Es un espacio en la memoria de la computadora que permite almacenar
temporalmente un dato durante la ejecución de un proceso, su contenido puede
cambiar durante la ejecución del programa.
Para poder reconocer una variable en la memoria de la computadora, es
necesario darle un nombre con el cual podamos identificarla dentro de un algoritmo.
Ejemplo:
area = pi * radio ^ 2
Las variables son:el radio,el areay la constate espi
Clasificación de las Variables
Por su contenido
Variables Numéricas: Sonaquellasenlascualesse almacenanvaloresnuméricos,positivoso
negativos,esdeciralmacenannúmerosdel 0al 9, signos(+ y -) y el puntodecimal.
Ejemplo:
iva= 0.15 pi = 3.1416 costo= 2500
Ejercicios de algorítmica.
Programación estructurada
P á g i n a 8 | 55
Variables Lógicas: Sonaquellasque solopuedentenerdosvalores(ciertoofalso) estos
representanel resultadode unacomparaciónentre otrosdatos.
Variables Alfanuméricas: Estáformadaporcaracteresalfanuméricos(letras,númerosy
caracteresespeciales).
Ejemplo:
letra= ’a’ apellido=’lopez’ direccion =’Av.Libertad#190’
Por su uso
Variablesde Trabajo:Variablesque recibenel resultadode unaoperaciónmatemática
completayque se usannormalmente dentrode unprograma.
Ejemplo:
Suma = a + b /c
Contadores:Se utilizanparallevarel control del númerode ocasionesenque se realizauna
operaciónose cumple unacondición.Conlosincrementosgeneralmentede unoenuno.
Acumuladores:Formaque tomauna variable yque sirve parallevarlasuma acumulativade
una serie de valoresque se vanleyendoo calculandoprogresivamente.
Expresiones
Las expresiones son combinaciones de constantes, variables, símbolos de
operación, paréntesis y nombres de funciones especiales.
Por ejemplo:
a + (b+ 3) / c
Cada expresión toma un valor que se determina tomando los valores de las
variables y constantes implicadas y la ejecución de las operaciones indicadas.
Una expresión consta de operadores y operandos. Según sea el tipo de datos que
manipulan, se clasifican las expresiones en:
 Aritméticas
 Relacionales
 Lógicas
Ejercicios de algorítmica.
Programación estructurada
P á g i n a 9 | 55
Operadores y Operandos
Operadores
Son elementos que relacionan de forma diferente, los valores de una o mas
variables y/o constantes. Es decir, los operadores nos permiten manipular valores.
Operadores Aritméticos
Los operadores aritméticos permiten la realización de operaciones matemáticas
con los valores (variables y constantes).
Los operadores aritméticos pueden ser utilizados con tipos de datos enteros o
reales. Si ambos son enteros, el resultado es entero; si alguno de ellos es real, el
resultado es real.
Operadores Aritméticos
+ Suma
- Resta
* Multiplicación
/ División
mod Modulo (residuo de la división entera)
Ejemplos:
Expresión Resultado
7 / 2 3.5
12 mod 7 5
4 + 2 * 5 14
Ejercicios de algorítmica.
Programación estructurada
P á g i n a 10 | 55
Prioridadde los Operadores Aritméticos
Todas las expresiones entre paréntesis se evalúan primero. Las expresiones con
paréntesis anidados se evalúan de dentro a fuera, el paréntesis más interno se
evalúa primero.
Dentro de una misma expresión los operadores se evalúan en el siguiente
orden:
1. ^ Exponenciación
2. *, /, mod Multiplicación, división, modulo.
3. +, - Suma y resta.
Los operadores en una misma expresión con igual nivel de prioridad se evalúan
de izquierda a derecha.
Ejemplos:
4 + 2 * 5 = 14 23 * 2 / 5 = 9.2
3 + 5 * (10 - (2 + 4)) = 23 2.1 * (1.5 + 12.3) = 2.1 * 13.8 = 28.98
Operadores Relacionales
Se utilizan para establecer una relación entre dos valores. Luego compara estos
valores entre si y esta comparación produce un resultado de certeza o falsedad
(verdadero o falso).
Los operadores relacionales comparan valores del mismo tipo (numéricos o
cadenas). Estos tienen el mismo nivel de prioridad en su evaluación.
Los operadores relaciónales tiene menor prioridad que los aritméticos.
Tipos de operadores Relacionales
 > Mayor que
 < Menor que
 > = Mayor o igual que
 < = Menor o igual que
 < > Diferente
 = Igual
Ejemplos:
Si a = 10, b = 20, c = 30
a + b > c Falso
Ejercicios de algorítmica.
Programación estructurada
P á g i n a 11 | 55
a - b < c Verdadero
a - b = c Falso
a * b < > c Verdadero
Ejemplos no lógicos:
a < b < c
10 < 20 < 30
T > 5 < 30
(no es lógico porque tiene diferentes operandos)
Operadores Lógicos
Estos operadores se utilizan para establecer relaciones entre valores lógicos.
Estos valores pueden ser resultado de una expresión relacional.
Tipos de operadores Lógicos
And Y
Or O
Not Negación
Ejemplo:
Para los siguientes ejemplos T significa verdadero y F falso.
Operador Not Operador Not
Operando Resultado
T F
F T
Operador And Operador And
Operando1 Operador Operando2 Resultado
T AND T T
T F F
F T F
F F F
Ejercicios de algorítmica.
Programación estructurada
P á g i n a 12 | 55
Operador Or Operador Or
Operando1 Operador Operando2 Resultado
T Or T T
T F T
F T T
F F F
Prioridad de los Operadores Lógicos
1. Not
2. And
3. Or
Prioridad de los Operadores en General
1. ( )
2. ^
3. *, /, Mod, Not
4. +, -, And
5. >, <, > =, < =, < >, =, Or
Ejemplos:
Sea: a = 10 b = 12 c = 13 d =10
Ejercicios de algorítmica.
Programación estructurada
P á g i n a 13 | 55
Pseudocódigo, diagramas estructurados
y estructuras algorítmicas
Qué es el pseudocódigo y sus ventajas frente a los diagramas de flujos y las
definiciones de los diagramas estructurados y las estructuras algorítmicas.
Pseudocódigo.
Mezcla de lenguaje de programación y español (o ingles o cualquier otro idioma)
que se emplea, dentro de la programación estructurada, para realizar el diseño de un
programa. En esencial, el Pseudocódigo se puede definir como un lenguaje de
especificaciones de algoritmos.
En esencial, el Pseudocódigo se puede definir como un lenguaje de
especificaciones de algoritmos.
Es la representación narrativa de los pasos que debe seguir un algoritmo para dar
solución a un problema determinado. El Pseudocódigo utiliza palabras que indican el
proceso a realizar.
EstructurasAlgorítmicas
Las estructuras de operación de programas son un grupo de formas de trabajo, que
permiten, mediante la manipulación de variables, realizar ciertos procesos específicos
que nos lleven a la solución de problemas. Estas estructuras se clasifican de acuerdo
con su complejidad en:
Ejercicios de algorítmica.
Programación estructurada
P á g i n a 14 | 55
Estructuras secuenciales
Explicamos las estructuras secuenciales, cómo se representan en
pseudocódigo y algunos ejemplos prácticos de las mismas.
La estructura secuencial es aquella en la que una acción (instrucción) sigue a otra en
secuencia. Las tareas se suceden de tal modo que la salida de una es la entrada de la
siguiente y así sucesivamente hasta el fin del proceso.
En Pseudocódigo una Estructura Secuencial se representa de la siguiente forma:
Observe el siguiente problema de tipo cotidiano y sus respectivos algoritmos
representados en Pseudocódigo y en diagramas de flujos:
• Tengo un teléfono y necesito llamar a alguien pero no sé cómo hacerlo.
 El anterior ejemplo es
un sencillo algoritmo de
un problema cotidiano
dado como muestra de
una estructura
secuencial. Ahora
veremos los
componentes que
pertenecen a ella:
Ejercicios de algorítmica.
Programación estructurada
P á g i n a 15 | 55
Asignación
La asignación consiste, en el paso de valores o resultados a una zona de la
memoria. Dicha zona será reconocida con el nombre de la variable que recibe el
valor. La asignación se puede clasificar de la siguiente forma:
 Simples: Consiste en pasar un valor constante a una variable (a =15)
 Contador: Consiste en usarla como un verificador del número de veces
que se realiza un proceso (a = a + 1)
 Acumulador: Consiste en usarla como un sumador en un proceso (a = a +
b)
 De trabajo: Donde puede recibir el resultado de una operación
matemática que involucre muchas variables (a =c + b*2/4).
En general el formato a utilizar es el siguiente:
< Variable > = <valor o expresión >
El símbolo = debe leerse “asigne”.
Escritura o salida de datos
Consiste en mandar por un dispositivo de salida (p.ej. monitor o impresora) un
resultado o mensaje. Esta instrucción presenta en pantalla el mensaje escrito
entre comillas o el contenido de la variable. Este proceso se representa así como
sigue:
Lectura o entrada de datos
La lectura o entrada de datos consiste en recibir desde un dispositivo de entrada (p.ej.
el teclado) un valor o dato. Este dato va a ser almacenado en la variable que aparece a
continuación de la instrucción. Esta operación se representa así:
Ejercicios de algorítmica.
Programación estructurada
P á g i n a 16 | 55
DECLARACIÓN DE VARIABLES Y CONSTANTES
La declaración de variables es un proceso que consiste en listar al principio del
algoritmo todas las variables que se usarán, además de colocar el nombre de la
variable se debe decir qué tipo de variable es.
Contador: ENTERO
Edad, I: ENTERO
Direccion : CADENA_DE_CARACTERES
Salario_Basico : REAL
Opcion : CARACTER
En la anterior declaración de variables Contador, Edad e I son declaradas de tipo
entero; Salario_Basico es una variable de tipo real, Opcion es de tipo carácter y la
variable Direccion está declarada como una variable alfanumérica de cadena de
caracteres.
En el momento de declarar constantes debe indicarse que lo es y colocarse su
respectivo valor.
CONSTANTE Pi 3.14159
CONSTANTE Msg “Presione una tecla y continue”
CONSTANTE ALTURA 40
Cuando se trabaja con algoritmos por lo general no se acostumbra a declarar las
variables ni tampoco constantes debido a razones de simplicidad, es decir, no es
camisa de fuerza declarar las variables.
Sin embargo en este curso lo haremos para todos los algoritmos que realicemos,
con esto logramos hacerlos más entendibles y organizados y de paso permite
acostumbrarnos a declararlas ya que la mayoría de los lenguajes de programación
(entre ellos el C++) requieren que necesariamente se declaren las variables que se van
a usar en los programas.
Veamos algunos ejemplos donde se aplique todo lo que hemos visto hasta el momento
sobre algoritmos:
1. Ejemplo 1: Escriba un algoritmo que pregunte por dos números y muestre
como resultado la suma de estos. Use Pseudocódigo y diagrama de flujos.
Ejercicios de algorítmica.
Programación estructurada
P á g i n a 17 | 55
2. Ejemplo 2: Escriba un algoritmo que permita conocer el área de un triángulo a
partir de la base y la altura. Exprese el algoritmo usando Pseudocódigo y
diagrama de flujos.
Ejercicios de algorítmica.
Programación estructurada
P á g i n a 18 | 55
Ejercicios propuestos
Estructura Secuencial
3. Ingrese dos números y suma los dos e imprima el resultado
4. Ingrese su nombre y su apellido, imprimir los mismos en un mensaje.
5. Realizar la carga de dos números enteros por teclado e imprimir su suma y su
producto.
6. Escribir un programa que pregunte al usuario su nombre, y luego lo salude
7. Dados como datos cinco números obtener el promedio de los mismos e
informar el resultado.
8. Dados dos números enteros obtener su suma, resta, multiplicación y división.
9. Dadas las medidas de dos ángulos de un triángulo determinar la medida del
tercero e informar el resultado.
10. Solución que eleva un número al cuadrado y al cubo y lo presenta en dos
columnas.
11. Calcular el perímetro y área de un rectángulo dada su base y su altura.
12. Dados los catetos de un triángulo rectángulo, calcular su hipotenusa.
13. Escribir un programa que convierta un valor dado en grados Fahrenheit a
grados Celsius. Recordar que la fórmula para la conversión es:
C = (F-32)*
14. Dado como dato el valor del lado de un cuadrado calcular su perímetro y
su superficie, e imprimir los resultados.
15. Dado como dato el importe de una factura, calcular el valor correspondiente
al IVA. (10% del valor de venta).
16. Calcular el sueldo de un operario conociendo la cantidad de horas que trabajó
en el mes y el jornal horario. (Leer las horas trabajadas y el salario por hora.)
17. Dado el importe bruto de una factura calcular el resultado más una bonificación
de un 4%. Al monto obtenido calcularle el IVA (10%).
18. Finalmente informar el importe bruto, el valor con la Bonificación, el monto
correspondiente al IVA y el importe neto resultante.
19. En un estacionamiento cobran $/. 5000 por hora. Diseñe un algoritmo que
determine cuanto debe pagar un cliente por el estacionamiento de su vehículo,
conociendo el tiempo de estacionamiento en horas y minutos.
20. Un supermercado ha puesto en oferta la venta al por mayor de cierto
producto, ofreciendo un descuento del 15% por la compra de más de 3 docenas
y 10% en caso contrario. Además, por la compra de más de 3 docenas se
obsequia una unidad del producto por cada docena en exceso sobre 3. Diseñe
un algoritmo que determine el monto de la compra, el monto del descuento, el
Ejercicios de algorítmica.
Programación estructurada
P á g i n a 19 | 55
monto a pagar y el número de unidades de obsequio por la compra de cierta
cantidad de docenas del producto.
21. Diseñe un algoritmo que lea un número de tres cifras y determine si es igual al
revés del número.
22. Ingresar 3 valores en 3 variables X, Y y Z. Se desea obtener una rotación de
sus valores, es decir que el contenido de Z pase a X, el contenido de X pase a Y,
y el contenido de Y pase a Z. Mostrar luego las variables en el mismo orden en
que se ingresaron (X, Y, Z).
23. El promedio de prácticas de un curso se calcula en base a cuatro prácticas
calificadas de las cuales se elimina la nota menor y se promedian las tres notas
más altas. Diseñe un algoritmo que determine la nota eliminada y el promedio
de prácticas de un estudiante.
24. Diseñe un algoritmo que lea un número entero de 3 cifras, y forme el mayor
número posible con las cifras del número ingresado. El número formado debe
tener el mismo signo que el número ingresado.
25. Diseñe un algoritmo que reciba como entrada el número de cedula, el nombre
y apellido de una persona y su profesión y los imprima por pantalla.
26. Diseñe un algoritmo que pida por teclado dos números enteros y muestre su
suma, resta, multiplicación y división además de los números leídos.
27. Diseñe un programa lea la cantidad de alumnos de Redes, Contabilidad y
Diseño. Determine el porcentaje de alumnos de cada uno de los cursos.
28. Una institución educativa ha recibido una donación especial que será repartida
entre las carreras de (20%) Telecomunicaciones, (25%) Sistemas, (15%)
Administración y (40%), imprimir el monto correspondiente a cada uno.
29. Hallar A+B-C+100 (solicitar por pantalla las 3 variables)
30. Obtener x= (a-b)*(a+b)
31. Leer un número de 3 dígitos y sumarlos
32. Un proveedor de estéreos ofrece un descuento del 10% sobre el precio sin IVA,
de algún aparato si esta cuesta $2000 o más. Además, independientemente de
esto, ofrece un 5% de descuento si la marca es “NOSY”. Determinar cuánto
pagara, con IVA incluido, un cliente cualquiera por la compra de su aparato.
33. Se pide un algoritmo que pida que se ingresen tres notas y que genere el
promedio de las mismas
34. Hacer un algoritmo que pida se ingresen 2 números para sumarlos y un número
por el cual se desea dividir.
35. En este ejercicio se pide que se calcule el sueldo mensual de un trabajador
ingresando el número de horas trabajadas en el mes y el valor tanto como de
las horas normales de trabajo y las horas extra.
36. Calcular el Precio de Venta de un artículo. El Precio de venta se calcula
añadiéndoles al Costo del articulo una utilidad que se digita por el usuario
(En porcentaje), más el 10% del Impuesto de Ventas (IVA).Imprimir el Valor de
venta del artículo, el IVA y el Valor Total.
37. Dada una cantidad en Guaraníes, obtener la equivalencia en dólares,
asumiendo que la unidad cambiaria es un dato desconocido.
38. Realizar un algoritmo que permita calcular la masa.
Ejercicios de algorítmica.
Programación estructurada
P á g i n a 20 | 55
 La presión, el volumen y la temperatura de una masa de aire se
relacionan por la fórmula:
 Masa = (presión * volumen)/ (0.37 * (temperatura + 460))
39. Calcular la masa de aire de un neumático de un vehículo que está en
compostura en un servicio de alineación y balanceo.
40. Calcular el nuevo salario de un obrero si obtuvo un incremento del 25% sobre
su salario anterior.
41. En un hospital existen tres áreas: Ginecología, Pediatría, Traumatología. El
presupuesto anual del hospital se reparte conforme a la siguiente Tabla:
Área: % del presupuesto:
Ginecología 40%
Traumatología 30%
Pediatría 30%
42. El dueño de una tienda compra un artículo a un precio determinado. Obtener
el precio en que lo debe vender para obtener una ganancia del 30%.
43. Todos los lunes, miércoles y viernes, una persona corre la misma ruta y
cronometra los tiempos obtenidos. Determinar el tiempo promedio que la
persona tarda en recorrer la ruta en una semana cualquiera.
44. Tres personas deciden invertir su dinero para fundar una empresa. Cada una
de ellas invierte una cantidad distinta. Obtener el porcentaje que cada quien
invierte con respecto a la cantidad total invertida.
45. Un alumno desea saber cuál será su promedio general en las tres materias más
difíciles que cursa y cuál será el promedio que obtendrá en cada una de ellas.
Estas materias se evalúan como se muestra a continuación:
La calificaciónde Matemáticasse obtiene de lasig.Manera:
Examen90%
Promediode tareas10%
En estamateriase pidióuntotal de tres tareas.
La calificaciónde Físicase obtiene de lasig.Manera:
Examen80%
Promediode tareas20%
En estamateriase pidióun total de dos tareas.
La calificaciónde Químicase obtiene de lasig.Manera:
Examen85%
Promediode tareas15%
En estamateriase pidió untotal de tres tareas.
46. Leer el sueldo de tres empleados y aplicarles un aumento del 10, 12 y 15%
Calcularel total de lostressueldosnormales
El bonode cada uno
El total general de lostres.
Ejercicios de algorítmica.
Programación estructurada
P á g i n a 21 | 55
47. Escribir un programa que calcule el salario de un trabajador de la manera
siguiente.
El trabajador cobra un precio fijo por hora y se le descuento el 10%.
El programa debe pedir el nombre del trabajador, las horas trabajadas y el precio
que cobra por hora.
Como salida debe imprimir el sueldo bruto, el descuento y el salario a pagar.
48. Crear un programa que pida el precio de un artículo y calcule su valor
aplicándole un 10% de IVA.
49. Escribir un programa al cual ingrese la velocidad de un vehículo expresada en
kilómetros por hora imprima en pantalla la velocidad en millas por hora.
50. Un constructor sabe que necesita 0,5 metros cúbicos de arena por metro
cuadrado de revoque a realizar. Hacer un programa donde ingrese las medidas
de una pared (largo y alto) expresada en metros y obtenga la cantidad de arena
necesaria para revocarla.
51. Desarrollar un programa que dado el largo y el ancho de un campo, permita
determinar cuántos metros de alambre serán necesarios para colocarle al
perímetro 5 hilos de alambrado.
52. Suponga que un individuo desea invertir su capital en un banco y desea saber
cuánto dinero ganará después de determinados meses si el banco paga a razón
de 2% mensual.
53. Hallar A+B+C+100 Solicitar por pantalla A,B y C.
54. Hallar la sumatoria de 2+4+6+8
55. Una discoteca desea utilizar el ejercicio para leer la edad de una persona y
mostrar un mensaje que indique “Acceso denegado” si no es mayor de edad.
56. Calcular el Precio de Venta de un artículo. El Precio de venta se calcula
añadiéndoles al Costo del articulo una utilidad que se digita por el usuario (En
porcentaje), más el 10% del Impuesto de Ventas (IVA).Imprimir el Valor de
venta del artículo, el IVA y el Valor Total.
57. Hacer un algoritmo con pseudocódigo que pida que se ingresen 2 números para
sumarlos y un número por el cual se desea dividir. Imprimir todos los
resultados.
58. Se pide que se calcule el sueldo mensual de un trabajador ingresando el
número de horas trabajadas en el mes y el valor tanto como de las horas
normales de trabajo y las horas extra.
59. Escribir un programa que lea el radio de un circulo y a continuación visualice:
área del círculo y la longitud de la circunferencia del círculo.
60. Escribir un programa de desglose cierta cantidad de segundos introducida por
teclado en su equivalente en semanas, días, horas, minutos y segundos.
61. Desafío: Escribir un programa que exprese cierta cantidad de Guaraníes en
billetes y monedas de curso legal.
62. Escribir un programa para convertir una medida dada en pies a sus
equivalentes en: Yardas – Pulgadas – Centímetros – Metros.
63. Solución que calcula el área de un triángulo en función de sus lados
Ejercicios de algorítmica.
Programación estructurada
P á g i n a 22 | 55
64. Solución dados dos lados de un triángulo y el ángulo entre ellos se calcula el
tercer lado. Realizar un algoritmo que lo demuestre.
65. Calcula el Monto a devolver si nos prestan un capital c, a una tasa de interés t%
durante n periodos. Realizar un algoritmo que muestre.
66. Desafío: Escribir un programa para la conversión de grados sexagesimales a
radianes y Centesimales.
67. Escribir un programa que calcule el área del rombo.
68. Solución que determina el valor de un polinomio en función de x, a,b,c
69. Un vendedor recibe un sueldo base más un 10% extra por comisión de sus
ventas, el vendedor desea saber cuánto dinero obtendrá por concepto de
comisiones por las tres ventas que realiza en el mes y el total que recibirá en el
mes tomando en cuenta su sueldo base y comisiones.
70. Una tienda ofrece un descuento del 15% sobre el total de la compra y un
cliente desea saber cuánto deberá pagar por la compra de 4 artículos.
71. Desafío: Un alumno desea saber cuál será su calificación final en la materia de
Algoritmos. Dicha calificación se compone de los siguientes porcentajes:
55% del promedio de sus tres calificaciones parciales.
30% de la calificación del examen final.
15% de la calificación de un trabajo final.
72. Un maestro desea saber qué porcentaje de hombres y qué porcentaje de
mujeres hay en un grupo de alumnos.
73. Realice un diagrama de flujo y pseudocódigo que representen el algoritmo para
obtener el área de un triángulo.
74. Una empresa importadora desea determinar cuántos dólares puede adquirir
con equis cantidad de guaranís.
75. Una empresa que contrata personal requiere determinar la edad de las
personas que solicitan trabajo, pero cuando se les realiza la entrevista sólo se
les pregunta el año en que nacieron.
76. Se requiere determinar la hipotenusa de un triángulo rectángulo. Recuerde que
por Pitágoras se tiene que: C2 = A2 + B2.
77. La compañía de autobuses “La curva loca” requiere determinar el costo que
tendrá el boleto de un viaje sencillo, esto basado en los kilómetros por recorrer
y en el costo por kilómetro.
78. Se requiere determinar el tiempo que tarda una persona en llegar de una
ciudad a otra en bicicleta, considerando que lleva una velocidad constante.
79. Se requiere determinar el costo que tendrá realizar una llamada telefónica con
base en el tiempo que dura la llamada y en el costo por minuto.
80. La CON AGUA requiere determinar el pago que debe realizar una persona por
el total de metros cúbicos que consume de agua.
81. Desafío: La compañía de luz y sombras (CLS) requiere determinar el pago que
debe realizar una persona por el consumo de energía eléctrica, la cual se mide
en kilowatts (KW) y un consumo estimado de electrodomésticos investigar la
Ejercicios de algorítmica.
Programación estructurada
P á g i n a 23 | 55
tabla de consumo de por lo menos 5 equipos de uso doméstico y realizar los
cálculos.
82. Realice un diagrama de flujo y pseudocódigo que representen el algoritmo para
determinar cuánto pagará finalmente una persona por un artículo equis,
considerando que tiene un descuento de 20%, y debe pagar 15% de IVA (debe
mostrar el precio con descuento y el precio final).
83. Realice un algoritmo para determinar cuánto dinero ahorra una persona en un
año si considera que cada semana ahorra 15% de su sueldo (considere cuatro
semanas por mes y que no cambia el sueldo).
84. Una empresa desea determinar el monto de un cheque que debe proporcionar
a uno de sus empleados que tendrá que ir por equis número de días a otra
ciudad; los gastos que cubre la empresa son: hotel, comida y 100.000 Gs.
diarios para otros gastos. El monto debe estar desglosado para cada concepto
85. Desafío: Realice un algoritmo para confeccionar una prenda de vestir.
86. Desafío: Realice un algoritmo para preparar un pastel.
87. Realice el algoritmo que sea para encontrar el área de un cuadrado.
88. Realice un algoritmo para determinar el promedio que obtendrá un alumno
considerando que realiza tres exámenes, de los cuales el primero y el segundo
tienen una ponderación de 25%, mientras que el tercero de 50%.
89. Realice un algoritmo para determinar aproximadamente cuántos meses,
semanas, días y horas ha vivido una persona.
90. El hotel “Cama Arena” requiere determinar lo que le debe cobrar a un huésped
por su estancia en una de sus habitaciones, considerando precio base, más
servicios de comidas, bebidas y otros.
91. Calcular el factorial de un número (sin recursividad). Validar que el número esté
comprendido entre 1 y 40 y calcular la suma de los naturales menores que él.
92. Desafío: Ingresar una cantidad en sistema decimal y transformar a binario.
93. Ingresar una cantidad en binario y transformar al sistema decimal.
94. Desafío: Ingresar una cantidad en sistema decimal y transformar a
hexadecimal.
95. Ingresar una cantidad en octal y transformar a hexadecimal y decimal.
96. Una cajera necesita imprimir e ingresar el código y el precio de un producto.
También desea saber la cantidad y el total a cobrar.
97. Un cajero automático desea saber el total de dinero sustraído de su interior en
3 operaciones y necesita imprimir el nombre completo de la persona que retiró
el dinero.
98. Para crear una empresa de juegos de villar necesito controlar el total de las
fichas que se compran por día en una semana e imprimir la cantidad de lo
recaudado.
99. Imprimir el total de un producto de supermercado y averiguar el precio del
producto vendido.
100. Imprimir el nombre de los materiales que va a comprar, el precio unitario y la
cantidad de cuantos materiales lleva la empresa, imprimir el total.
Ejercicios de algorítmica.
Programación estructurada
P á g i n a 24 | 55
Estructura Selectiva / Condicionales
Las estructuras condicionales comparan una variable contra otro(s)valor (es), para que
en base al resultado de esta comparación, se siga un curso de acción dentro del
programa. Cabe mencionar que la comparación se puede hacer contra otra
variable o contra una constante, según se necesite. Existen tres tipos básicos, las
simples, las dobles y las múltiples.
Simples:
Las estructuras condicionales simples se les conocen como “Tomas de
decisión”. Estas tomas de decisión tienen la siguiente forma:
Pseudocódigo: Diagrama de flujo:
Dobles:
Las estructuras condicionales dobles permiten elegir entre dos opciones o
alternativas posibles en función del cumplimiento o no de una determinada
condición. Se representa de la siguiente forma:
Pseudocódigo: Diagrama de flujo:
Donde:
Si: Indica el comando de comparación
Condición: Indica la condición a evaluar
Entonces: Precede a las acciones a realizar cuando se cumple la condición
Ejercicios de algorítmica.
Programación estructurada
P á g i n a 25 | 55
Instrucción(es): Son las acciones a realizar cuando se cumple o no la condición
si no: Precede a las acciones a realizar cuando no se cumple la condición
Dependiendo de si la comparación es cierta o falsa, se pueden realizar una
o más acciones.
Múltiples:
Las estructuras de comparación múltiples, son tomas de decisión
especializadas que permiten comparar una variable contra distintos
posibles resultados, ejecutando para cada caso una serie de instrucciones
específicas. La forma común es la siguiente:
Pseudocódigo: Diagrama de flujo:
Múltiples (En caso de):
Las estructuras de comparación múltiples, es una toma de decisión
especializada que permiten evaluar una variable con distintos posibles
resultados, ejecutando para cada caso una serie de instrucciones
específicas. La forma es la siguiente:
Ejercicios de algorítmica.
Programación estructurada
P á g i n a 26 | 55
Pseudocódigo: Diagrama de flujo:
Veamos algunos ejemplos donde se aplique todo lo anterior:
101. Realizar un algoritmo en donde se pide la edad del usuario; si es mayor de edad
debe aparecer un mensaje indicándolo. Expresarlo en Pseudocódigo y
Diagrama de flujos.
Pseudocódigo: Diagrama de flujo:
Ejercicios de algorítmica.
Programación estructurada
P á g i n a 27 | 55
102. Se pide leer tres notas del alumno, calcular su definitiva en un rango de 0-5 y
enviar un mensaje donde diga si el alumno aprobó o reprobó el curso. Exprese
el algoritmo usando Pseudocódigo y diagrama de flujos.
Pseudocódigo:
INICIO
Not1, Not2, Not 3: REAL
Def: REAL
Imprimir“ingrese lasnotas”
leerNota1,Nota2,Nota3
Def = (Nota1+ Nota2 + Nota3) /3
Si Def < 3 entonces
imprimir“Reprobóel curso””
Sino
imprimir“aprobóel curso”””
Fin-Si
FIN
Diagrama de flujo:
Ejercicios de algorítmica.
Programación estructurada
P á g i n a 28 | 55
103. Se desea escribir un algoritmo que pida la altura de una persona, si la altura es
menor o igual a 150 cm envíe el mensaje: “Persona de altura baja”; si la altura
está entre 151 y 170 escriba el mensaje: “Persona de altura media” y si la altura
es mayor al 171 escriba el mensaje: “Persona alta”. Exprese el algoritmo
usando Pseudocódigo y diagrama de flujos.
Pseudocódigo:
INICIO
Altura: ENTERO
imprimir “Cuál es tu altura” ”
leer (Altura)
Si Altura <=150 entonces
imprimir “persona de altura baja”
Sino
Si Altura <=170 entonces
imprimir “persona de altura media””
Sino
Si Altura>170 ENTONCES
imprimir “persona alta”
Fin-Si
Fin-Si
Fin-Si
FIN
¡Es importante ser ordenado en el código que se escribe!
Diagrama de flujo:
Ejercicios de algorítmica.
Programación estructurada
P á g i n a 29 | 55
104. Dado un numero entre 1 y 7 escriba su correspondiente día de la semana así:
1- Lunes 2- Martes 3- Miércoles 4- Jueves 5- Viernes 6- Sábado 7- Domingo
Exprese el algoritmo usando Pseudocódigo y diagrama de flujos.
INICIO
Dia: ENTERO
imprimir “Diga un número para escribir su día””
leer(Dia)
En-caso-de Dia haga
Caso 1: imprimir “Lunes””
Caso 2: imprimir “Martes””
Caso 3: imprimir “Miércoles””
Caso 4: imprimir “Jueves””
Caso 5: imprimir “Viernes””
Caso 6: imprimir “Sábado””
Caso 7: imprimir “Domingo””
SINO: imprimir “Escribió un numero fuera del rango 1-7””
Fin-Caso
FIN
Diagrama de flujo:
Ejercicios de algorítmica.
Programación estructurada
P á g i n a 30 | 55
Estructura secuencial
Ejercicios que inician continúan de una sentencia en otra hasta llegar al
final
105. Leer 2 números; si son iguales que los multiplique, si el primero es mayor que el
segundo que los reste y si no que los sume.
106. Hacer un programa donde se ingrese la fecha actual y se compruebe si
corresponde al día de tu cumpleaños y mostrar un mensaje de felicitaciones.
107. Determinar el algoritmo para saber si un número es positivo negativo.
108. Leer tres números diferentes e imprimir el número mayor de los tres.
109. Hacer un algoritmo que lea dos números y diga cuál es el menor.
110. Hacer un algoritmo que lea tres números y diga cuál es menor y mayor.
111. Escribir un programa que determine de 3 números cual es el mayor.
112. Dado un número verificar si es positivo, negativo, nulo.
113. Crear un programa que diga si usted es mayor de edad.
114. Crear un programa que diga si usted es mayor de edad o menor de edad e
imprima su nombre y edad.
115. Escribir un programa que lea su nombre, apellidos, año de nacimiento y calcule
su edad.
116. Hacer un algoritmo que lea una letra y diga si es una vocal.
117. Hacer un algoritmo para calcular el promedio de tres notas y determinar si el
estudiante aprobó o no.
118. Se desea escribir los nombres de los días de la semana en función de la variable
numérica. 1- domingo … 7- sábado.
119. Se desea escribir los nombres de los días de la semana en función de la
variable de tipo carácter. d- domingo x- miércoles s- sábado.
120. Se lee una Nota de una materia (Nota de 1 a 5), imprimir de nota: en números y
letras. 1.Reprobado 2. Aceptable 3. Bueno. 4. Muy bueno. 5. Excelente.
121. Realice un algoritmo para determinar si una persona puede votar con base en
su edad en las próximas elecciones
122. Dado un numero verificar:
- Que tenga dos dígitos
- Verificar si sus dígitos son pares
- Promediar sus dígitos
123. En una fábrica de computadoras se planea ofrecer a los clientes un descuento
que dependerá del número de computadoras que compre. Si las computadoras
son menos de 5 se les dará un 10% de descuento sobre el total de la compra; si
el número de computadoras es mayor o igual a 5 pero menos de 10 se le otorga
un 20% de descuento; y si son 10 o más se les da un 40% de descuento. El
precio de cada computadora es de $500
124. Que pida un número del 1 al 7 y diga el día de la semana correspondientes
125. Que pida un número del 1 al 12 y diga el nombre del mes correspondiente.
Ejercicios de algorítmica.
Programación estructurada
P á g i n a 31 | 55
126. En una llantera se ha establecido una promoción de las llantas marca
“Ponchadas”, dicha promoción consiste en lo siguiente:
Si se compran menos de cinco llantas el precio es de $300 cada una, de $250 si
se compran de cinco a 10 y de $200 si se compran más de 10.
Obtener la cantidad de dinero que una persona tiene que pagar por cada una
de las llantas que compra y la que tiene que pagar por el total de la compra.
127. Determinar la cantidad de dinero que recibirá un trabajador por concepto de
las horas extras trabajadas en una empresa, sabiendo que cuando las horas de
trabajo exceden de 40, el resto se consideran horas extras y que estas se pagan
al doble de una hora normal cuando no exceden de 8; si las horas extras
exceden de 8 se pagan las primeras 8 al doble de lo que se pagan las horas
normales y el resto al triple.
128. Mostrar un menú. CALCULO DE EDAD. Menú. 1. Por año de nacimiento 2. Por
edad. Según el menú seleccionado en el menú 1 solicitar el año de nacimiento e
imprimir la edad actual, en la opción 2 solicitar la edad y calcular el año de
nacimiento.
129. Calcular la utilidad que un trabajador recibe en el reparto anual de utilidades si
a este se le asigna como un porcentaje de su salario mensual que depende de
su antigüedad en la empresa de acuerdo con la siguiente tabla:
Tiempo Utilidad
Menos de 1 año 5 % del salario
1 año o más y menos de 2 años 7% del salario
2 años o más y menos de 5 años 10% del salario
5 años o más y menos de 10 años 15% del salario
130. En un juego de preguntas a las que se responde “Si” o “No” gana quien
responda correctamente las tres preguntas. Al finalizar imprimir los aciertos. Si
se responde mal a cualquiera de ellas ya no se pregunta la siguiente y termina
el juego. Las preguntas son:
1. Colon descubrió América?
2. La independencia del Paraguay fue en el año 1810?
3. El Pájaro campana es la ave nacional del Paraguay?
131. En una tienda de descuento se efectúa una promoción en la cual se hace un
descuento sobre el valor de la compra total según el color de la tarjeta que el
cliente saque al pagar en caja. Si la tarjeta es de color blanco no se le hará
descuento alguno, si es verde se le hará un 10% de descuento, si es amarilla un
25%, si es azul un 50% y si es roja un 100%. Determinar la cantidad final que el
cliente deberá pagar por su compra. se sabe que solo hay tarjetas de los colores
mencionados.
132. En una escuela está organizando un viaje de estudios, y requiere determinar
cuánto debe cobrar a cada alumno y cuánto se debe pagar a la agencia de
viajes por el servicio. La forma de cobrar es la siguiente: si son 100 alumnos o
más, el importe por cada alumno es de 65000; de 50 a 99 alumnos, es de
70000, de 30 a 49, de 95000, y si son menos de 30, el importe del alquiler del
autobús es de 400000, sin importar el número de alumnos. Realiza un
algoritmo que permita determinar el pago a la agencia de alquiler de autobuses
y lo que debe pagar cada alumno por el viaje.
Ejercicios de algorítmica.
Programación estructurada
P á g i n a 32 | 55
133. Diseñe un algoritmo que lea tres longitudes y determine si forman o no un
triángulo. Si es un triángulo determine de qué tipo de triángulo se trata entre:
equilátero (si tiene tres lados iguales), isósceles (sitiene dos lados iguales) o
escaleno (si tiene tres lados desiguales). Considere que para formar un
triángulo se requiere que: "el lado mayor sea menor que la suma de los otros
dos lados".
134. Una compañía dedicada al alquiler de automóviles cobra un monto fijo de
$300000 para los primeros 300 km de recorrido. Para más de 300 km y hasta
1000 km, cobra un monto adicional de $ 15.000 por cada kilómetro en exceso
sobre 300. Para más de 1000 km cobra un monto adicional de $ 10.000 por
cada kilómetro en exceso sobre 1000. Los precios ya incluyen el 10% del
impuesto general a las ventas, IVA. Diseñe un algoritmo que determine el
monto a pagar por el alquiler de un vehículo y el monto incluido del impuesto.
135. Dado el promedio de semestre de un estudiante y el Valor de la Matricula,
determinar el total a pagar de matrícula teniendo en cuenta las siguientes
políticas:
136. Si el promedio está entre 8 y 9 aplicar un descuento del 25%.
137. En caso de ser mayor a 9 aplicar un descuento del 50%.
138. En caso de ser menor a 8 aplicar un descuento del 5%.
139. Una editorial tiene 3 tipos de clientes. Los datos suministrados para cada
pedido son: Código del Cliente, Tipo de cliente, Cantidad de libros, Costo por
Libro. Dependiendo del tipo de cliente se le hace un descuento al pedido
solicitado. Los descuentos que se realizan son: Tipo 1 Descuento del 20% sobre
el Valor total de la venta Tipo 2 Descuento del 10% sobre el Valor total de la
venta Tipo 3 Descuento del 5% sobre el Valor total de la venta Se realiza otro
descuento dependiendo de la cantidad de libros solicitados. Si el pedido es
mayor que 100 libros se le aplican un descuento adicional del 5%, si el pedido
es mayor que 300 el descuento será del 7%.
140. Desafío: Se leen dos fechas: Fecha inicial (Año Inicial, Mes Inicial, Día Inicial) y
Fecha final (Año Final, Mes Final, Día final). Calcular cuántos años, meses y días
ha transcurrido entre las dos fechas. Asumir año comercial y mes comercial (1
Año = 360 días, 1 Mes = 30 días). Nota: Realizarlo haciendo el proceso manual
de resta de días, meses y año.
141. En un almacén se hace un 18% de descuento a los clientes cuya compra supere
los $1000 ¿Cuál será la cantidad que pagara una persona por su compra?
142. Un obrero necesita calcular su salario semanal, el cual se obtiene de la sig.
manera:
Si trabaja 40 horas o menos se le paga $16 por hora
Si trabaja más de 40 horas se le paga $16 por cada una de las primeras 40 horas
y $20 por cada hora extra.
143. Un hombre desea saber cuánto dinero se genera por concepto de intereses
sobre la cantidad que tiene en inversión en el banco. El decidirá reinvertir los
intereses siempre y cuando estos excedan a $7000, y en ese caso desea saber
cuánto dinero tendrá finalmente en su cuenta.
144. Desafío a investigar: Dada una medida de tiempo expresada en horas, minutos
y segundos con valores arbitrarios, elabore un programa que transforme dicha
Ejercicios de algorítmica.
Programación estructurada
P á g i n a 33 | 55
medida en una expresión correcta. Por ejemplo, dada la medida 3h 118m 195s,
el programa deberá obtener como resultado 5h 1m 15s.
145. Una persona enferma, que pesa 70 kg, se encuentra en reposo y desea saber
cuántas calorías consume su cuerpo durante todo el tiempo que realice una
misma actividad. Las actividades que tiene permitido realizar son únicamente
dormir o estar sentado en reposo. Los datos que tiene son que estando
dormido consume 1.08 calorías por minuto y estando sentado en reposo
consume 1.66 calorías por minuto.
146. Hacer un algoritmo que imprima el nombre de un artículo, clave, precio original
y su precio con descuento. El descuento lo hace en base a la clave, si la clave es
01 el descuento es del 10% y si la clave es 02 el descuento en del 20% (solo
existen dos claves).
147. Hacer un algoritmo que calcule el total a pagar por la compra de camisas. Si se
compran tres camisas o más se aplica un descuento del 20% sobre el total de la
compra y si son menos de tres camisas un descuento del 10%
148. Una empresa quiere hacer una compra de varias piezas de la misma clase a una
fábrica de refacciones. La empresa, dependiendo del monto total de la compra,
decidirá qué hacer para pagar al fabricante.
Si el monto total de la compra excede de $500 000 la empresa tendrá la
capacidad de invertir de su propio dinero un 55% del monto de la compra,
pedir prestado al banco un 30% y el resto lo pagara solicitando un crédito al
fabricante.
Si el monto total de la compra no excede de $500 000 la empresa tendrá
capacidad de invertir de su propio dinero un 70% y el restante 30% lo pagara
solicitando crédito al fabricante.
El fabricante cobra por concepto de intereses un 20% sobre la cantidad que se
le pague a crédito.
149. Calcular el total que una persona debe pagar en una llantera, si el precio de
cada llanta es de $800 si se compran menos de 5 llantas y de $700 si se
compran 5 o más.
150. En un supermercado se hace una promoción, mediante la cual el cliente
obtiene un descuento dependiendo de un número que se escoge al azar. Si el
numero escogido es menor que 74 el descuento es del 15% sobre el total de la
compra, si es mayor o igual a 74 el descuento es del 20%. Obtener cuánto
dinero se le descuenta.
151. Calcular el número de pulsaciones que debe tener una persona por cada 10
segundos de ejercicio aeróbico; la fórmula que se aplica cuando el sexo es
femenino es:
núm. pulsaciones = (220 - edad)/10
y si el sexo es masculino:
núm. pulsaciones = (210 - edad)/10
152. En una escuela la colegiatura de los alumnos se determina según el número de
materias que cursan. El costo de todas las materias es el mismo.
Se ha establecido un programa para estimular a los alumnos, el cual consiste en
Ejercicios de algorítmica.
Programación estructurada
P á g i n a 34 | 55
lo siguiente: si el promedio obtenido por un alumno en el último periodo es
mayor o igual que 9, se le hará un descuento del 30% sobre la colegiatura y no
se le cobrara IVA; si el promedio obtenido es menor que 9 deberá pagar la
colegiatura completa, la cual incluye el 10% de IVA.
Obtener cuanto debe pagar un alumno.
153. Una empresa de bienes raíces ofrece casas de interés social, bajo las siguientes
condiciones: Si los ingresos del comprador son menores de $8000 o más el
enganche será del 15% del costo de la casa y el resto se distribuirá en pagos
mensuales, a pagar en diez años. Si los ingresos del comprador son menos de
$8000 o más el enganche será del 30% del costo de la casa y el resto se
distribuirá en pagos mensuales a pagar en 7 años.
La empresa quiere obtener cuanto debe pagar un comprador por concepto de
enganche y cuanto por cada pago parcial.
154. Una empresa ha establecido el programa SAR (Sistema de Ahorro para el
Retiro) que consiste en que los dueños de la empresa deben obligatoriamente
depositar en una cuenta bancaria un porcentaje del salario de los trabajadores;
adicionalmente los trabajadores pueden solicitar a la empresa que deposite
directamente una cuota fija o un porcentaje de su salario en la cuenta del SAR,
la cual le será descontada de su pago.
Un trabajador que ha decidido aportar a su cuenta del SAR desea saber la
cantidad total de dinero que estará depositado a esa cuenta cada mes, y el
pago mensual que recibirá.
155. Una persona desea iniciar un negocio, para lo cual piensa verificar cuánto
dinero le prestara el banco por hipotecar su casa. Tiene una cuenta bancaria,
pero no quiere disponer de ella a menos que el monto por hipotecar su casa
sea muy pequeño. Si el monto de la hipoteca es menor que $1 000 000
entonces invertirá el 50% de la inversión total y un socio invertirá el otro 50%.
Si el monto de la hipoteca es de $ 1 000 000 o más, entonces invertirá el monto
total de la hipoteca y el resto del dinero que se necesite para cubrir la inversión
total se repartirá a partes iguales entre el socio y el.
156. Una fábrica ha sido sometida a un programa de control de contaminación para
lo cual se efectúa una revisión de los puntos generados por la fábrica. El
programa de control de contaminación consiste en medir los puntos que emite
la fábrica en cinco días de una semana y si el promedio es superior a los 170
puntos entonces tendrá la sanción de parar su producción por una semana y
una multa del 50% de las ganancias diarias cuando no se detiene la producción.
Si el promedio obtenido de puntos es de 170 o menor entonces no tendrá ni
sanción ni multa. El dueño de la fábrica desea saber cuánto dinero perderá
después de ser sometido a la revisión.
157. Escribir un programa para intercambiar los valores de dos variables numéricas
(Que A tome el valor de B y B tome el valor de A).
158. En un experimento se obtuvieron un conjunto de pares de valores (s, v) y se
requiere que desarrolle un programa que permita imprime
159. Al ingresar un número entre 1 y 4 devolver la estación del año: 1) Primavera, 2)
Verano, 3) Otoño y 4) Invierno.
Ejercicios de algorítmica.
Programación estructurada
P á g i n a 35 | 55
160. Si se tiene el peso de dos animales: hipopótamo y un elefante, hacer un
programa que permita calcular cuál de los dos tiene el peso.
161. Escribir un programa que permita calcular el precio de una entrada al cine,
considerando lo siguiente:
 Si la personatiene menos de 18 añospagará 15000.
 Si la personatiene de 18 a 50 añospagará 25000.
 Si la personatiene másde 50 años pagará 30000.
162. Escribirunprograma querecibacomo datos tresnúmeros enteros yque verifique si
constituyen los lados de un triángulo. En caso afirmativo debe de mostrar el
siguiente mensaje: “SI ES UN TRIANGULO”, y en caso contrario “NO ES UN
TRIANGULO”
163. La aplicación deberá mostrar el promedio y también la cantidad de caritas
felices que lea signa el profesor por la nota obtenida .La cantidad de caritas
felices se asigna de la siguiente forma:
 Si el promedio es menor que 13, se le dice que “estudie”
 Si es mayor igual a 13 y menor a 15, el profesor le asigna una carita feliz y lo
felicita
 Si es mayor igual a 15 y menor a 20, dos caritas felices y lo felicita.
164. Se desea escribir los nombres de los días de la semana en función de la variable
numérica. 1- domingo … 7- sábado.
165. Se desea escribir los nombres de los días de la semana en función de la
variable de tipo carácter. d- domingo x- miércoles s- sábado.
166. Se desea escribir un algoritmo que pida la altura de una persona, si la altura es
menor o igual a 150cm envié el mensaje: “persona de altura baja”, si la altura
esta entre 151 y 170 escriba el mensaje: “persona de altura media” y si la altura
es mayor a 171 escriba el mensaje: “persona alta”. Exprese el algoritmo usando
el Pseudocódigo.
167. Hacer un algoritmo que lea un número y segurn
168. Hacer un programa que permita escoger un conjunto de nombres naturales:
cuales son menores a 15. Cuales son mayores a 50.
169. A partir de un carácter ingresado realizar la validación, si ingresa “M” o “F”
mostrar un mensaje que diga “Masculino” o “Femenino” respectivamente.
170. Solicitar el total de puntos (de 1 a 50) de un examen e imprimir la calificación
en número y letras según la siguiente escala: 1-41=1 Uno / 40-42=2 Dos / 43-
45=3 Tres / 46-48=4 Cuatro / 49-50=5 Cinco.
171. A partir de un carácter ingresado identificar si es vocal o consonante e imprimir
“vocal” o “consonante” respectivamente. (Considerando que el valor que
ingresa no es de otro tipo).
172. Hacer un algoritmo para una tienda de helado que da un descuento por
compra a sus clientes con membresía dependiendo de su tipo, sólo existen tres
tipos de membresía, tipo A, tipo B y tipo C. Los descuentos son los siguientes:
Tipo A 10% de descuento
Tipo B 15% de descuento
Tipo C 20% de descuento
Ejercicios de algorítmica.
Programación estructurada
P á g i n a 36 | 55
173. Realice un algoritmo para determinar el sueldo semanal de un trabajador con
base en las horas trabajadas y el pago por hora, considerando que después de
las 40 horas cada hora se considera como excedente y se paga el doble.
174. El 14 de febrero una persona desea comprarle un regalo al ser querido que más
aprecia en ese momento, su dilema radica en qué regalo puede hacerle, las
alternativas que tiene son las siguientes:
Regalo Costo
Tarjeta $10.00 o menos
Chocolates $11.00 a $100.00
Flores $101.00 a $250.00
Anillo Más de $251.00
Determinar qué regalo se le puede comprar a ese ser tan especial por el
día del amor y la amistad.
175. El dueño de un estacionamiento requiere un algoritmo que le permita
determinar cuánto debe cobrar por el uso del estacionamiento a sus clientes.
Las tarifas que se tienen son las siguientes:
Las dos primeras horas a $5000 c/u.
Las siguientes tres a $4000 c/u.
Las cinco siguientes a $3000 c/u.
Después de diez horas el costo por cada una es de $1000 c/u.
176. Realice un algoritmo para determinar el costo y el descuento que tendrá un
artículo. Considere que si su precio es mayor o igual a $200 se le aplica un
descuento de 15%, y si su precio es mayor a $100 pero menor a $200, el
descuento es de 12%, y si es menor a $100, sólo 10%.
177. Represente un algoritmo para determinar a qué lugar podrá ir de vacaciones
una persona, considerando que la línea de autobuses “La tortuga” cobra por
kilómetro recorrido. Se debe considerar el costo del pasaje tanto de ida, como
de vuelta; los datos que se conocen y que son fijos son:
178. México, 750 km; P.V., 800 km; Acapulco, 1200 km, y Cancún, 1800 km. También
se debe considerar la posibilidad de tener que quedarse en casa.
179. Realice un algoritmo que permita determinar el sueldo semanal de un
trabajador con base en las horas trabajadas y el pago por hora, considerando
que a partir de la hora número 41 y hasta la 45, cada hora se le paga el doble,
de la hora 46 a la 50, el triple, y que trabajar más de 50 horas no está
permitido.
Ejercicios de algorítmica.
Programación estructurada
P á g i n a 37 | 55
180. Los alumnos de una escuela desean realizar un viaje de estudios, pero
requieren determinar cuánto les costará el pasaje, considerando que las tarifas
del autobús son las siguientes:
181. Si son más de 100 alumnos, el costo es de $20; si son entre 50 y 100, $35; entre
20 y 49, $40, y si son menos de 20 alumnos, $70 por cada uno. Realice el
algoritmo para determinar el costo del pasaje de cada alumno.
182. Realice un algoritmo que, con base en una calificación proporcionada (0-10),
indique con letra la calificación que le corresponde: 10 es “A”, 9 es “B”, 8 es
“C”, 7 y 6 son “D”, y de 5 a 0 son “F”.
183. Ejercicio Leer la edad de un corredor e imprimir a que categoría pertenece. De
14 a 19=Juvenil / de 20 a 29: Ejecutivo / de 30 a 39: Master A / de 40 a 49:
Master B / de 50 a 59: Senior A / de 60 a n / Senior B
184. Desafío: Ejercicio Leer la edad y el sexo de una persona de un corredor e
imprimir a que categoría pertenecen. Pueden ser Masculinos y Femeninos
ambos con y el siguiente rango de edades 14 a 19=Juvenil / de 20 a 29:
Ejecutivo / de 30 a 39: Master A / de 40 a 49: Master B / de 50 a 59: Senior A /
de 60 a n / Senior B.
185. Realice un algoritmo que permitan determinar qué paquete se puede comprar
una persona con el dinero que recibirá en diciembre, considerando lo siguiente:
Paquete A. Si recibe $50,000 o más se comprará una televisión, un modular,
tres pares de zapatos, cinco camisas y cinco pantalones.
Paquete B. Si recibe menos de $50,000 pero más (o igual) de $20,000, se
comprará una grabadora, tres pares de zapatos, cinco camisas y cinco
pantalones.
Paquete C. Si recibe menos de $20,000 pero más (o igual) de $10,000, se
comprará dos pares de zapatos, tres camisas y tres pantalones.
Paquete D. Si recibe menos de $10,000, se tendrá que conformar con un par
de zapatos, dos camisas y dos pantalones.
186. Realice un algoritmo que permitan determinar la cantidad del bono navideño
que recibirá un empleado de una tienda, considerando que si su antigüedad es
mayor a cuatro años o su sueldo es menor de dos millones, le corresponderá 25
% de su sueldo, y en caso contrario sólo le corresponderá 20 % de éste.
187. La secretaria de salud requiere un algoritmo que permita determinar qué tipo
de vacuna (A, B o C) debe aplicar a una persona, considerando que si es mayor
de 70 años, sin importar el sexo, se le aplica la tipo C; si tiene entre 16 y 69
años, y es mujer, se le aplica la B, y si es hombre, la A; si es menor de 16 años,
se le aplica la tipo A, sin importar el sexo.
188. El banco “NdeViru” desea calcular para uno de sus clientes el saldo actual, el
pago mínimo y el pago para no generar intereses. Los datos que se conocen
son: saldo anterior del cliente, monto de las compras que realizó y el pago que
depositó en el corte anterior. Para calcular el pago mínimo se debe considerar
Ejercicios de algorítmica.
Programación estructurada
P á g i n a 38 | 55
15% del saldo actual, y para no generar intereses corresponde 85% del saldo
actual, considerando que este saldo debe incluir 12% de los intereses causados
por no realizar el pago mínimo y $200 por multa por el mismo motivo.
189. Ingresar un gran monto y calcular cuantas personas pueden ingresar al cine,
teniendo en cuenta que la entrada general esta S/. 25.000 por persona.
190. Dada la letra (f) o (m) escribir: femenino para (f) o masculino para (m).
191. Dado el sueldo de un trabajador, aplicar un aumento del 15% si el sueldo es
inferior o igual a $500.000 o del 10% si el sueldo es inferior o igual a $600.000.
192. Mostrar un menú con 4 opciones, 1. Suma 2. Resta 3. División 4. Multiplicación.
Realizar cada ejercicio según el número seleccionado por el usuario: Solicitando
dos números y realizando la operación.
193. Desafío: Solicitar el Nombre, edad, y mostrar un menú para elegir el sexo
M=Masculino F=Femenino, y menú para la ciudad 1. Asunción 2. Luque 3.
Mariano Roque Alonso 4. Limpio. Imprimir en el siguiente formato:
Ingrese su nombre: Juan Pérez
Edad: 17
¿Cuál es su sexo?: M=Masculino F=Femenino. M
¿En qué ciudad vive? 1. Asunción 2. Luque 3. Mariano Roque Alonso 4.
Limpio. 2
_.:: INFORME DE CLIENTE ::._
El cliente se llama Juan Pérez, es menor de edad y vive en Luque.
Muchas Gracias por registrarse…
194. Hacer un algoritmo para ayudar a un trabajador a saber cuál será su sueldo
semanal, se sabe que, si trabaja 40 horas o menos, se le pagará $20 por hora,
pero si trabaja más de 40 horas entonces las horas extras se le pagarán a $25
por hora.
Ejercicios de algorítmica.
Programación estructurada
P á g i n a 39 | 55
Estructura Repetitiva
Se llaman problemas repetitivos o cíclicos a aquellos en cuya solución es necesario
utilizar un mismo conjunto de acciones que se puedan ejecutar una cantidad
específica de veces. Esta cantidad puede ser fija (previamente determinada
por el programador) o puede ser variable (estar en función de algún dato
dentro del programa). Los ciclos se clasifican en:
Cicloscon un Número Determinado de Iteraciones
Para:
Son aquellos en que el número de iteraciones se conoce antes de ejecutarse el
ciclo. La forma de esta estructura es la siguiente:
Pseudocódigo
Para i=1 hasta i=10 incremento 1
Sentencias
Fin para
Dado un valor inicial “i” asignado a la variable esta se irá aumentando o
disminuyendo de acuerdo al incremento hasta llegar a i=10; si se omite
el paso, significa que la variable aumentará de uno en uno.
Ciclos con un Número Indeterminado de Iteraciones
Son aquellos en que el número de iteraciones no se conoce con
exactitud, ya que esta dado en función de un dato dentro del
programa.
Ejercicios de algorítmica.
Programación estructurada
P á g i n a 40 | 55
MientrasQue:
Esta es una estructura que repetirá un proceso durante “N” veces, donde “N” puede
ser fijo o variable. Para esto, la instrucción se vale de una condición que es la que debe
cumplirse para que se siga ejecutando. Cuando la condición ya no se cumple, entonces
ya no se ejecuta el proceso. La forma de esta estructura es la siguiente:
Pseudocódigo Diagrama de Flujos
Repita-Hasta:
Esta es una estructura similar en algunas características, a la anterior. Repite un
proceso una cantidad de veces, pero a diferencia del Mientras Que, el Repita-Hasta lo
hace hasta que la condición se cumple y no mientras, como en el Mientras Que. Por
otra parte, esta estructura permite realizar el proceso cuando menos una vez, ya que
la condición se evalúa al final del proceso, mientras que en el Mientras Que puede ser
que nunca llegue a entrar si la condición no se cumple desde un principio. La forma de
esta estructura es la siguiente:
Pseudocódigo Diagrama de Flujos
Ejercicios de algorítmica.
Programación estructurada
P á g i n a 41 | 55
195. Ejemplo 1:
Realizar un algoritmo que muestre los números de uno en uno hasta diez
usando una estructura Para. Exprese el algoritmo usando Pseudocódigo y
diagrama de flujos.
Pseudocódigo Diagrama de Flujos
196. Ejemplo 2:
Usando una estructura Mientras, realizar un algoritmo que escriba los números
de uno en uno hasta 20
Pseudocódigo Diagrama de Flujos
Ejercicios de algorítmica.
Programación estructurada
P á g i n a 42 | 55
197. Ejemplo 3:
Realizar un algoritmo que pregunte al usuario un número comprendido en el
rango de 1 a 5. El algoritmo deberá validar el número, de manera que no
continúe la ejecución del programa mientras no se escriba un número correcto.
Pseudocódigo Diagrama de Flujos
Ejercicios:
198. Imprimir los primero 5 números naturales.
199. Calcular e imprimir el cuadrado de los primero 10 números naturales.
200. Imprimir la sumatoria de todos los números de 1 al 100.
201. Imprimir todos los números pares del 2 al 50.
202. Imprimir todos los números del 15 al 1.
203. Crear un ciclo que pida su edad a 5 personas.
204. Solicitar el año de nacimiento y calcular la edad de 6 personas.
205. Un algoritmo para calcular la suma de 5 datos leídos por pantalla.
206. Solicitar los datos de cinco personas como: Nombre, apellido, edad, sexo y
teléfono. Luego imprimir.
207. Generar las series 1, 2, 3 ,4,5 …,23
208. Genera 5, 10, 15 ,20, 25, 30 ,35 ,40, 45…, n (n debe ser leído por pantalla)
209. Leer 5 números por teclado, elimine el mayor y el menor y promedie los 3
restantes. Imprima el resultado.
210. Dados seis números enteros determinar, el menor de ellos.
211. Elabora un programa que permita leer números pares comprendiendo entre 20
y 10 inclusive (orden descendente)
212. Desarrollar un programa que muestre la tabla de multiplicar de un número
ingresado por el teclado.
213. Hacer un algoritmo que imprima la tabla de multiplicar de los números del uno
nueve.
Ejercicios de algorítmica.
Programación estructurada
P á g i n a 43 | 55
214. Hacer un algoritmo que nos permita saber cuál es el número mayor y menor, se
debe ingresar sólo veinte números.
215. Hacer un algoritmo para calcular el resto y cociente por medio de restas
sucesivas.
216. Hacer un algoritmo para determinar la media de una lista indefinida de
números positivos, se debe acabar el programa al ingresar un número positivo.
217. Hacer un algoritmo para calcular la suma de los primeros cien números.
218. Desarrollar un programa que muestre la tabla de multiplicar de un numero
ingresado por el teclado.
219. Calcular el promedio de un alumno que tiene 7 calificaciones en la materia de
Diseño Estructurado de Algoritmos.
220. Un empleado de una empresa de telefonía debe imprimir la cantidad de
números telefónicos y los nombres de los portadores que retiran por día.
221. Leer 35 números y calcular la suma de sus cuadrados y la sumatoria de los
mismos.
222. Crear un programa que pida la edad de una persona y muestre su año de
nacimiento. Luego muestre una pregunta si desea cargar otra edad 1=Si / 2=No
y repetir el ciclo.
223. Leer 10 números y obtener su cubo y su cuarta. Mostrar un menú que permita
seleccionar cuál de los cálculos desea hacer.
224. Dado 6 números enteros determinar el menor de ellos. Repetir el ciclo hasta
que el usuario lo decida. Imprimir cuantas personas realizaron el ejercicio.
225. Leer 10 números e imprimir solamente los números positivos. Repetir el ciclo
hasta que el usuario lo decida. Imprimir cuantas personas realizaron el
ejercicio.
226. Leer 20 números e imprimir cuantos son positivos, cuantos negativos y cuantos
neutros. Repetir el ciclo hasta que el usuario lo decida. Imprimir cuantas
personas realizaron el ejercicio.
227. Leer 15 números negativos y convertirlos a positivos e imprimir dichos
números. Repetir el ciclo hasta que el usuario lo decida. Imprimir cuantas
personas realizaron el ejercicio.
228. Suponga que se tiene las calificaciones de un grupo de 40 alumnos. Realizar un
algoritmo para calcular la calificación media y la calificación más baja de todo el
grupo.
229. Calcular e imprimir la tabla de multiplicar de un número cualquiera. Imprimir el
multiplicando, el multiplicador y el producto.
230. Simular el comportamiento de un reloj digital, imprimiendo la hora, minutos y
segundos de un día desde las 0:00:00 horas hasta las 23:59:59 horas.
231. Calcular la suma de 10 números reales ingresados por teclado. Informar el
resultado.
232. Desafío: Una persona debe realizar un muestreo con 50 personas para
determinar el promedio de peso de los niños, jóvenes, adultos y viejos que
existen en su zona habitacional. Se determinan las categorías con base en la
sig., tabla:
CATEGORÍA EDAD
Niños 0 - 12
Ejercicios de algorítmica.
Programación estructurada
P á g i n a 44 | 55
Jóvenes 13 - 29
Adultos 30 - 59
Viejos 60 en adelante
233. Al cerrar un expendio de naranjas, 15 clientes que aún no han pagado recibirán
un 15% de descuento si compran más de 10 kilos. Determinar cuánto pagará
cada cliente y cuanto percibirá la tienda por esas compras.
234. Hacer un algoritmo para determinar la media de una lista indefinida de
números positivos, se debe acabar el programa al ingresar un número positivo
especificado con anterioridad.
235. Hacer un algoritmo que permita calcular la factorial de un número.
236. Hacer un algoritmo en para calcular la suma de los n primeros números.
237. Hacer un algoritmo para calcular la suma de los números impares menores o
iguales a n.
238. Hacer un algoritmo para realizar la suma de todos los números pares hasta el
100.
239. Hacer un algoritmo para calcular la factorial de un número de una forma
distinta.
240. Hacer un algoritmo para determinar la media de una lista indefinida de
números positivos, se debe acabar el programa al ingresar un número positivo.
241. Hacer un algoritmo para calcular la suma de los primeros cien números con
un ciclo repetir.
242. Hacer un programa que lea los resultados de los partidos de un equipo de
futbol ante sus adversarios y diga cuanto puntaje acumuló, cuantos goles a
favor tiene y cuantos goles en contra tiene:
243. Hacer una tabla del multiplicador en forma creciente, leer el numero por
pantalla, y repetir el ejercicio hasta que el usuario lo decida.
244. Crea un programa que pida al usuario un código de usuario y una contraseña.
Deberá repetirse hasta que el usuario sea "Admin" y la contraseña sea "1234".
245. Haz un programa que permita calcular la suma de pares de números. Pedirá
dos números al usuario y mostrará su suma, volviendo a repetir hasta que
ambos números introducidos sean 0. Utilizar estructura con condición inicial.
246. Haz un programa que permita calcular la suma de pares de números. Pedirá
dos números al usuario y mostrará su suma, volviendo a repetir hasta que
ambos números introducidos sean 0. Utilizar estructura con condición final.
247. Haz un programa que permita calcular la suma de pares de números. Pedirá
dos números al usuario y mostrará su suma, volviendo a repetir hasta que
ambos números introducidos sean 0. Utilizar estructura iterativa.
248. Prepara un programa que divida dos números que introduzca el usuario. Si el
segundo número es cero, se le deberá avisar y volver a pedir tantas veces como
sea necesario, hasta que introduzca un número distinto de cero, momento en
que se calculará y mostrará el resultado de la división.
249. Desafío: Crea una aplicación que permita adivinar un número. La aplicación
genera un número aleatorio del 1 al 100. A continuación, va pidiendo números
y va respondiendo si el número a adivinar es mayor o menor que el
introducido, además de los intentos que te quedan (tienes 10 intentos para
acertarlo). El programa termina cuando se acierta el número (además te dice
Ejercicios de algorítmica.
Programación estructurada
P á g i n a 45 | 55
en cuantos intentos lo has acertado), si se llega al límite de intentos te muestra
el número que había generado.
250. Escribe un programa que pida el límite inferior y superior de un intervalo. Si el
límite inferior es mayor que el superior lo tiene que volver a pedir. A
continuación se van introduciendo números hasta que introduzcamos el 0.
Cuando termine el programa dará las siguientes informaciones:
251. La suma de los números que están dentro del intervalo (intervalo abierto).
252. Cuantos números están fuera del intervalo.
253. He informa si hemos introducido algún número igual a los límites del intervalo.
254. Una empresa tiene el registro de las horas que trabaja diariamente un
empleado durante la semana (seis días) y requiere determinar el total de éstas,
así como el sueldo que recibirá por las horas trabajadas. Horas extra más de 8
horas al día. Solicitar por pantalla las horas trabajadas por cada dia.
255. Desafío: Se requiere clasificar a las personas que se jubilaran en el año. Existen
tres tipos de jubilaciones: por edad, por antigüedad joven y por antigüedad
adulta. Las personas adscritas a la jubilación por edad deben tener 60 años o
más y una antigüedad en su empleo de menos de 25 años. Las personas
adscritas a la jubilación por antigüedad joven deben tener menos de 60 años y
una antigüedad en su empleo de 25 años o más.
Las personas adscritas a la jubilación por antigüedad adulta deben tener 60
años o más y una antigüedad en su empleo de 25 años o más.
Determinar en qué tipo de jubilación, quedara adscrita una persona.
256. En una fábrica de computadoras se planea ofrecer a los clientes un descuento
que dependerá del número de computadoras que compre. Si las computadoras
son menos de cinco se les dará un 10% de descuento sobre el total de la
compra; si el número de computadoras es mayor o igual a cinco, pero menos
de diez se le otorga un 20% de descuento; y si son 10 o más se les da un 40% de
descuento. El precio de cada computadora es de $11,000
257. Crear un programa que cree un menú con opciones y realice los cálculos
mediante funciones, descritas en los siguientes 3 ejercicios. Repetir hasta que
el usuario desee salir.
258. Hacer un algoritmo para calcular la suma de los primeros cien números con
un ciclo repetir.
259. Hacer un algoritmo para calcular la suma de los primeros cien números con
un ciclo mientras.
260. Realizar un programa que promedie una lista indeterminada de números
reales, hasta que se introduzca un número negativo. Escriba el programa de
dos formas: usando el Repetir hasta.
261. Realizar un programa que promedie una lista indeterminada de números
reales, hasta que se introduzca un número negativo. Escriba el programa de
dos formas: usando el Mientras.
262. Suponga que se piden “X” cantidad prestados a un banco, con el acuerdo de
devolver “Y” cantidad cada mes hasta devolver el préstamo completo. Parte del
pago mensual serán intereses, calculados como la i por ciento del capital por
devolver en ese momento. El resto del pago mensual se aplica a reducir el
capital a devolver. El programa debe determinar:
Ejercicios de algorítmica.
Programación estructurada
P á g i n a 46 | 55
a.- La cantidad de intereses pagada cada mes.
b.- La cantidad de dinero aplicada cada mes al capital por devolver
c.- La cantidad acumulada de intereses pagados al final de cada mes.
d.- La cantidad del préstamo aún pendiente al final de cada mes.
e.- El número necesario de pagos mensuales para devolver el préstamo
completo.
f.- La cantidad del último pago (probablemente menor que Y)
263. Los surtidores de una gasolinera registran las ventas por galones, pero el precio
de la gasolina está fijada en litros.
264. El programa debe calcular lo que los clientes deben pagar y el total recaudado
por la gasolinera, tomando en cuenta lo Siguiente:
• Cada galón tiene 3,785 litros
• El precio del litro es para el Tipo A 6500, para el Tipo B 6000 y para el Tipo C
5500
El programa finaliza cuando el usuario lo decida.
265. Escriba un programa que lea un valor entero positivo y determine:
a) Si el entero es un número primo.
b) Si el entero es un número de Fibonacci. (Los números de Fibonacci forman
una secuencia en la cual cada número es igual a la suma de los dos anteriores,
siendo los dos primeros números iguales a 1).
266. En un centro de verificación de automóviles se desea saber el promedio de
puntos contaminantes de los primeros 25 automóviles que lleguen. Asimismo
se desea saber los puntos contaminantes del carro que menos contamino y del
que más contamino.
267. Un entrenador le ha propuesto a un atleta recorrer una ruta de cinco
kilómetros durante 10 días, para determinar si es apto para la prueba de 5
Kilómetros o debe buscar otra especialidad. Para considerarlo apto debe
cumplir por lo menos una de las siguientes condiciones:
- Que en ninguna de las pruebas haga un tiempo mayor a 16 minutos.
- Que al menos en una de las pruebas realice un tiempo mayor a 16 minutos.
- Que su promedio de tiempos sea menor o igual a 15 minutos.
Ejercicios de algorítmica.
Programación estructurada
P á g i n a 47 | 55
268. Un Zoólogo pretende determinar el porcentaje de animales que hay en las
siguientes tres categorías de edades: de 0 a 1 año, de más de 1 año y menos de
3 y de 3 o más años. El zoológico todavía no está seguro del animal que va a
estudiar. Si se decide por elefantes solo tomara una muestra de 20 de ellos; si
se decide por las jirafas, tomara 15 muestras, y si son chimpancés tomara 40.
269. Una compañía de seguros tiene contratados a n vendedores. Cada uno hace
tres ventas a la semana. Su política de pagos es que un vendedor recibe un
sueldo base, y un 10% extra por comisiones de sus ventas. El gerente de su
compañía desea saber cuánto dinero obtendrá en la semana cada vendedor
por concepto de comisiones por las tres ventas realizadas, y cuanto tomando
en cuenta su sueldo base y sus comisiones.
270. En una empresa se requiere calcular el salario semanal de cada uno de los n
obreros que laboran en ella. El salario se obtiene de la sig. Forma:
271. Si el obrero trabaja 40 horas o menos se le paga $20 por hora
272. Si trabaja más de 40 horas se le paga $20 por cada una de las primeras 40 horas
y $25 por cada hora extra.
273. Determinar cuántos hombres y cuantas mujeres se encuentran en un grupo de
n personas, suponiendo que los datos son extraídos alumno por alumno.
274. El Departamento de Seguridad Publica y Transito desea saber, de los n autos
que entran a la ciudad, cuantos entran con calcomanía de cada color.
Conociendo el último dígito de la placa de cada automóvil se puede determinar
el color de la calcomanía utilizando la siguiente relación:
DÍGITO COLOR
1 o 2 amarilla
3 o 4 rosa
5 o 6 roja
7 o 8 verde
9 o 0 azul
275. Obtener el promedio de calificaciones de un grupo de n alumnos. Leyendo tres
calificaciones por cada alumno (primero promediar por cada alumno y el
resultado promediar en general. Si en la última prueba obtuvo 1 se la
calificación del alumno es 1).
276. Una persona desea invertir su dinero en un banco, el cual le otorga un 2% de
interés. Cuál será la cantidad de dinero que esta persona tendrá al cabo de un
año si la ganancia de cada mes es reinvertida?
277. Calcular el promedio de edades de hombres, mujeres y de todo un grupo de
alumnos. Preguntar mediante un menú si se desea seguir cargando más
alumnos. Imprimir la cantidad de alumnos.
278. Calcular el promedio de edades de hombres, mujeres y de un grupo de 30
alumnos.
279. Crear una aplicación que muestre y ejecute, mediante funciones, los ejercicios
planteados en los 5 enunciados siguientes: repetir el programa hasta que el
usuario decida salir del programa.
280. Encontrar el menor valor de un conjunto de n números dados.
281. Encontrar el mayor valor de un conjunto de n números dados.
Ejercicios de algorítmica.
Programación estructurada
P á g i n a 48 | 55
282. Hacer un programa que cuente del uno al 10
283. Hacer un programa que pida un número y muestre los 10 siguientes números.
284. Hacer un programa que cuente del 20 a 1 en forma descendente
285. Hacer un programa que realice uno detrás de otro los ejercicios planteados en
los siguientes 6 enunciados mediante funciones, sumar todos los últimos
resultados de cada ejercicio y al final imprimir la sumatoria total de todos los
resultados. Repetir el ejercicio 4 veces.
286. Realiza un algoritmo que muestre por la pantalla la tabla de multiplicar dos en
forma creciente
287. Hallar la suma de los números enteros del 1 al 50
288. Diseña un algoritmo que me permita ingresar cualquier número y luego el
algoritmo deberá calcular los múltiplos menores que 10
289. Dado a, b determinar el valor de la división entera y el resto de la división
entera de a, b sin usar los operadores div y mod.
290. Mostrar solo la parte decimal de una división entre 2 números a y b sin usar div
mod.
291. Hacer un programa que calcule la suma, suma de cuadrados y suma de cubos
de los n primeros números naturales.
292. Crear un programa que muestre un menú de los siguientes 4 enunciados
repetir el ciclo hasta que el usuario decida salir, imprimir cuantas veces se
repitió el ciclo y cuantas veces se realizó cada enunciado.
293. Hacer un programa que muestre la tabla de multiplicar de numero 5 sin
mostrar el 25
294. Hacer un programa que sume los 10 pares que le siguen al 24
295. Hacer un programa que sume los 10 impares que le siguen al número n
296. Hacer un programa que sume los pares comprendidos entre 100 y 200.
297. Hacer un programa que permita la tabla de multiplicar del 1 al 9. Hacer un
programa que sume los diez primeros números pares, luego que sume los 10
primeros impares y muestre la diferencia de ambos.
298. Hacer un programa que sume los 10 números pares que le siguen a n, luego
que sume los 10 impares que le siguen a m, y muestre la diferencia entre
ambos resultados.
299. Desafío: Hacer un programa que muestre cuantos “lunes” hay entre las fechas
19 de septiembre del 2004 y el 25 de diciembre del mismo año
300. Desafío: Hacer un programa que muestre cuantos “lunes” hay entre las fechas
19 de septiembre del 2004 y el 25 de diciembre del mismo año, mostrando que
día cae lunes y el nombre del mes correspondiente de ese día
301. Se requiere saber cuál es la ciudad con la población de más personas y a qué
departamento pertenece, son tres departamentos y 11 ciudades.
302. Hacer un algoritmo para calcular la serie de Fibonacci.
303. Desafío: Hacer un algoritmo para conseguir el M.C.D de un número por medio
del algoritmo de Euclides.
304. Desafío: Hacer un algoritmo que cumpla con la aproximación del número pi con
la serie de Gregory-Leibniz. La fórmula que se debe aplicar es:
Pi = (4/1) - (4/3) + (4/5) - (4/7) + (4/9) - (4/11) + (4/13) - (4/15)
Ejercicios de algorítmica.
Programación estructurada
P á g i n a 49 | 55
Arreglos
Hasta ahora se han usado datos que representan valores de tipo simple como un
número entero, real ó carácter.
Sin embargo, en muchas situaciones se necesita procesar un conjunto de valores que
están relacionados entre sí por algún método, por ejemplo, una lista de
calificaciones, una serie de temperaturas.
Arreglos Unidimensionales - Vectores.
Un arreglo es una secuencia de posiciones consecutivas de memoria que almacenan
datos del mismo tipo. Estos datos comparten un nombre común.
En cuanto a su dimensión, los arreglos se pueden clasificar como :
UNIDIMENSIONALES:
Vector, lista, matriz de una dimensión.
Ej : Un vector denominado ventas, de 10 elementos, se puede representar como :
ventas[1] ventas[2] ventas[3] ……… ventas[10]
El subíndice de cada elemento designa su posición en la ordenación del vector. Se
observa que todos los elementos comparten el nombre y que cada elemento se
referencia por su subíndice o sea su posición relativa en el vector.
Declaraciónde un arreglo Unidimensional :
Estático :
tipo nombre [dimensión]
Ej : la instrucción entero x[8] declara un arreglo de nombre x, de 8 elementos de tipo
entero.
Ejercicios de algorítmica.
Programación estructurada
P á g i n a 50 | 55
BIDIMENSIONALES (TABLA, MATRIZ ) :
Se pueden considerar como un vector de vectores. En este caso se necesita especificar
dos subíndices para identificar cada elemento del arreglo : El primer subíndice se
refiere a las filas ( i ) y el segundo a las columnas ( j ) .
Declaración de un arreglo de dos dimensiones :
Estático:
tipo nombre [filas, coumnas]
Ej : entero A [3,3] declara un arreglo de datos tipo entero de 3 filas y tres columnas.
Almacenamiento de arreglos en memoria
Arreglos de Una y dos dimensiones se representan como se muestra:
Array unidimensional o vector
A[1] A[2] A[3] A[4] ... A[n]
Array bidimensional o matrices
A[1,1] A[1,2] A[1,3] A[1,4] ... A[1,n]
A[2,1] A[2,2] A[2,3] A[2,4] ... A[2,n]
A[3,1] A[3,2] A[3,3] A[3,4] ... A[3,n]
: : : : : :
A[m,1] A[m,2] A[m,3] A[m,4] A[m,n]
La memoria de la computadora es unidimensional, por lo que el almacenamiento de
Operaciones sobre arreglos
Las operaciones que se pueden realizar con arreglos durante el proceso de resolución
de un problema son:
Asignación
Ejercicios de algorítmica.
Programación estructurada
P á g i n a 51 | 55
Lectura / Escritura
Recorrido
Búsqueda
Ordenamiento.
Asignación :
La asignación de valores a un elemento de un arreglo se representa con la instrucción:
A[10] = 3 / asigna el valor 3 al elemento 10 del vector A
ventas[2,2] = 1500
Si se desea asignar valores a todos los elementos de un vector, se debe usar
estructuras de repetición.
Caso Unidimensional: Asignar el valor 6 a todos los elementos de un vector A[5]
repetir_desde ( i = 1; i <= 5 ; i=i+1)
A[i] = 6
fin_repetir_desde
Caso Bidimensional: Inicializar un vector B[2,3] con el valor cero.
repetir_desde ( i = 1; i <= 2 ; i=i+1)
repetir_desde ( j = 1; j <= 3 ; j=j+1)
B[i,j] = 0
fin_repetir_desde
fin_repetir_desde
Lectura / Escritura :
La lectura/escritura de datos en arreglos u operaciones de entrada/salida,
normalmente se realizan con estructuras repetitivas o selectivas. Las instrucciones
simples de lectura/escritura se representan como:
leer(Nombre_del_arreglo[Indice])
mostrar(Nombre_del_arreglo[Indice])
Ej : leer(X[3]) / Lee el elemento 3 del vector X
Ejercicios de algorítmica.
Programación estructurada
P á g i n a 52 | 55
Recorrido :
A la operación de efectuar alguna acción sobre todos los elementos del vector se le
llama recorrido. Estas operaciones se realizan usando estructuras de repetición,
cuyas variables de control se usan como índices del vector. Se puede realizar esta
operación para introducir datos al vector (leer) o para ver su contenido (mostrar).
305. Ejemplo 1: Lectura de los 10 valores de un vector P.
306. Ejemplo 2: El siguiente algoritmo lee las notas del primer examen de
Computación de una sección de 40 alumnos , a fin de calcular el promedio.
307. Si se deseara mostrar la cantidad de alumnos con notas superiores al promedio
se agregan las siguientes líneas al algoritmo anterior:
308. Ejemplo 3: Leer una matriz de dos dimensiones A[5,4].
Dado que es una matriz de dos dimensiones, se necesitan dos bucles anidados
para recorrer todos sus elementos.
Ejercicios de algorítmica.
Programación estructurada
P á g i n a 53 | 55
309. Ejemplo 4: Inicializar una matriz de dos dimensiones con valor constante 0.
El algoritmo debe asignar la constante 0 a todos los elementos de la matriz
A[5,4].
Dado que es una matriz de dos dimensiones, se necesitan dos bucles anidados
para recorrer todos sus elementos:
310. Ejemplo 5: Realizar la suma de dos matrices bidimensionales.
Para sumar dos matrices es preciso que las dos matrices tengan las mismas
dimensiones. La matriz suma[I,J] tendrá las mismas dimensiones de las matrices
sumandos y cada elemento será la suma de los mismos elementos
correspondientes en las matrices sumandos: suma[I,J] = A[I,J] + B[I,J].
Dado que las matrices son de dos dimensiones se requieren dos bucles anidados:
311. Ejemplo 6: Diseñar un algoritmo que genere una matriz identidad de orden n.
Ejercicios de algorítmica.
Programación estructurada
P á g i n a 54 | 55
La matriz identidad tiene todos los elementos de la diagonal principal igual a uno
(1), todos los demás elementos son igual a cero (0).
En los elementos de la diagonal principal I = J.
Ejercicios de Arreglos (Vectores)
ALGORITMOS DE VECTORES:
312. Hacer un algoritmo que permita cargar un vector con cinco números enteros y
determinar lo siguiente: ¿Cual es el número mayor? y ¿Cual es el número
menor?
313. Hacer un algoritmo que permita cargar un vector con cinco números enteros y
determinar, ¿Cuantos números primos existen en el vector?.
314. Hacer un algoritmo que permita cargar un vector con cinco números enteros y
determinar, ¿Cuantos números pares y cuantos números impares existen en el
vector?
315. Hacer un algoritmo que permita cargar un vector con cinco números enteros y
mostrar los elementos del vector ordenados ascendentemente.
316. Hacer un algoritmo que permita cargar un vector con cinco números enteros y
determinar. ¿Cuantos y cuales números se repiten?
317. Hacer un algoritmo que permita cargar dos vectores con cinco números
enteros cada uno y determinar lo siguiente: ¿Cual es el número mayor de los
dos vectores?
318. Hacer un algoritmo que permita cargar dos vectores con cinco números enteros
cada uno y cargar un tercer vector con la suma de los dos primeros.
319. Hacer un algoritmo que permita cargar dos vectores con cinco números enteros
cada uno y calcular el promedio de cada uno de ellos.
320. Hacer un algoritmo que permita cargar dos vectores con cinco números enteros
cada uno y determinar si existe un número en el primer vector repetido en el
segundo vector.
Ejercicios de algorítmica.
Programación estructurada
P á g i n a 55 | 55
321. Hacer un algoritmo que permita cargar dos vectores con cinco números enteros
cada uno y cargar otro vector con los números del primer vector y los del
segundo vector.
Ejercicios de matrices
322. Crear una matriz de 4 x 4. Y cargar los elementos por pantalla. Imprimir los
valores.
323. Crear una matriz de F x C. y cargar los elementos por pantalla. Sumar e imprimir
los valores.
324. Cargar una matriz de 5 x 5 por pantalla buscar el mayor valor.
325. Cargar una matriz de N x M por pantalla, buscar el menor valor y su posición.
326. Crear una matriz de n x m tamaño cargar los mismos por pantalla, sumar todos
sus valores e imprimir el promedio.
327. Cargar e imprimir una matriz de 5 x 6. Copiar todos sus valores en otra matriz
igual.
328. Cargar e imprimir una matriz de n x m. crear otra matriz y cargar en la misma el
cuadrado dé cada valor del primer arreglo.
329. Crear 3 arreglos, de n x m, cargar los primero 2 por pantalla y cargar el tercero
con la suma de los dos primeros.
330. Crear y cargar una matriz de n x m, crear otra matriz y cargar la otra matriz con
los datos de la primera en orden inverso.
331. Cargar una matriz de n x m, sumar todos los valores, hallar el máximo, mínimo
y promedio de los valores.

Más contenido relacionado

Similar a Estructura de datos Algorítmica

Algoritmo variables, constantes, tipos de datos y asignacion
Algoritmo variables, constantes, tipos de datos y asignacionAlgoritmo variables, constantes, tipos de datos y asignacion
Algoritmo variables, constantes, tipos de datos y asignacion
Boris Salleg
 
algoritmos y fundamentos de programacion
algoritmos y fundamentos de programacionalgoritmos y fundamentos de programacion
algoritmos y fundamentos de programacion
MIKE_INK_RM
 

Similar a Estructura de datos Algorítmica (20)

Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
Algoritmos 02
Algoritmos 02Algoritmos 02
Algoritmos 02
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
algortimos
algortimosalgortimos
algortimos
 
Algoritmo variables, constantes, tipos de datos y asignacion
Algoritmo variables, constantes, tipos de datos y asignacionAlgoritmo variables, constantes, tipos de datos y asignacion
Algoritmo variables, constantes, tipos de datos y asignacion
 
Conceptos de algoritmos
Conceptos de algoritmosConceptos de algoritmos
Conceptos de algoritmos
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
Trabajo de tecnología
Trabajo de tecnologíaTrabajo de tecnología
Trabajo de tecnología
 
algoritmos y fundamentos de programacion
algoritmos y fundamentos de programacionalgoritmos y fundamentos de programacion
algoritmos y fundamentos de programacion
 
Apartes De Algoritmos
Apartes De AlgoritmosApartes De Algoritmos
Apartes De Algoritmos
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
Algoritmos y programacion en C++
Algoritmos y programacion en C++Algoritmos y programacion en C++
Algoritmos y programacion en C++
 
Algoritmo
AlgoritmoAlgoritmo
Algoritmo
 
Algoritmo
AlgoritmoAlgoritmo
Algoritmo
 
Introducción a la Informática - Los Algoritmos
Introducción a la Informática - Los AlgoritmosIntroducción a la Informática - Los Algoritmos
Introducción a la Informática - Los Algoritmos
 
Tema n° 1
Tema n° 1Tema n° 1
Tema n° 1
 
ALGORITMO
ALGORITMOALGORITMO
ALGORITMO
 
Sistemas Tecnológicos
Sistemas TecnológicosSistemas Tecnológicos
Sistemas Tecnológicos
 
Guia no1 algoritmos
Guia no1 algoritmosGuia no1 algoritmos
Guia no1 algoritmos
 
Algoritmo Y Pseudocódigo
Algoritmo Y PseudocódigoAlgoritmo Y Pseudocódigo
Algoritmo Y Pseudocódigo
 

Último

Tema 14. Aplicación de Diagramas 26-05-24.pptx
Tema 14. Aplicación de Diagramas 26-05-24.pptxTema 14. Aplicación de Diagramas 26-05-24.pptx
Tema 14. Aplicación de Diagramas 26-05-24.pptx
Noe Castillo
 
PRÁCTICAS PEDAGOGÍA.pdf_Educación Y Sociedad_AnaFernández
PRÁCTICAS PEDAGOGÍA.pdf_Educación Y Sociedad_AnaFernándezPRÁCTICAS PEDAGOGÍA.pdf_Educación Y Sociedad_AnaFernández
PRÁCTICAS PEDAGOGÍA.pdf_Educación Y Sociedad_AnaFernández
Ruben53283
 
Ferias de ciencias y estrategia STEAM – PNFCyT 2024.pdf
Ferias de ciencias y estrategia STEAM – PNFCyT 2024.pdfFerias de ciencias y estrategia STEAM – PNFCyT 2024.pdf
Ferias de ciencias y estrategia STEAM – PNFCyT 2024.pdf
JudithRomero51
 
diagnostico final (1). analisis - encuestas
diagnostico final (1). analisis - encuestasdiagnostico final (1). analisis - encuestas
diagnostico final (1). analisis - encuestas
ansomora123
 

Último (20)

3.Conectores uno_Enfermería_EspAcademico
3.Conectores uno_Enfermería_EspAcademico3.Conectores uno_Enfermería_EspAcademico
3.Conectores uno_Enfermería_EspAcademico
 
Lección 1: Los complementos del Verbo ...
Lección 1: Los complementos del Verbo ...Lección 1: Los complementos del Verbo ...
Lección 1: Los complementos del Verbo ...
 
TRABAJO CON TRES O MAS FRACCIONES PARA NIÑOS
TRABAJO CON TRES O MAS FRACCIONES PARA NIÑOSTRABAJO CON TRES O MAS FRACCIONES PARA NIÑOS
TRABAJO CON TRES O MAS FRACCIONES PARA NIÑOS
 
Tema 14. Aplicación de Diagramas 26-05-24.pptx
Tema 14. Aplicación de Diagramas 26-05-24.pptxTema 14. Aplicación de Diagramas 26-05-24.pptx
Tema 14. Aplicación de Diagramas 26-05-24.pptx
 
PRESENTACION DE LA SEMANA NUMERO 8 EN APLICACIONES DE INTERNET
PRESENTACION DE LA SEMANA NUMERO 8 EN APLICACIONES DE INTERNETPRESENTACION DE LA SEMANA NUMERO 8 EN APLICACIONES DE INTERNET
PRESENTACION DE LA SEMANA NUMERO 8 EN APLICACIONES DE INTERNET
 
PRÁCTICAS PEDAGOGÍA.pdf_Educación Y Sociedad_AnaFernández
PRÁCTICAS PEDAGOGÍA.pdf_Educación Y Sociedad_AnaFernándezPRÁCTICAS PEDAGOGÍA.pdf_Educación Y Sociedad_AnaFernández
PRÁCTICAS PEDAGOGÍA.pdf_Educación Y Sociedad_AnaFernández
 
Análisis de la situación actual .La Matriz de Perfil Competitivo (MPC)
Análisis de la situación actual .La Matriz de Perfil Competitivo (MPC)Análisis de la situación actual .La Matriz de Perfil Competitivo (MPC)
Análisis de la situación actual .La Matriz de Perfil Competitivo (MPC)
 
Módulo No. 1 Salud mental y escucha activa FINAL 25ABR2024 técnicos.pptx
Módulo No. 1 Salud mental y escucha activa FINAL 25ABR2024 técnicos.pptxMódulo No. 1 Salud mental y escucha activa FINAL 25ABR2024 técnicos.pptx
Módulo No. 1 Salud mental y escucha activa FINAL 25ABR2024 técnicos.pptx
 
Portafolio de servicios Centro de Educación Continua EPN
Portafolio de servicios Centro de Educación Continua EPNPortafolio de servicios Centro de Educación Continua EPN
Portafolio de servicios Centro de Educación Continua EPN
 
Ferias de ciencias y estrategia STEAM – PNFCyT 2024.pdf
Ferias de ciencias y estrategia STEAM – PNFCyT 2024.pdfFerias de ciencias y estrategia STEAM – PNFCyT 2024.pdf
Ferias de ciencias y estrategia STEAM – PNFCyT 2024.pdf
 
4.Conectores Dos_Enfermería_Espanolacademico
4.Conectores Dos_Enfermería_Espanolacademico4.Conectores Dos_Enfermería_Espanolacademico
4.Conectores Dos_Enfermería_Espanolacademico
 
PROYECTO INTEGRADOR ARCHIDUQUE. presentacion
PROYECTO INTEGRADOR ARCHIDUQUE. presentacionPROYECTO INTEGRADOR ARCHIDUQUE. presentacion
PROYECTO INTEGRADOR ARCHIDUQUE. presentacion
 
Creación WEB. Ideas clave para crear un sitio web
Creación WEB. Ideas clave para crear un sitio webCreación WEB. Ideas clave para crear un sitio web
Creación WEB. Ideas clave para crear un sitio web
 
Presentación Propuesta de Proyecto Social Colorido y Juvenil Multicolor y Neg...
Presentación Propuesta de Proyecto Social Colorido y Juvenil Multicolor y Neg...Presentación Propuesta de Proyecto Social Colorido y Juvenil Multicolor y Neg...
Presentación Propuesta de Proyecto Social Colorido y Juvenil Multicolor y Neg...
 
Proceso de gestión de obras - Aquí tu Remodelación
Proceso de gestión de obras - Aquí tu RemodelaciónProceso de gestión de obras - Aquí tu Remodelación
Proceso de gestión de obras - Aquí tu Remodelación
 
Fase 1, Lenguaje algebraico y pensamiento funcional
Fase 1, Lenguaje algebraico y pensamiento funcionalFase 1, Lenguaje algebraico y pensamiento funcional
Fase 1, Lenguaje algebraico y pensamiento funcional
 
Proyecto integrador Vereda Cujacal Centro.pptx
Proyecto integrador Vereda Cujacal Centro.pptxProyecto integrador Vereda Cujacal Centro.pptx
Proyecto integrador Vereda Cujacal Centro.pptx
 
PLAN DE TRABAJO CONCURSO NACIONAL CREA Y EMPRENDE.docx
PLAN DE TRABAJO CONCURSO NACIONAL CREA Y EMPRENDE.docxPLAN DE TRABAJO CONCURSO NACIONAL CREA Y EMPRENDE.docx
PLAN DE TRABAJO CONCURSO NACIONAL CREA Y EMPRENDE.docx
 
diagnostico final (1). analisis - encuestas
diagnostico final (1). analisis - encuestasdiagnostico final (1). analisis - encuestas
diagnostico final (1). analisis - encuestas
 
Proceso de admisiones en escuelas infantiles de Pamplona
Proceso de admisiones en escuelas infantiles de PamplonaProceso de admisiones en escuelas infantiles de Pamplona
Proceso de admisiones en escuelas infantiles de Pamplona
 

Estructura de datos Algorítmica

  • 1. z EJERCITARIO Introducción a los Algoritmos. Programación estructurada.
  • 2. Ejercicios de algorítmica. Programación estructurada P á g i n a 1 | 55 ALGORITMOS Introducción a los Algoritmos Programación estructurada Estructuras elementales de programación Definiciones elementales EJERCICIOS PRÁCTICOS El presente documento es un compilado de ejercicios prácticos, con sus bases teóricas elementales, con el objeto de que sea utilizado como recurso didáctico para el desarrollo de las materias técnicas de algorítmica y otras relacionadas a la lógica de programación. Este material es realizado por los alumnos del Primer curso del Bachillerato Técnico en Informática del Colegio Técnico San Francisco, en el desarrollo de los trabajos de la materia “Algorítmica” durante año lectivo 2019. Damos gracias a Dios A nuestros padres y maestros Por el apoyo incondicional y la confianza depositada en nosotros.
  • 3. Ejercicios de algorítmica. Programación estructurada P á g i n a 2 | 55 Algorítmica y programación Presentación El desarrollo de algoritmos es un tema fundamental en el diseño de programas o soluciones lógicas informáticas y es la base de toda la programación en general. Por lo cual, el alumno debe tener buenas bases que le sirvan para poder crear de manera fácil y rápida sus programas. La siguiente documentación tiene como objetivo el de servir de apoyo al estudiante, facilitarle el desarrollo de su capacidad analítica y creadora, para de esta manera mejorar su destreza en la elaboración de algoritmos que sirven como base para la codificación de los diferentes programas que tendrá que desarrollar a lo largo de su carrera. ¿Qué es algoritmo? La palabraalgoritmose derivade latraducciónal latínde lapalabra árabe alkhowarizmi, nombre de un matemáticoyastrónomoárabe que escribióuntratado sobre manipulaciónde númerosyecuacionesenel sigloIX. Un algoritmoesuna serie de pasosorganizadosque describe el procesoque se debe seguir, para dar solucióna unproblemaespecífico. ¿Tipos de algoritmos…? Existendostiposyson llamadosasípor su naturaleza:  Cualitativos:Son aquellosenlosque se describenlospasosutilizandopalabras.  Cuantitativos:Son aquellosenlosque se utilizancálculosnuméricosparadefinir lospasosdel proceso. Lenguajes Algorítmicos Un Lenguaje algorítmicoesunaserie de símbolosyreglasque se utilizanparadescribirde maneraexplícitaunproceso.
  • 4. Ejercicios de algorítmica. Programación estructurada P á g i n a 3 | 55 Tipos de Lenguajes Algorítmicos  Gráficos:Es la representacióngráficade lasoperacionesque realizaunalgoritmo (diagramade flujo).  No Gráficos:Representaenformadescriptivalasoperacionesque debe realizar un algoritmo(pseudocodigo). inicio edad:entero escriba“cual estu edad?” leaedad si edad>=18 entonces escriba“eresmayorde edad” finsi escriba“findel algoritmo” fin Metodología para la creación de algoritmos Ahora que ya sabemos qué es un algoritmo, vamos a estudiar la metodología para la solución de un problema mediante un ordenador. La creación de un algoritmo y su programación es una etapa, pero como programador debes realizar varios pasos antes y después. El computador es una máquina que por sí sola no puede hacer nada, necesita ser programada, es decir, introducirle instrucciones u órdenes que le digan lo que tiene que hacer. Un programa es la solución a un problema inicial, así que todo comienza allí: en el Problema. El proceso de programación es el siguiente: Dado un determinado problema el programador debe idear una solución y expresarla usando un algoritmo (aquí es donde entra a jugar); luego de esto, debe codificarlo en un determinado lenguaje de programación y por último ejecutar el programa en el computador el cual refleja una solución al problema inicial. Esto es a grandes rasgos lo que hace el programador de computadores. La parte que corresponde a este manual es la de: “Dado un determinado problema debemos idear una solución y expresarla usando un ALGORITMO!”.
  • 5. Ejercicios de algorítmica. Programación estructurada P á g i n a 4 | 55 Metodología para la solución de problemas por mediode computadora DEFINICIÓN DEL PROBLEMA Esta fase está dada por el enunciado del problema, el cual requiere una definición clara y precisa. Es importante que se conozca lo que se desea que realice la computadora; mientras esto no se conozca del todo no tiene mucho caso continuar con la siguiente etapa. ANÁLISIS DEL PROBLEMA Una vez que se ha comprendidoloque se deseade lacomputadora,esnecesariodefinir:  Los datosde entrada.  Cuál es lainformaciónque se deseaproducir(salida)  Los métodosyfórmulasque se necesitanparaprocesarlosdatos. Una recomendaciónmuyprácticaesel de colocarse enel lugarde la computadoray analizar qué eslo que se necesitaque se ordene y enqué secuenciaparaproducirlosresultados esperados. DISEÑO DEL ALGORITMO Las características de un buenalgoritmoson:  Debe tenerunpuntoparticularde inicio.  Debe serdefinido,nodebe permitirdoblesinterpretaciones.  Debe sergeneral,esdecir, soportarlamayoría de las variantesque se puedan presentarenladefinicióndelproblema.  Debe serfinitoentamañoy tiempode ejecución.  Diseñodel Algoritmo  Pruebade escritoriooDepuración Se denominapruebade escritorio a la comprobaciónque se hace de un algoritmoparasaber si está bienhecho.Estapruebaconsiste entomardatos específicoscomoentradayseguirla secuenciaindicadaenel algoritmohastaobtenerunresultado,el análisisde estosresultados indicarási el algoritmoestácorrecto o si por el contrariohay necesidadde corregirloohacerle ajustes.
  • 6. Ejercicios de algorítmica. Programación estructurada P á g i n a 5 | 55 Entidades primitivas para el desarrollo de algoritmos Para el proceso de Algoritmos es necesario aprender a desarrollar un conjunto de elementos. Todos estos elementos con los cuales se construyen dichos algoritmos se basan en una disciplina llamada: Programación Estructurada. Empecemos por conocer las reglas para cambiar fórmulas matemáticas a expresiones válidas para la computadora, además de diferenciar constantes e identificadores y tipos de datos simples. Tipos De Datos. Todos los datos tienen un tipo asociado con ellos. Un dato puede ser un simple carácter, tal como ‘b’, un valor entero tal como 35. El tipo de dato determina la naturaleza del conjunto de valores que puede tomar una variable. Tipos de Datos Simples. DatosNuméricos: Permitenrepresentarvaloresescalaresde formanumérica,estoincluye alosnúmerosenteros y losreales.Este tipode datospermiten realizaroperacionesaritméticascomunes.
  • 7. Ejercicios de algorítmica. Programación estructurada P á g i n a 6 | 55 Datoslógicos: Son aquellosque solopuedentenerdosvalores(ciertoofalso) yaque representanel resultadode unacomparaciónentre otrosdatos (numéricosoalfanuméricos). Datosalfanuméricos (string): Es una secuenciade caracteresalfanuméricosque permitenrepresentarvaloresidentificables de forma descriptiva,estoincluyenombresde personas,direcciones,etc.Esposible representarnúmeroscomoalfanuméricos,peroestospierdensupropiedadmatemática,es decirno esposible haceroperacionesconellos.Este tipode datosse representanencerrados entre comillas. Identificadores. Los identificadores representan los datos de un programa (constantes, variables, tipos de datos). Un identificador es una secuencia de caracteres que sirve para identificar una posición en la memoria de la computadora, que permite acceder a su contenido. Ejemplo: » Nombre » Num_hrs » Calif2 Reglas para formar un identificador  Debe comenzarcon unaletra(A a Z, mayúsculasominúsculas) ynodeben contenerespaciosenblanco.  Letras,dígitosy caracteres comola subraya( _ ) estánpermitidosdespuésdel primercarácter.  La longitudde identificadorespuede serde varioscaracteres.Peroes recomendable unalongitudpromediode 8caracteres.  El nombre del identificadordebe darunaideadel valorque contiene.
  • 8. Ejercicios de algorítmica. Programación estructurada P á g i n a 7 | 55 Constantes,variablesy expresiones Constantes Una constante esun dato numéricooalfanuméricoque nocambiadurante laejecucióndel programa. Ejemplo: pi = 3.1416 Variable Es un espacio en la memoria de la computadora que permite almacenar temporalmente un dato durante la ejecución de un proceso, su contenido puede cambiar durante la ejecución del programa. Para poder reconocer una variable en la memoria de la computadora, es necesario darle un nombre con el cual podamos identificarla dentro de un algoritmo. Ejemplo: area = pi * radio ^ 2 Las variables son:el radio,el areay la constate espi Clasificación de las Variables Por su contenido Variables Numéricas: Sonaquellasenlascualesse almacenanvaloresnuméricos,positivoso negativos,esdeciralmacenannúmerosdel 0al 9, signos(+ y -) y el puntodecimal. Ejemplo: iva= 0.15 pi = 3.1416 costo= 2500
  • 9. Ejercicios de algorítmica. Programación estructurada P á g i n a 8 | 55 Variables Lógicas: Sonaquellasque solopuedentenerdosvalores(ciertoofalso) estos representanel resultadode unacomparaciónentre otrosdatos. Variables Alfanuméricas: Estáformadaporcaracteresalfanuméricos(letras,númerosy caracteresespeciales). Ejemplo: letra= ’a’ apellido=’lopez’ direccion =’Av.Libertad#190’ Por su uso Variablesde Trabajo:Variablesque recibenel resultadode unaoperaciónmatemática completayque se usannormalmente dentrode unprograma. Ejemplo: Suma = a + b /c Contadores:Se utilizanparallevarel control del númerode ocasionesenque se realizauna operaciónose cumple unacondición.Conlosincrementosgeneralmentede unoenuno. Acumuladores:Formaque tomauna variable yque sirve parallevarlasuma acumulativade una serie de valoresque se vanleyendoo calculandoprogresivamente. Expresiones Las expresiones son combinaciones de constantes, variables, símbolos de operación, paréntesis y nombres de funciones especiales. Por ejemplo: a + (b+ 3) / c Cada expresión toma un valor que se determina tomando los valores de las variables y constantes implicadas y la ejecución de las operaciones indicadas. Una expresión consta de operadores y operandos. Según sea el tipo de datos que manipulan, se clasifican las expresiones en:  Aritméticas  Relacionales  Lógicas
  • 10. Ejercicios de algorítmica. Programación estructurada P á g i n a 9 | 55 Operadores y Operandos Operadores Son elementos que relacionan de forma diferente, los valores de una o mas variables y/o constantes. Es decir, los operadores nos permiten manipular valores. Operadores Aritméticos Los operadores aritméticos permiten la realización de operaciones matemáticas con los valores (variables y constantes). Los operadores aritméticos pueden ser utilizados con tipos de datos enteros o reales. Si ambos son enteros, el resultado es entero; si alguno de ellos es real, el resultado es real. Operadores Aritméticos + Suma - Resta * Multiplicación / División mod Modulo (residuo de la división entera) Ejemplos: Expresión Resultado 7 / 2 3.5 12 mod 7 5 4 + 2 * 5 14
  • 11. Ejercicios de algorítmica. Programación estructurada P á g i n a 10 | 55 Prioridadde los Operadores Aritméticos Todas las expresiones entre paréntesis se evalúan primero. Las expresiones con paréntesis anidados se evalúan de dentro a fuera, el paréntesis más interno se evalúa primero. Dentro de una misma expresión los operadores se evalúan en el siguiente orden: 1. ^ Exponenciación 2. *, /, mod Multiplicación, división, modulo. 3. +, - Suma y resta. Los operadores en una misma expresión con igual nivel de prioridad se evalúan de izquierda a derecha. Ejemplos: 4 + 2 * 5 = 14 23 * 2 / 5 = 9.2 3 + 5 * (10 - (2 + 4)) = 23 2.1 * (1.5 + 12.3) = 2.1 * 13.8 = 28.98 Operadores Relacionales Se utilizan para establecer una relación entre dos valores. Luego compara estos valores entre si y esta comparación produce un resultado de certeza o falsedad (verdadero o falso). Los operadores relacionales comparan valores del mismo tipo (numéricos o cadenas). Estos tienen el mismo nivel de prioridad en su evaluación. Los operadores relaciónales tiene menor prioridad que los aritméticos. Tipos de operadores Relacionales  > Mayor que  < Menor que  > = Mayor o igual que  < = Menor o igual que  < > Diferente  = Igual Ejemplos: Si a = 10, b = 20, c = 30 a + b > c Falso
  • 12. Ejercicios de algorítmica. Programación estructurada P á g i n a 11 | 55 a - b < c Verdadero a - b = c Falso a * b < > c Verdadero Ejemplos no lógicos: a < b < c 10 < 20 < 30 T > 5 < 30 (no es lógico porque tiene diferentes operandos) Operadores Lógicos Estos operadores se utilizan para establecer relaciones entre valores lógicos. Estos valores pueden ser resultado de una expresión relacional. Tipos de operadores Lógicos And Y Or O Not Negación Ejemplo: Para los siguientes ejemplos T significa verdadero y F falso. Operador Not Operador Not Operando Resultado T F F T Operador And Operador And Operando1 Operador Operando2 Resultado T AND T T T F F F T F F F F
  • 13. Ejercicios de algorítmica. Programación estructurada P á g i n a 12 | 55 Operador Or Operador Or Operando1 Operador Operando2 Resultado T Or T T T F T F T T F F F Prioridad de los Operadores Lógicos 1. Not 2. And 3. Or Prioridad de los Operadores en General 1. ( ) 2. ^ 3. *, /, Mod, Not 4. +, -, And 5. >, <, > =, < =, < >, =, Or Ejemplos: Sea: a = 10 b = 12 c = 13 d =10
  • 14. Ejercicios de algorítmica. Programación estructurada P á g i n a 13 | 55 Pseudocódigo, diagramas estructurados y estructuras algorítmicas Qué es el pseudocódigo y sus ventajas frente a los diagramas de flujos y las definiciones de los diagramas estructurados y las estructuras algorítmicas. Pseudocódigo. Mezcla de lenguaje de programación y español (o ingles o cualquier otro idioma) que se emplea, dentro de la programación estructurada, para realizar el diseño de un programa. En esencial, el Pseudocódigo se puede definir como un lenguaje de especificaciones de algoritmos. En esencial, el Pseudocódigo se puede definir como un lenguaje de especificaciones de algoritmos. Es la representación narrativa de los pasos que debe seguir un algoritmo para dar solución a un problema determinado. El Pseudocódigo utiliza palabras que indican el proceso a realizar. EstructurasAlgorítmicas Las estructuras de operación de programas son un grupo de formas de trabajo, que permiten, mediante la manipulación de variables, realizar ciertos procesos específicos que nos lleven a la solución de problemas. Estas estructuras se clasifican de acuerdo con su complejidad en:
  • 15. Ejercicios de algorítmica. Programación estructurada P á g i n a 14 | 55 Estructuras secuenciales Explicamos las estructuras secuenciales, cómo se representan en pseudocódigo y algunos ejemplos prácticos de las mismas. La estructura secuencial es aquella en la que una acción (instrucción) sigue a otra en secuencia. Las tareas se suceden de tal modo que la salida de una es la entrada de la siguiente y así sucesivamente hasta el fin del proceso. En Pseudocódigo una Estructura Secuencial se representa de la siguiente forma: Observe el siguiente problema de tipo cotidiano y sus respectivos algoritmos representados en Pseudocódigo y en diagramas de flujos: • Tengo un teléfono y necesito llamar a alguien pero no sé cómo hacerlo.  El anterior ejemplo es un sencillo algoritmo de un problema cotidiano dado como muestra de una estructura secuencial. Ahora veremos los componentes que pertenecen a ella:
  • 16. Ejercicios de algorítmica. Programación estructurada P á g i n a 15 | 55 Asignación La asignación consiste, en el paso de valores o resultados a una zona de la memoria. Dicha zona será reconocida con el nombre de la variable que recibe el valor. La asignación se puede clasificar de la siguiente forma:  Simples: Consiste en pasar un valor constante a una variable (a =15)  Contador: Consiste en usarla como un verificador del número de veces que se realiza un proceso (a = a + 1)  Acumulador: Consiste en usarla como un sumador en un proceso (a = a + b)  De trabajo: Donde puede recibir el resultado de una operación matemática que involucre muchas variables (a =c + b*2/4). En general el formato a utilizar es el siguiente: < Variable > = <valor o expresión > El símbolo = debe leerse “asigne”. Escritura o salida de datos Consiste en mandar por un dispositivo de salida (p.ej. monitor o impresora) un resultado o mensaje. Esta instrucción presenta en pantalla el mensaje escrito entre comillas o el contenido de la variable. Este proceso se representa así como sigue: Lectura o entrada de datos La lectura o entrada de datos consiste en recibir desde un dispositivo de entrada (p.ej. el teclado) un valor o dato. Este dato va a ser almacenado en la variable que aparece a continuación de la instrucción. Esta operación se representa así:
  • 17. Ejercicios de algorítmica. Programación estructurada P á g i n a 16 | 55 DECLARACIÓN DE VARIABLES Y CONSTANTES La declaración de variables es un proceso que consiste en listar al principio del algoritmo todas las variables que se usarán, además de colocar el nombre de la variable se debe decir qué tipo de variable es. Contador: ENTERO Edad, I: ENTERO Direccion : CADENA_DE_CARACTERES Salario_Basico : REAL Opcion : CARACTER En la anterior declaración de variables Contador, Edad e I son declaradas de tipo entero; Salario_Basico es una variable de tipo real, Opcion es de tipo carácter y la variable Direccion está declarada como una variable alfanumérica de cadena de caracteres. En el momento de declarar constantes debe indicarse que lo es y colocarse su respectivo valor. CONSTANTE Pi 3.14159 CONSTANTE Msg “Presione una tecla y continue” CONSTANTE ALTURA 40 Cuando se trabaja con algoritmos por lo general no se acostumbra a declarar las variables ni tampoco constantes debido a razones de simplicidad, es decir, no es camisa de fuerza declarar las variables. Sin embargo en este curso lo haremos para todos los algoritmos que realicemos, con esto logramos hacerlos más entendibles y organizados y de paso permite acostumbrarnos a declararlas ya que la mayoría de los lenguajes de programación (entre ellos el C++) requieren que necesariamente se declaren las variables que se van a usar en los programas. Veamos algunos ejemplos donde se aplique todo lo que hemos visto hasta el momento sobre algoritmos: 1. Ejemplo 1: Escriba un algoritmo que pregunte por dos números y muestre como resultado la suma de estos. Use Pseudocódigo y diagrama de flujos.
  • 18. Ejercicios de algorítmica. Programación estructurada P á g i n a 17 | 55 2. Ejemplo 2: Escriba un algoritmo que permita conocer el área de un triángulo a partir de la base y la altura. Exprese el algoritmo usando Pseudocódigo y diagrama de flujos.
  • 19. Ejercicios de algorítmica. Programación estructurada P á g i n a 18 | 55 Ejercicios propuestos Estructura Secuencial 3. Ingrese dos números y suma los dos e imprima el resultado 4. Ingrese su nombre y su apellido, imprimir los mismos en un mensaje. 5. Realizar la carga de dos números enteros por teclado e imprimir su suma y su producto. 6. Escribir un programa que pregunte al usuario su nombre, y luego lo salude 7. Dados como datos cinco números obtener el promedio de los mismos e informar el resultado. 8. Dados dos números enteros obtener su suma, resta, multiplicación y división. 9. Dadas las medidas de dos ángulos de un triángulo determinar la medida del tercero e informar el resultado. 10. Solución que eleva un número al cuadrado y al cubo y lo presenta en dos columnas. 11. Calcular el perímetro y área de un rectángulo dada su base y su altura. 12. Dados los catetos de un triángulo rectángulo, calcular su hipotenusa. 13. Escribir un programa que convierta un valor dado en grados Fahrenheit a grados Celsius. Recordar que la fórmula para la conversión es: C = (F-32)* 14. Dado como dato el valor del lado de un cuadrado calcular su perímetro y su superficie, e imprimir los resultados. 15. Dado como dato el importe de una factura, calcular el valor correspondiente al IVA. (10% del valor de venta). 16. Calcular el sueldo de un operario conociendo la cantidad de horas que trabajó en el mes y el jornal horario. (Leer las horas trabajadas y el salario por hora.) 17. Dado el importe bruto de una factura calcular el resultado más una bonificación de un 4%. Al monto obtenido calcularle el IVA (10%). 18. Finalmente informar el importe bruto, el valor con la Bonificación, el monto correspondiente al IVA y el importe neto resultante. 19. En un estacionamiento cobran $/. 5000 por hora. Diseñe un algoritmo que determine cuanto debe pagar un cliente por el estacionamiento de su vehículo, conociendo el tiempo de estacionamiento en horas y minutos. 20. Un supermercado ha puesto en oferta la venta al por mayor de cierto producto, ofreciendo un descuento del 15% por la compra de más de 3 docenas y 10% en caso contrario. Además, por la compra de más de 3 docenas se obsequia una unidad del producto por cada docena en exceso sobre 3. Diseñe un algoritmo que determine el monto de la compra, el monto del descuento, el
  • 20. Ejercicios de algorítmica. Programación estructurada P á g i n a 19 | 55 monto a pagar y el número de unidades de obsequio por la compra de cierta cantidad de docenas del producto. 21. Diseñe un algoritmo que lea un número de tres cifras y determine si es igual al revés del número. 22. Ingresar 3 valores en 3 variables X, Y y Z. Se desea obtener una rotación de sus valores, es decir que el contenido de Z pase a X, el contenido de X pase a Y, y el contenido de Y pase a Z. Mostrar luego las variables en el mismo orden en que se ingresaron (X, Y, Z). 23. El promedio de prácticas de un curso se calcula en base a cuatro prácticas calificadas de las cuales se elimina la nota menor y se promedian las tres notas más altas. Diseñe un algoritmo que determine la nota eliminada y el promedio de prácticas de un estudiante. 24. Diseñe un algoritmo que lea un número entero de 3 cifras, y forme el mayor número posible con las cifras del número ingresado. El número formado debe tener el mismo signo que el número ingresado. 25. Diseñe un algoritmo que reciba como entrada el número de cedula, el nombre y apellido de una persona y su profesión y los imprima por pantalla. 26. Diseñe un algoritmo que pida por teclado dos números enteros y muestre su suma, resta, multiplicación y división además de los números leídos. 27. Diseñe un programa lea la cantidad de alumnos de Redes, Contabilidad y Diseño. Determine el porcentaje de alumnos de cada uno de los cursos. 28. Una institución educativa ha recibido una donación especial que será repartida entre las carreras de (20%) Telecomunicaciones, (25%) Sistemas, (15%) Administración y (40%), imprimir el monto correspondiente a cada uno. 29. Hallar A+B-C+100 (solicitar por pantalla las 3 variables) 30. Obtener x= (a-b)*(a+b) 31. Leer un número de 3 dígitos y sumarlos 32. Un proveedor de estéreos ofrece un descuento del 10% sobre el precio sin IVA, de algún aparato si esta cuesta $2000 o más. Además, independientemente de esto, ofrece un 5% de descuento si la marca es “NOSY”. Determinar cuánto pagara, con IVA incluido, un cliente cualquiera por la compra de su aparato. 33. Se pide un algoritmo que pida que se ingresen tres notas y que genere el promedio de las mismas 34. Hacer un algoritmo que pida se ingresen 2 números para sumarlos y un número por el cual se desea dividir. 35. En este ejercicio se pide que se calcule el sueldo mensual de un trabajador ingresando el número de horas trabajadas en el mes y el valor tanto como de las horas normales de trabajo y las horas extra. 36. Calcular el Precio de Venta de un artículo. El Precio de venta se calcula añadiéndoles al Costo del articulo una utilidad que se digita por el usuario (En porcentaje), más el 10% del Impuesto de Ventas (IVA).Imprimir el Valor de venta del artículo, el IVA y el Valor Total. 37. Dada una cantidad en Guaraníes, obtener la equivalencia en dólares, asumiendo que la unidad cambiaria es un dato desconocido. 38. Realizar un algoritmo que permita calcular la masa.
  • 21. Ejercicios de algorítmica. Programación estructurada P á g i n a 20 | 55  La presión, el volumen y la temperatura de una masa de aire se relacionan por la fórmula:  Masa = (presión * volumen)/ (0.37 * (temperatura + 460)) 39. Calcular la masa de aire de un neumático de un vehículo que está en compostura en un servicio de alineación y balanceo. 40. Calcular el nuevo salario de un obrero si obtuvo un incremento del 25% sobre su salario anterior. 41. En un hospital existen tres áreas: Ginecología, Pediatría, Traumatología. El presupuesto anual del hospital se reparte conforme a la siguiente Tabla: Área: % del presupuesto: Ginecología 40% Traumatología 30% Pediatría 30% 42. El dueño de una tienda compra un artículo a un precio determinado. Obtener el precio en que lo debe vender para obtener una ganancia del 30%. 43. Todos los lunes, miércoles y viernes, una persona corre la misma ruta y cronometra los tiempos obtenidos. Determinar el tiempo promedio que la persona tarda en recorrer la ruta en una semana cualquiera. 44. Tres personas deciden invertir su dinero para fundar una empresa. Cada una de ellas invierte una cantidad distinta. Obtener el porcentaje que cada quien invierte con respecto a la cantidad total invertida. 45. Un alumno desea saber cuál será su promedio general en las tres materias más difíciles que cursa y cuál será el promedio que obtendrá en cada una de ellas. Estas materias se evalúan como se muestra a continuación: La calificaciónde Matemáticasse obtiene de lasig.Manera: Examen90% Promediode tareas10% En estamateriase pidióuntotal de tres tareas. La calificaciónde Físicase obtiene de lasig.Manera: Examen80% Promediode tareas20% En estamateriase pidióun total de dos tareas. La calificaciónde Químicase obtiene de lasig.Manera: Examen85% Promediode tareas15% En estamateriase pidió untotal de tres tareas. 46. Leer el sueldo de tres empleados y aplicarles un aumento del 10, 12 y 15% Calcularel total de lostressueldosnormales El bonode cada uno El total general de lostres.
  • 22. Ejercicios de algorítmica. Programación estructurada P á g i n a 21 | 55 47. Escribir un programa que calcule el salario de un trabajador de la manera siguiente. El trabajador cobra un precio fijo por hora y se le descuento el 10%. El programa debe pedir el nombre del trabajador, las horas trabajadas y el precio que cobra por hora. Como salida debe imprimir el sueldo bruto, el descuento y el salario a pagar. 48. Crear un programa que pida el precio de un artículo y calcule su valor aplicándole un 10% de IVA. 49. Escribir un programa al cual ingrese la velocidad de un vehículo expresada en kilómetros por hora imprima en pantalla la velocidad en millas por hora. 50. Un constructor sabe que necesita 0,5 metros cúbicos de arena por metro cuadrado de revoque a realizar. Hacer un programa donde ingrese las medidas de una pared (largo y alto) expresada en metros y obtenga la cantidad de arena necesaria para revocarla. 51. Desarrollar un programa que dado el largo y el ancho de un campo, permita determinar cuántos metros de alambre serán necesarios para colocarle al perímetro 5 hilos de alambrado. 52. Suponga que un individuo desea invertir su capital en un banco y desea saber cuánto dinero ganará después de determinados meses si el banco paga a razón de 2% mensual. 53. Hallar A+B+C+100 Solicitar por pantalla A,B y C. 54. Hallar la sumatoria de 2+4+6+8 55. Una discoteca desea utilizar el ejercicio para leer la edad de una persona y mostrar un mensaje que indique “Acceso denegado” si no es mayor de edad. 56. Calcular el Precio de Venta de un artículo. El Precio de venta se calcula añadiéndoles al Costo del articulo una utilidad que se digita por el usuario (En porcentaje), más el 10% del Impuesto de Ventas (IVA).Imprimir el Valor de venta del artículo, el IVA y el Valor Total. 57. Hacer un algoritmo con pseudocódigo que pida que se ingresen 2 números para sumarlos y un número por el cual se desea dividir. Imprimir todos los resultados. 58. Se pide que se calcule el sueldo mensual de un trabajador ingresando el número de horas trabajadas en el mes y el valor tanto como de las horas normales de trabajo y las horas extra. 59. Escribir un programa que lea el radio de un circulo y a continuación visualice: área del círculo y la longitud de la circunferencia del círculo. 60. Escribir un programa de desglose cierta cantidad de segundos introducida por teclado en su equivalente en semanas, días, horas, minutos y segundos. 61. Desafío: Escribir un programa que exprese cierta cantidad de Guaraníes en billetes y monedas de curso legal. 62. Escribir un programa para convertir una medida dada en pies a sus equivalentes en: Yardas – Pulgadas – Centímetros – Metros. 63. Solución que calcula el área de un triángulo en función de sus lados
  • 23. Ejercicios de algorítmica. Programación estructurada P á g i n a 22 | 55 64. Solución dados dos lados de un triángulo y el ángulo entre ellos se calcula el tercer lado. Realizar un algoritmo que lo demuestre. 65. Calcula el Monto a devolver si nos prestan un capital c, a una tasa de interés t% durante n periodos. Realizar un algoritmo que muestre. 66. Desafío: Escribir un programa para la conversión de grados sexagesimales a radianes y Centesimales. 67. Escribir un programa que calcule el área del rombo. 68. Solución que determina el valor de un polinomio en función de x, a,b,c 69. Un vendedor recibe un sueldo base más un 10% extra por comisión de sus ventas, el vendedor desea saber cuánto dinero obtendrá por concepto de comisiones por las tres ventas que realiza en el mes y el total que recibirá en el mes tomando en cuenta su sueldo base y comisiones. 70. Una tienda ofrece un descuento del 15% sobre el total de la compra y un cliente desea saber cuánto deberá pagar por la compra de 4 artículos. 71. Desafío: Un alumno desea saber cuál será su calificación final en la materia de Algoritmos. Dicha calificación se compone de los siguientes porcentajes: 55% del promedio de sus tres calificaciones parciales. 30% de la calificación del examen final. 15% de la calificación de un trabajo final. 72. Un maestro desea saber qué porcentaje de hombres y qué porcentaje de mujeres hay en un grupo de alumnos. 73. Realice un diagrama de flujo y pseudocódigo que representen el algoritmo para obtener el área de un triángulo. 74. Una empresa importadora desea determinar cuántos dólares puede adquirir con equis cantidad de guaranís. 75. Una empresa que contrata personal requiere determinar la edad de las personas que solicitan trabajo, pero cuando se les realiza la entrevista sólo se les pregunta el año en que nacieron. 76. Se requiere determinar la hipotenusa de un triángulo rectángulo. Recuerde que por Pitágoras se tiene que: C2 = A2 + B2. 77. La compañía de autobuses “La curva loca” requiere determinar el costo que tendrá el boleto de un viaje sencillo, esto basado en los kilómetros por recorrer y en el costo por kilómetro. 78. Se requiere determinar el tiempo que tarda una persona en llegar de una ciudad a otra en bicicleta, considerando que lleva una velocidad constante. 79. Se requiere determinar el costo que tendrá realizar una llamada telefónica con base en el tiempo que dura la llamada y en el costo por minuto. 80. La CON AGUA requiere determinar el pago que debe realizar una persona por el total de metros cúbicos que consume de agua. 81. Desafío: La compañía de luz y sombras (CLS) requiere determinar el pago que debe realizar una persona por el consumo de energía eléctrica, la cual se mide en kilowatts (KW) y un consumo estimado de electrodomésticos investigar la
  • 24. Ejercicios de algorítmica. Programación estructurada P á g i n a 23 | 55 tabla de consumo de por lo menos 5 equipos de uso doméstico y realizar los cálculos. 82. Realice un diagrama de flujo y pseudocódigo que representen el algoritmo para determinar cuánto pagará finalmente una persona por un artículo equis, considerando que tiene un descuento de 20%, y debe pagar 15% de IVA (debe mostrar el precio con descuento y el precio final). 83. Realice un algoritmo para determinar cuánto dinero ahorra una persona en un año si considera que cada semana ahorra 15% de su sueldo (considere cuatro semanas por mes y que no cambia el sueldo). 84. Una empresa desea determinar el monto de un cheque que debe proporcionar a uno de sus empleados que tendrá que ir por equis número de días a otra ciudad; los gastos que cubre la empresa son: hotel, comida y 100.000 Gs. diarios para otros gastos. El monto debe estar desglosado para cada concepto 85. Desafío: Realice un algoritmo para confeccionar una prenda de vestir. 86. Desafío: Realice un algoritmo para preparar un pastel. 87. Realice el algoritmo que sea para encontrar el área de un cuadrado. 88. Realice un algoritmo para determinar el promedio que obtendrá un alumno considerando que realiza tres exámenes, de los cuales el primero y el segundo tienen una ponderación de 25%, mientras que el tercero de 50%. 89. Realice un algoritmo para determinar aproximadamente cuántos meses, semanas, días y horas ha vivido una persona. 90. El hotel “Cama Arena” requiere determinar lo que le debe cobrar a un huésped por su estancia en una de sus habitaciones, considerando precio base, más servicios de comidas, bebidas y otros. 91. Calcular el factorial de un número (sin recursividad). Validar que el número esté comprendido entre 1 y 40 y calcular la suma de los naturales menores que él. 92. Desafío: Ingresar una cantidad en sistema decimal y transformar a binario. 93. Ingresar una cantidad en binario y transformar al sistema decimal. 94. Desafío: Ingresar una cantidad en sistema decimal y transformar a hexadecimal. 95. Ingresar una cantidad en octal y transformar a hexadecimal y decimal. 96. Una cajera necesita imprimir e ingresar el código y el precio de un producto. También desea saber la cantidad y el total a cobrar. 97. Un cajero automático desea saber el total de dinero sustraído de su interior en 3 operaciones y necesita imprimir el nombre completo de la persona que retiró el dinero. 98. Para crear una empresa de juegos de villar necesito controlar el total de las fichas que se compran por día en una semana e imprimir la cantidad de lo recaudado. 99. Imprimir el total de un producto de supermercado y averiguar el precio del producto vendido. 100. Imprimir el nombre de los materiales que va a comprar, el precio unitario y la cantidad de cuantos materiales lleva la empresa, imprimir el total.
  • 25. Ejercicios de algorítmica. Programación estructurada P á g i n a 24 | 55 Estructura Selectiva / Condicionales Las estructuras condicionales comparan una variable contra otro(s)valor (es), para que en base al resultado de esta comparación, se siga un curso de acción dentro del programa. Cabe mencionar que la comparación se puede hacer contra otra variable o contra una constante, según se necesite. Existen tres tipos básicos, las simples, las dobles y las múltiples. Simples: Las estructuras condicionales simples se les conocen como “Tomas de decisión”. Estas tomas de decisión tienen la siguiente forma: Pseudocódigo: Diagrama de flujo: Dobles: Las estructuras condicionales dobles permiten elegir entre dos opciones o alternativas posibles en función del cumplimiento o no de una determinada condición. Se representa de la siguiente forma: Pseudocódigo: Diagrama de flujo: Donde: Si: Indica el comando de comparación Condición: Indica la condición a evaluar Entonces: Precede a las acciones a realizar cuando se cumple la condición
  • 26. Ejercicios de algorítmica. Programación estructurada P á g i n a 25 | 55 Instrucción(es): Son las acciones a realizar cuando se cumple o no la condición si no: Precede a las acciones a realizar cuando no se cumple la condición Dependiendo de si la comparación es cierta o falsa, se pueden realizar una o más acciones. Múltiples: Las estructuras de comparación múltiples, son tomas de decisión especializadas que permiten comparar una variable contra distintos posibles resultados, ejecutando para cada caso una serie de instrucciones específicas. La forma común es la siguiente: Pseudocódigo: Diagrama de flujo: Múltiples (En caso de): Las estructuras de comparación múltiples, es una toma de decisión especializada que permiten evaluar una variable con distintos posibles resultados, ejecutando para cada caso una serie de instrucciones específicas. La forma es la siguiente:
  • 27. Ejercicios de algorítmica. Programación estructurada P á g i n a 26 | 55 Pseudocódigo: Diagrama de flujo: Veamos algunos ejemplos donde se aplique todo lo anterior: 101. Realizar un algoritmo en donde se pide la edad del usuario; si es mayor de edad debe aparecer un mensaje indicándolo. Expresarlo en Pseudocódigo y Diagrama de flujos. Pseudocódigo: Diagrama de flujo:
  • 28. Ejercicios de algorítmica. Programación estructurada P á g i n a 27 | 55 102. Se pide leer tres notas del alumno, calcular su definitiva en un rango de 0-5 y enviar un mensaje donde diga si el alumno aprobó o reprobó el curso. Exprese el algoritmo usando Pseudocódigo y diagrama de flujos. Pseudocódigo: INICIO Not1, Not2, Not 3: REAL Def: REAL Imprimir“ingrese lasnotas” leerNota1,Nota2,Nota3 Def = (Nota1+ Nota2 + Nota3) /3 Si Def < 3 entonces imprimir“Reprobóel curso”” Sino imprimir“aprobóel curso””” Fin-Si FIN Diagrama de flujo:
  • 29. Ejercicios de algorítmica. Programación estructurada P á g i n a 28 | 55 103. Se desea escribir un algoritmo que pida la altura de una persona, si la altura es menor o igual a 150 cm envíe el mensaje: “Persona de altura baja”; si la altura está entre 151 y 170 escriba el mensaje: “Persona de altura media” y si la altura es mayor al 171 escriba el mensaje: “Persona alta”. Exprese el algoritmo usando Pseudocódigo y diagrama de flujos. Pseudocódigo: INICIO Altura: ENTERO imprimir “Cuál es tu altura” ” leer (Altura) Si Altura <=150 entonces imprimir “persona de altura baja” Sino Si Altura <=170 entonces imprimir “persona de altura media”” Sino Si Altura>170 ENTONCES imprimir “persona alta” Fin-Si Fin-Si Fin-Si FIN ¡Es importante ser ordenado en el código que se escribe! Diagrama de flujo:
  • 30. Ejercicios de algorítmica. Programación estructurada P á g i n a 29 | 55 104. Dado un numero entre 1 y 7 escriba su correspondiente día de la semana así: 1- Lunes 2- Martes 3- Miércoles 4- Jueves 5- Viernes 6- Sábado 7- Domingo Exprese el algoritmo usando Pseudocódigo y diagrama de flujos. INICIO Dia: ENTERO imprimir “Diga un número para escribir su día”” leer(Dia) En-caso-de Dia haga Caso 1: imprimir “Lunes”” Caso 2: imprimir “Martes”” Caso 3: imprimir “Miércoles”” Caso 4: imprimir “Jueves”” Caso 5: imprimir “Viernes”” Caso 6: imprimir “Sábado”” Caso 7: imprimir “Domingo”” SINO: imprimir “Escribió un numero fuera del rango 1-7”” Fin-Caso FIN Diagrama de flujo:
  • 31. Ejercicios de algorítmica. Programación estructurada P á g i n a 30 | 55 Estructura secuencial Ejercicios que inician continúan de una sentencia en otra hasta llegar al final 105. Leer 2 números; si son iguales que los multiplique, si el primero es mayor que el segundo que los reste y si no que los sume. 106. Hacer un programa donde se ingrese la fecha actual y se compruebe si corresponde al día de tu cumpleaños y mostrar un mensaje de felicitaciones. 107. Determinar el algoritmo para saber si un número es positivo negativo. 108. Leer tres números diferentes e imprimir el número mayor de los tres. 109. Hacer un algoritmo que lea dos números y diga cuál es el menor. 110. Hacer un algoritmo que lea tres números y diga cuál es menor y mayor. 111. Escribir un programa que determine de 3 números cual es el mayor. 112. Dado un número verificar si es positivo, negativo, nulo. 113. Crear un programa que diga si usted es mayor de edad. 114. Crear un programa que diga si usted es mayor de edad o menor de edad e imprima su nombre y edad. 115. Escribir un programa que lea su nombre, apellidos, año de nacimiento y calcule su edad. 116. Hacer un algoritmo que lea una letra y diga si es una vocal. 117. Hacer un algoritmo para calcular el promedio de tres notas y determinar si el estudiante aprobó o no. 118. Se desea escribir los nombres de los días de la semana en función de la variable numérica. 1- domingo … 7- sábado. 119. Se desea escribir los nombres de los días de la semana en función de la variable de tipo carácter. d- domingo x- miércoles s- sábado. 120. Se lee una Nota de una materia (Nota de 1 a 5), imprimir de nota: en números y letras. 1.Reprobado 2. Aceptable 3. Bueno. 4. Muy bueno. 5. Excelente. 121. Realice un algoritmo para determinar si una persona puede votar con base en su edad en las próximas elecciones 122. Dado un numero verificar: - Que tenga dos dígitos - Verificar si sus dígitos son pares - Promediar sus dígitos 123. En una fábrica de computadoras se planea ofrecer a los clientes un descuento que dependerá del número de computadoras que compre. Si las computadoras son menos de 5 se les dará un 10% de descuento sobre el total de la compra; si el número de computadoras es mayor o igual a 5 pero menos de 10 se le otorga un 20% de descuento; y si son 10 o más se les da un 40% de descuento. El precio de cada computadora es de $500 124. Que pida un número del 1 al 7 y diga el día de la semana correspondientes 125. Que pida un número del 1 al 12 y diga el nombre del mes correspondiente.
  • 32. Ejercicios de algorítmica. Programación estructurada P á g i n a 31 | 55 126. En una llantera se ha establecido una promoción de las llantas marca “Ponchadas”, dicha promoción consiste en lo siguiente: Si se compran menos de cinco llantas el precio es de $300 cada una, de $250 si se compran de cinco a 10 y de $200 si se compran más de 10. Obtener la cantidad de dinero que una persona tiene que pagar por cada una de las llantas que compra y la que tiene que pagar por el total de la compra. 127. Determinar la cantidad de dinero que recibirá un trabajador por concepto de las horas extras trabajadas en una empresa, sabiendo que cuando las horas de trabajo exceden de 40, el resto se consideran horas extras y que estas se pagan al doble de una hora normal cuando no exceden de 8; si las horas extras exceden de 8 se pagan las primeras 8 al doble de lo que se pagan las horas normales y el resto al triple. 128. Mostrar un menú. CALCULO DE EDAD. Menú. 1. Por año de nacimiento 2. Por edad. Según el menú seleccionado en el menú 1 solicitar el año de nacimiento e imprimir la edad actual, en la opción 2 solicitar la edad y calcular el año de nacimiento. 129. Calcular la utilidad que un trabajador recibe en el reparto anual de utilidades si a este se le asigna como un porcentaje de su salario mensual que depende de su antigüedad en la empresa de acuerdo con la siguiente tabla: Tiempo Utilidad Menos de 1 año 5 % del salario 1 año o más y menos de 2 años 7% del salario 2 años o más y menos de 5 años 10% del salario 5 años o más y menos de 10 años 15% del salario 130. En un juego de preguntas a las que se responde “Si” o “No” gana quien responda correctamente las tres preguntas. Al finalizar imprimir los aciertos. Si se responde mal a cualquiera de ellas ya no se pregunta la siguiente y termina el juego. Las preguntas son: 1. Colon descubrió América? 2. La independencia del Paraguay fue en el año 1810? 3. El Pájaro campana es la ave nacional del Paraguay? 131. En una tienda de descuento se efectúa una promoción en la cual se hace un descuento sobre el valor de la compra total según el color de la tarjeta que el cliente saque al pagar en caja. Si la tarjeta es de color blanco no se le hará descuento alguno, si es verde se le hará un 10% de descuento, si es amarilla un 25%, si es azul un 50% y si es roja un 100%. Determinar la cantidad final que el cliente deberá pagar por su compra. se sabe que solo hay tarjetas de los colores mencionados. 132. En una escuela está organizando un viaje de estudios, y requiere determinar cuánto debe cobrar a cada alumno y cuánto se debe pagar a la agencia de viajes por el servicio. La forma de cobrar es la siguiente: si son 100 alumnos o más, el importe por cada alumno es de 65000; de 50 a 99 alumnos, es de 70000, de 30 a 49, de 95000, y si son menos de 30, el importe del alquiler del autobús es de 400000, sin importar el número de alumnos. Realiza un algoritmo que permita determinar el pago a la agencia de alquiler de autobuses y lo que debe pagar cada alumno por el viaje.
  • 33. Ejercicios de algorítmica. Programación estructurada P á g i n a 32 | 55 133. Diseñe un algoritmo que lea tres longitudes y determine si forman o no un triángulo. Si es un triángulo determine de qué tipo de triángulo se trata entre: equilátero (si tiene tres lados iguales), isósceles (sitiene dos lados iguales) o escaleno (si tiene tres lados desiguales). Considere que para formar un triángulo se requiere que: "el lado mayor sea menor que la suma de los otros dos lados". 134. Una compañía dedicada al alquiler de automóviles cobra un monto fijo de $300000 para los primeros 300 km de recorrido. Para más de 300 km y hasta 1000 km, cobra un monto adicional de $ 15.000 por cada kilómetro en exceso sobre 300. Para más de 1000 km cobra un monto adicional de $ 10.000 por cada kilómetro en exceso sobre 1000. Los precios ya incluyen el 10% del impuesto general a las ventas, IVA. Diseñe un algoritmo que determine el monto a pagar por el alquiler de un vehículo y el monto incluido del impuesto. 135. Dado el promedio de semestre de un estudiante y el Valor de la Matricula, determinar el total a pagar de matrícula teniendo en cuenta las siguientes políticas: 136. Si el promedio está entre 8 y 9 aplicar un descuento del 25%. 137. En caso de ser mayor a 9 aplicar un descuento del 50%. 138. En caso de ser menor a 8 aplicar un descuento del 5%. 139. Una editorial tiene 3 tipos de clientes. Los datos suministrados para cada pedido son: Código del Cliente, Tipo de cliente, Cantidad de libros, Costo por Libro. Dependiendo del tipo de cliente se le hace un descuento al pedido solicitado. Los descuentos que se realizan son: Tipo 1 Descuento del 20% sobre el Valor total de la venta Tipo 2 Descuento del 10% sobre el Valor total de la venta Tipo 3 Descuento del 5% sobre el Valor total de la venta Se realiza otro descuento dependiendo de la cantidad de libros solicitados. Si el pedido es mayor que 100 libros se le aplican un descuento adicional del 5%, si el pedido es mayor que 300 el descuento será del 7%. 140. Desafío: Se leen dos fechas: Fecha inicial (Año Inicial, Mes Inicial, Día Inicial) y Fecha final (Año Final, Mes Final, Día final). Calcular cuántos años, meses y días ha transcurrido entre las dos fechas. Asumir año comercial y mes comercial (1 Año = 360 días, 1 Mes = 30 días). Nota: Realizarlo haciendo el proceso manual de resta de días, meses y año. 141. En un almacén se hace un 18% de descuento a los clientes cuya compra supere los $1000 ¿Cuál será la cantidad que pagara una persona por su compra? 142. Un obrero necesita calcular su salario semanal, el cual se obtiene de la sig. manera: Si trabaja 40 horas o menos se le paga $16 por hora Si trabaja más de 40 horas se le paga $16 por cada una de las primeras 40 horas y $20 por cada hora extra. 143. Un hombre desea saber cuánto dinero se genera por concepto de intereses sobre la cantidad que tiene en inversión en el banco. El decidirá reinvertir los intereses siempre y cuando estos excedan a $7000, y en ese caso desea saber cuánto dinero tendrá finalmente en su cuenta. 144. Desafío a investigar: Dada una medida de tiempo expresada en horas, minutos y segundos con valores arbitrarios, elabore un programa que transforme dicha
  • 34. Ejercicios de algorítmica. Programación estructurada P á g i n a 33 | 55 medida en una expresión correcta. Por ejemplo, dada la medida 3h 118m 195s, el programa deberá obtener como resultado 5h 1m 15s. 145. Una persona enferma, que pesa 70 kg, se encuentra en reposo y desea saber cuántas calorías consume su cuerpo durante todo el tiempo que realice una misma actividad. Las actividades que tiene permitido realizar son únicamente dormir o estar sentado en reposo. Los datos que tiene son que estando dormido consume 1.08 calorías por minuto y estando sentado en reposo consume 1.66 calorías por minuto. 146. Hacer un algoritmo que imprima el nombre de un artículo, clave, precio original y su precio con descuento. El descuento lo hace en base a la clave, si la clave es 01 el descuento es del 10% y si la clave es 02 el descuento en del 20% (solo existen dos claves). 147. Hacer un algoritmo que calcule el total a pagar por la compra de camisas. Si se compran tres camisas o más se aplica un descuento del 20% sobre el total de la compra y si son menos de tres camisas un descuento del 10% 148. Una empresa quiere hacer una compra de varias piezas de la misma clase a una fábrica de refacciones. La empresa, dependiendo del monto total de la compra, decidirá qué hacer para pagar al fabricante. Si el monto total de la compra excede de $500 000 la empresa tendrá la capacidad de invertir de su propio dinero un 55% del monto de la compra, pedir prestado al banco un 30% y el resto lo pagara solicitando un crédito al fabricante. Si el monto total de la compra no excede de $500 000 la empresa tendrá capacidad de invertir de su propio dinero un 70% y el restante 30% lo pagara solicitando crédito al fabricante. El fabricante cobra por concepto de intereses un 20% sobre la cantidad que se le pague a crédito. 149. Calcular el total que una persona debe pagar en una llantera, si el precio de cada llanta es de $800 si se compran menos de 5 llantas y de $700 si se compran 5 o más. 150. En un supermercado se hace una promoción, mediante la cual el cliente obtiene un descuento dependiendo de un número que se escoge al azar. Si el numero escogido es menor que 74 el descuento es del 15% sobre el total de la compra, si es mayor o igual a 74 el descuento es del 20%. Obtener cuánto dinero se le descuenta. 151. Calcular el número de pulsaciones que debe tener una persona por cada 10 segundos de ejercicio aeróbico; la fórmula que se aplica cuando el sexo es femenino es: núm. pulsaciones = (220 - edad)/10 y si el sexo es masculino: núm. pulsaciones = (210 - edad)/10 152. En una escuela la colegiatura de los alumnos se determina según el número de materias que cursan. El costo de todas las materias es el mismo. Se ha establecido un programa para estimular a los alumnos, el cual consiste en
  • 35. Ejercicios de algorítmica. Programación estructurada P á g i n a 34 | 55 lo siguiente: si el promedio obtenido por un alumno en el último periodo es mayor o igual que 9, se le hará un descuento del 30% sobre la colegiatura y no se le cobrara IVA; si el promedio obtenido es menor que 9 deberá pagar la colegiatura completa, la cual incluye el 10% de IVA. Obtener cuanto debe pagar un alumno. 153. Una empresa de bienes raíces ofrece casas de interés social, bajo las siguientes condiciones: Si los ingresos del comprador son menores de $8000 o más el enganche será del 15% del costo de la casa y el resto se distribuirá en pagos mensuales, a pagar en diez años. Si los ingresos del comprador son menos de $8000 o más el enganche será del 30% del costo de la casa y el resto se distribuirá en pagos mensuales a pagar en 7 años. La empresa quiere obtener cuanto debe pagar un comprador por concepto de enganche y cuanto por cada pago parcial. 154. Una empresa ha establecido el programa SAR (Sistema de Ahorro para el Retiro) que consiste en que los dueños de la empresa deben obligatoriamente depositar en una cuenta bancaria un porcentaje del salario de los trabajadores; adicionalmente los trabajadores pueden solicitar a la empresa que deposite directamente una cuota fija o un porcentaje de su salario en la cuenta del SAR, la cual le será descontada de su pago. Un trabajador que ha decidido aportar a su cuenta del SAR desea saber la cantidad total de dinero que estará depositado a esa cuenta cada mes, y el pago mensual que recibirá. 155. Una persona desea iniciar un negocio, para lo cual piensa verificar cuánto dinero le prestara el banco por hipotecar su casa. Tiene una cuenta bancaria, pero no quiere disponer de ella a menos que el monto por hipotecar su casa sea muy pequeño. Si el monto de la hipoteca es menor que $1 000 000 entonces invertirá el 50% de la inversión total y un socio invertirá el otro 50%. Si el monto de la hipoteca es de $ 1 000 000 o más, entonces invertirá el monto total de la hipoteca y el resto del dinero que se necesite para cubrir la inversión total se repartirá a partes iguales entre el socio y el. 156. Una fábrica ha sido sometida a un programa de control de contaminación para lo cual se efectúa una revisión de los puntos generados por la fábrica. El programa de control de contaminación consiste en medir los puntos que emite la fábrica en cinco días de una semana y si el promedio es superior a los 170 puntos entonces tendrá la sanción de parar su producción por una semana y una multa del 50% de las ganancias diarias cuando no se detiene la producción. Si el promedio obtenido de puntos es de 170 o menor entonces no tendrá ni sanción ni multa. El dueño de la fábrica desea saber cuánto dinero perderá después de ser sometido a la revisión. 157. Escribir un programa para intercambiar los valores de dos variables numéricas (Que A tome el valor de B y B tome el valor de A). 158. En un experimento se obtuvieron un conjunto de pares de valores (s, v) y se requiere que desarrolle un programa que permita imprime 159. Al ingresar un número entre 1 y 4 devolver la estación del año: 1) Primavera, 2) Verano, 3) Otoño y 4) Invierno.
  • 36. Ejercicios de algorítmica. Programación estructurada P á g i n a 35 | 55 160. Si se tiene el peso de dos animales: hipopótamo y un elefante, hacer un programa que permita calcular cuál de los dos tiene el peso. 161. Escribir un programa que permita calcular el precio de una entrada al cine, considerando lo siguiente:  Si la personatiene menos de 18 añospagará 15000.  Si la personatiene de 18 a 50 añospagará 25000.  Si la personatiene másde 50 años pagará 30000. 162. Escribirunprograma querecibacomo datos tresnúmeros enteros yque verifique si constituyen los lados de un triángulo. En caso afirmativo debe de mostrar el siguiente mensaje: “SI ES UN TRIANGULO”, y en caso contrario “NO ES UN TRIANGULO” 163. La aplicación deberá mostrar el promedio y también la cantidad de caritas felices que lea signa el profesor por la nota obtenida .La cantidad de caritas felices se asigna de la siguiente forma:  Si el promedio es menor que 13, se le dice que “estudie”  Si es mayor igual a 13 y menor a 15, el profesor le asigna una carita feliz y lo felicita  Si es mayor igual a 15 y menor a 20, dos caritas felices y lo felicita. 164. Se desea escribir los nombres de los días de la semana en función de la variable numérica. 1- domingo … 7- sábado. 165. Se desea escribir los nombres de los días de la semana en función de la variable de tipo carácter. d- domingo x- miércoles s- sábado. 166. Se desea escribir un algoritmo que pida la altura de una persona, si la altura es menor o igual a 150cm envié el mensaje: “persona de altura baja”, si la altura esta entre 151 y 170 escriba el mensaje: “persona de altura media” y si la altura es mayor a 171 escriba el mensaje: “persona alta”. Exprese el algoritmo usando el Pseudocódigo. 167. Hacer un algoritmo que lea un número y segurn 168. Hacer un programa que permita escoger un conjunto de nombres naturales: cuales son menores a 15. Cuales son mayores a 50. 169. A partir de un carácter ingresado realizar la validación, si ingresa “M” o “F” mostrar un mensaje que diga “Masculino” o “Femenino” respectivamente. 170. Solicitar el total de puntos (de 1 a 50) de un examen e imprimir la calificación en número y letras según la siguiente escala: 1-41=1 Uno / 40-42=2 Dos / 43- 45=3 Tres / 46-48=4 Cuatro / 49-50=5 Cinco. 171. A partir de un carácter ingresado identificar si es vocal o consonante e imprimir “vocal” o “consonante” respectivamente. (Considerando que el valor que ingresa no es de otro tipo). 172. Hacer un algoritmo para una tienda de helado que da un descuento por compra a sus clientes con membresía dependiendo de su tipo, sólo existen tres tipos de membresía, tipo A, tipo B y tipo C. Los descuentos son los siguientes: Tipo A 10% de descuento Tipo B 15% de descuento Tipo C 20% de descuento
  • 37. Ejercicios de algorítmica. Programación estructurada P á g i n a 36 | 55 173. Realice un algoritmo para determinar el sueldo semanal de un trabajador con base en las horas trabajadas y el pago por hora, considerando que después de las 40 horas cada hora se considera como excedente y se paga el doble. 174. El 14 de febrero una persona desea comprarle un regalo al ser querido que más aprecia en ese momento, su dilema radica en qué regalo puede hacerle, las alternativas que tiene son las siguientes: Regalo Costo Tarjeta $10.00 o menos Chocolates $11.00 a $100.00 Flores $101.00 a $250.00 Anillo Más de $251.00 Determinar qué regalo se le puede comprar a ese ser tan especial por el día del amor y la amistad. 175. El dueño de un estacionamiento requiere un algoritmo que le permita determinar cuánto debe cobrar por el uso del estacionamiento a sus clientes. Las tarifas que se tienen son las siguientes: Las dos primeras horas a $5000 c/u. Las siguientes tres a $4000 c/u. Las cinco siguientes a $3000 c/u. Después de diez horas el costo por cada una es de $1000 c/u. 176. Realice un algoritmo para determinar el costo y el descuento que tendrá un artículo. Considere que si su precio es mayor o igual a $200 se le aplica un descuento de 15%, y si su precio es mayor a $100 pero menor a $200, el descuento es de 12%, y si es menor a $100, sólo 10%. 177. Represente un algoritmo para determinar a qué lugar podrá ir de vacaciones una persona, considerando que la línea de autobuses “La tortuga” cobra por kilómetro recorrido. Se debe considerar el costo del pasaje tanto de ida, como de vuelta; los datos que se conocen y que son fijos son: 178. México, 750 km; P.V., 800 km; Acapulco, 1200 km, y Cancún, 1800 km. También se debe considerar la posibilidad de tener que quedarse en casa. 179. Realice un algoritmo que permita determinar el sueldo semanal de un trabajador con base en las horas trabajadas y el pago por hora, considerando que a partir de la hora número 41 y hasta la 45, cada hora se le paga el doble, de la hora 46 a la 50, el triple, y que trabajar más de 50 horas no está permitido.
  • 38. Ejercicios de algorítmica. Programación estructurada P á g i n a 37 | 55 180. Los alumnos de una escuela desean realizar un viaje de estudios, pero requieren determinar cuánto les costará el pasaje, considerando que las tarifas del autobús son las siguientes: 181. Si son más de 100 alumnos, el costo es de $20; si son entre 50 y 100, $35; entre 20 y 49, $40, y si son menos de 20 alumnos, $70 por cada uno. Realice el algoritmo para determinar el costo del pasaje de cada alumno. 182. Realice un algoritmo que, con base en una calificación proporcionada (0-10), indique con letra la calificación que le corresponde: 10 es “A”, 9 es “B”, 8 es “C”, 7 y 6 son “D”, y de 5 a 0 son “F”. 183. Ejercicio Leer la edad de un corredor e imprimir a que categoría pertenece. De 14 a 19=Juvenil / de 20 a 29: Ejecutivo / de 30 a 39: Master A / de 40 a 49: Master B / de 50 a 59: Senior A / de 60 a n / Senior B 184. Desafío: Ejercicio Leer la edad y el sexo de una persona de un corredor e imprimir a que categoría pertenecen. Pueden ser Masculinos y Femeninos ambos con y el siguiente rango de edades 14 a 19=Juvenil / de 20 a 29: Ejecutivo / de 30 a 39: Master A / de 40 a 49: Master B / de 50 a 59: Senior A / de 60 a n / Senior B. 185. Realice un algoritmo que permitan determinar qué paquete se puede comprar una persona con el dinero que recibirá en diciembre, considerando lo siguiente: Paquete A. Si recibe $50,000 o más se comprará una televisión, un modular, tres pares de zapatos, cinco camisas y cinco pantalones. Paquete B. Si recibe menos de $50,000 pero más (o igual) de $20,000, se comprará una grabadora, tres pares de zapatos, cinco camisas y cinco pantalones. Paquete C. Si recibe menos de $20,000 pero más (o igual) de $10,000, se comprará dos pares de zapatos, tres camisas y tres pantalones. Paquete D. Si recibe menos de $10,000, se tendrá que conformar con un par de zapatos, dos camisas y dos pantalones. 186. Realice un algoritmo que permitan determinar la cantidad del bono navideño que recibirá un empleado de una tienda, considerando que si su antigüedad es mayor a cuatro años o su sueldo es menor de dos millones, le corresponderá 25 % de su sueldo, y en caso contrario sólo le corresponderá 20 % de éste. 187. La secretaria de salud requiere un algoritmo que permita determinar qué tipo de vacuna (A, B o C) debe aplicar a una persona, considerando que si es mayor de 70 años, sin importar el sexo, se le aplica la tipo C; si tiene entre 16 y 69 años, y es mujer, se le aplica la B, y si es hombre, la A; si es menor de 16 años, se le aplica la tipo A, sin importar el sexo. 188. El banco “NdeViru” desea calcular para uno de sus clientes el saldo actual, el pago mínimo y el pago para no generar intereses. Los datos que se conocen son: saldo anterior del cliente, monto de las compras que realizó y el pago que depositó en el corte anterior. Para calcular el pago mínimo se debe considerar
  • 39. Ejercicios de algorítmica. Programación estructurada P á g i n a 38 | 55 15% del saldo actual, y para no generar intereses corresponde 85% del saldo actual, considerando que este saldo debe incluir 12% de los intereses causados por no realizar el pago mínimo y $200 por multa por el mismo motivo. 189. Ingresar un gran monto y calcular cuantas personas pueden ingresar al cine, teniendo en cuenta que la entrada general esta S/. 25.000 por persona. 190. Dada la letra (f) o (m) escribir: femenino para (f) o masculino para (m). 191. Dado el sueldo de un trabajador, aplicar un aumento del 15% si el sueldo es inferior o igual a $500.000 o del 10% si el sueldo es inferior o igual a $600.000. 192. Mostrar un menú con 4 opciones, 1. Suma 2. Resta 3. División 4. Multiplicación. Realizar cada ejercicio según el número seleccionado por el usuario: Solicitando dos números y realizando la operación. 193. Desafío: Solicitar el Nombre, edad, y mostrar un menú para elegir el sexo M=Masculino F=Femenino, y menú para la ciudad 1. Asunción 2. Luque 3. Mariano Roque Alonso 4. Limpio. Imprimir en el siguiente formato: Ingrese su nombre: Juan Pérez Edad: 17 ¿Cuál es su sexo?: M=Masculino F=Femenino. M ¿En qué ciudad vive? 1. Asunción 2. Luque 3. Mariano Roque Alonso 4. Limpio. 2 _.:: INFORME DE CLIENTE ::._ El cliente se llama Juan Pérez, es menor de edad y vive en Luque. Muchas Gracias por registrarse… 194. Hacer un algoritmo para ayudar a un trabajador a saber cuál será su sueldo semanal, se sabe que, si trabaja 40 horas o menos, se le pagará $20 por hora, pero si trabaja más de 40 horas entonces las horas extras se le pagarán a $25 por hora.
  • 40. Ejercicios de algorítmica. Programación estructurada P á g i n a 39 | 55 Estructura Repetitiva Se llaman problemas repetitivos o cíclicos a aquellos en cuya solución es necesario utilizar un mismo conjunto de acciones que se puedan ejecutar una cantidad específica de veces. Esta cantidad puede ser fija (previamente determinada por el programador) o puede ser variable (estar en función de algún dato dentro del programa). Los ciclos se clasifican en: Cicloscon un Número Determinado de Iteraciones Para: Son aquellos en que el número de iteraciones se conoce antes de ejecutarse el ciclo. La forma de esta estructura es la siguiente: Pseudocódigo Para i=1 hasta i=10 incremento 1 Sentencias Fin para Dado un valor inicial “i” asignado a la variable esta se irá aumentando o disminuyendo de acuerdo al incremento hasta llegar a i=10; si se omite el paso, significa que la variable aumentará de uno en uno. Ciclos con un Número Indeterminado de Iteraciones Son aquellos en que el número de iteraciones no se conoce con exactitud, ya que esta dado en función de un dato dentro del programa.
  • 41. Ejercicios de algorítmica. Programación estructurada P á g i n a 40 | 55 MientrasQue: Esta es una estructura que repetirá un proceso durante “N” veces, donde “N” puede ser fijo o variable. Para esto, la instrucción se vale de una condición que es la que debe cumplirse para que se siga ejecutando. Cuando la condición ya no se cumple, entonces ya no se ejecuta el proceso. La forma de esta estructura es la siguiente: Pseudocódigo Diagrama de Flujos Repita-Hasta: Esta es una estructura similar en algunas características, a la anterior. Repite un proceso una cantidad de veces, pero a diferencia del Mientras Que, el Repita-Hasta lo hace hasta que la condición se cumple y no mientras, como en el Mientras Que. Por otra parte, esta estructura permite realizar el proceso cuando menos una vez, ya que la condición se evalúa al final del proceso, mientras que en el Mientras Que puede ser que nunca llegue a entrar si la condición no se cumple desde un principio. La forma de esta estructura es la siguiente: Pseudocódigo Diagrama de Flujos
  • 42. Ejercicios de algorítmica. Programación estructurada P á g i n a 41 | 55 195. Ejemplo 1: Realizar un algoritmo que muestre los números de uno en uno hasta diez usando una estructura Para. Exprese el algoritmo usando Pseudocódigo y diagrama de flujos. Pseudocódigo Diagrama de Flujos 196. Ejemplo 2: Usando una estructura Mientras, realizar un algoritmo que escriba los números de uno en uno hasta 20 Pseudocódigo Diagrama de Flujos
  • 43. Ejercicios de algorítmica. Programación estructurada P á g i n a 42 | 55 197. Ejemplo 3: Realizar un algoritmo que pregunte al usuario un número comprendido en el rango de 1 a 5. El algoritmo deberá validar el número, de manera que no continúe la ejecución del programa mientras no se escriba un número correcto. Pseudocódigo Diagrama de Flujos Ejercicios: 198. Imprimir los primero 5 números naturales. 199. Calcular e imprimir el cuadrado de los primero 10 números naturales. 200. Imprimir la sumatoria de todos los números de 1 al 100. 201. Imprimir todos los números pares del 2 al 50. 202. Imprimir todos los números del 15 al 1. 203. Crear un ciclo que pida su edad a 5 personas. 204. Solicitar el año de nacimiento y calcular la edad de 6 personas. 205. Un algoritmo para calcular la suma de 5 datos leídos por pantalla. 206. Solicitar los datos de cinco personas como: Nombre, apellido, edad, sexo y teléfono. Luego imprimir. 207. Generar las series 1, 2, 3 ,4,5 …,23 208. Genera 5, 10, 15 ,20, 25, 30 ,35 ,40, 45…, n (n debe ser leído por pantalla) 209. Leer 5 números por teclado, elimine el mayor y el menor y promedie los 3 restantes. Imprima el resultado. 210. Dados seis números enteros determinar, el menor de ellos. 211. Elabora un programa que permita leer números pares comprendiendo entre 20 y 10 inclusive (orden descendente) 212. Desarrollar un programa que muestre la tabla de multiplicar de un número ingresado por el teclado. 213. Hacer un algoritmo que imprima la tabla de multiplicar de los números del uno nueve.
  • 44. Ejercicios de algorítmica. Programación estructurada P á g i n a 43 | 55 214. Hacer un algoritmo que nos permita saber cuál es el número mayor y menor, se debe ingresar sólo veinte números. 215. Hacer un algoritmo para calcular el resto y cociente por medio de restas sucesivas. 216. Hacer un algoritmo para determinar la media de una lista indefinida de números positivos, se debe acabar el programa al ingresar un número positivo. 217. Hacer un algoritmo para calcular la suma de los primeros cien números. 218. Desarrollar un programa que muestre la tabla de multiplicar de un numero ingresado por el teclado. 219. Calcular el promedio de un alumno que tiene 7 calificaciones en la materia de Diseño Estructurado de Algoritmos. 220. Un empleado de una empresa de telefonía debe imprimir la cantidad de números telefónicos y los nombres de los portadores que retiran por día. 221. Leer 35 números y calcular la suma de sus cuadrados y la sumatoria de los mismos. 222. Crear un programa que pida la edad de una persona y muestre su año de nacimiento. Luego muestre una pregunta si desea cargar otra edad 1=Si / 2=No y repetir el ciclo. 223. Leer 10 números y obtener su cubo y su cuarta. Mostrar un menú que permita seleccionar cuál de los cálculos desea hacer. 224. Dado 6 números enteros determinar el menor de ellos. Repetir el ciclo hasta que el usuario lo decida. Imprimir cuantas personas realizaron el ejercicio. 225. Leer 10 números e imprimir solamente los números positivos. Repetir el ciclo hasta que el usuario lo decida. Imprimir cuantas personas realizaron el ejercicio. 226. Leer 20 números e imprimir cuantos son positivos, cuantos negativos y cuantos neutros. Repetir el ciclo hasta que el usuario lo decida. Imprimir cuantas personas realizaron el ejercicio. 227. Leer 15 números negativos y convertirlos a positivos e imprimir dichos números. Repetir el ciclo hasta que el usuario lo decida. Imprimir cuantas personas realizaron el ejercicio. 228. Suponga que se tiene las calificaciones de un grupo de 40 alumnos. Realizar un algoritmo para calcular la calificación media y la calificación más baja de todo el grupo. 229. Calcular e imprimir la tabla de multiplicar de un número cualquiera. Imprimir el multiplicando, el multiplicador y el producto. 230. Simular el comportamiento de un reloj digital, imprimiendo la hora, minutos y segundos de un día desde las 0:00:00 horas hasta las 23:59:59 horas. 231. Calcular la suma de 10 números reales ingresados por teclado. Informar el resultado. 232. Desafío: Una persona debe realizar un muestreo con 50 personas para determinar el promedio de peso de los niños, jóvenes, adultos y viejos que existen en su zona habitacional. Se determinan las categorías con base en la sig., tabla: CATEGORÍA EDAD Niños 0 - 12
  • 45. Ejercicios de algorítmica. Programación estructurada P á g i n a 44 | 55 Jóvenes 13 - 29 Adultos 30 - 59 Viejos 60 en adelante 233. Al cerrar un expendio de naranjas, 15 clientes que aún no han pagado recibirán un 15% de descuento si compran más de 10 kilos. Determinar cuánto pagará cada cliente y cuanto percibirá la tienda por esas compras. 234. Hacer un algoritmo para determinar la media de una lista indefinida de números positivos, se debe acabar el programa al ingresar un número positivo especificado con anterioridad. 235. Hacer un algoritmo que permita calcular la factorial de un número. 236. Hacer un algoritmo en para calcular la suma de los n primeros números. 237. Hacer un algoritmo para calcular la suma de los números impares menores o iguales a n. 238. Hacer un algoritmo para realizar la suma de todos los números pares hasta el 100. 239. Hacer un algoritmo para calcular la factorial de un número de una forma distinta. 240. Hacer un algoritmo para determinar la media de una lista indefinida de números positivos, se debe acabar el programa al ingresar un número positivo. 241. Hacer un algoritmo para calcular la suma de los primeros cien números con un ciclo repetir. 242. Hacer un programa que lea los resultados de los partidos de un equipo de futbol ante sus adversarios y diga cuanto puntaje acumuló, cuantos goles a favor tiene y cuantos goles en contra tiene: 243. Hacer una tabla del multiplicador en forma creciente, leer el numero por pantalla, y repetir el ejercicio hasta que el usuario lo decida. 244. Crea un programa que pida al usuario un código de usuario y una contraseña. Deberá repetirse hasta que el usuario sea "Admin" y la contraseña sea "1234". 245. Haz un programa que permita calcular la suma de pares de números. Pedirá dos números al usuario y mostrará su suma, volviendo a repetir hasta que ambos números introducidos sean 0. Utilizar estructura con condición inicial. 246. Haz un programa que permita calcular la suma de pares de números. Pedirá dos números al usuario y mostrará su suma, volviendo a repetir hasta que ambos números introducidos sean 0. Utilizar estructura con condición final. 247. Haz un programa que permita calcular la suma de pares de números. Pedirá dos números al usuario y mostrará su suma, volviendo a repetir hasta que ambos números introducidos sean 0. Utilizar estructura iterativa. 248. Prepara un programa que divida dos números que introduzca el usuario. Si el segundo número es cero, se le deberá avisar y volver a pedir tantas veces como sea necesario, hasta que introduzca un número distinto de cero, momento en que se calculará y mostrará el resultado de la división. 249. Desafío: Crea una aplicación que permita adivinar un número. La aplicación genera un número aleatorio del 1 al 100. A continuación, va pidiendo números y va respondiendo si el número a adivinar es mayor o menor que el introducido, además de los intentos que te quedan (tienes 10 intentos para acertarlo). El programa termina cuando se acierta el número (además te dice
  • 46. Ejercicios de algorítmica. Programación estructurada P á g i n a 45 | 55 en cuantos intentos lo has acertado), si se llega al límite de intentos te muestra el número que había generado. 250. Escribe un programa que pida el límite inferior y superior de un intervalo. Si el límite inferior es mayor que el superior lo tiene que volver a pedir. A continuación se van introduciendo números hasta que introduzcamos el 0. Cuando termine el programa dará las siguientes informaciones: 251. La suma de los números que están dentro del intervalo (intervalo abierto). 252. Cuantos números están fuera del intervalo. 253. He informa si hemos introducido algún número igual a los límites del intervalo. 254. Una empresa tiene el registro de las horas que trabaja diariamente un empleado durante la semana (seis días) y requiere determinar el total de éstas, así como el sueldo que recibirá por las horas trabajadas. Horas extra más de 8 horas al día. Solicitar por pantalla las horas trabajadas por cada dia. 255. Desafío: Se requiere clasificar a las personas que se jubilaran en el año. Existen tres tipos de jubilaciones: por edad, por antigüedad joven y por antigüedad adulta. Las personas adscritas a la jubilación por edad deben tener 60 años o más y una antigüedad en su empleo de menos de 25 años. Las personas adscritas a la jubilación por antigüedad joven deben tener menos de 60 años y una antigüedad en su empleo de 25 años o más. Las personas adscritas a la jubilación por antigüedad adulta deben tener 60 años o más y una antigüedad en su empleo de 25 años o más. Determinar en qué tipo de jubilación, quedara adscrita una persona. 256. En una fábrica de computadoras se planea ofrecer a los clientes un descuento que dependerá del número de computadoras que compre. Si las computadoras son menos de cinco se les dará un 10% de descuento sobre el total de la compra; si el número de computadoras es mayor o igual a cinco, pero menos de diez se le otorga un 20% de descuento; y si son 10 o más se les da un 40% de descuento. El precio de cada computadora es de $11,000 257. Crear un programa que cree un menú con opciones y realice los cálculos mediante funciones, descritas en los siguientes 3 ejercicios. Repetir hasta que el usuario desee salir. 258. Hacer un algoritmo para calcular la suma de los primeros cien números con un ciclo repetir. 259. Hacer un algoritmo para calcular la suma de los primeros cien números con un ciclo mientras. 260. Realizar un programa que promedie una lista indeterminada de números reales, hasta que se introduzca un número negativo. Escriba el programa de dos formas: usando el Repetir hasta. 261. Realizar un programa que promedie una lista indeterminada de números reales, hasta que se introduzca un número negativo. Escriba el programa de dos formas: usando el Mientras. 262. Suponga que se piden “X” cantidad prestados a un banco, con el acuerdo de devolver “Y” cantidad cada mes hasta devolver el préstamo completo. Parte del pago mensual serán intereses, calculados como la i por ciento del capital por devolver en ese momento. El resto del pago mensual se aplica a reducir el capital a devolver. El programa debe determinar:
  • 47. Ejercicios de algorítmica. Programación estructurada P á g i n a 46 | 55 a.- La cantidad de intereses pagada cada mes. b.- La cantidad de dinero aplicada cada mes al capital por devolver c.- La cantidad acumulada de intereses pagados al final de cada mes. d.- La cantidad del préstamo aún pendiente al final de cada mes. e.- El número necesario de pagos mensuales para devolver el préstamo completo. f.- La cantidad del último pago (probablemente menor que Y) 263. Los surtidores de una gasolinera registran las ventas por galones, pero el precio de la gasolina está fijada en litros. 264. El programa debe calcular lo que los clientes deben pagar y el total recaudado por la gasolinera, tomando en cuenta lo Siguiente: • Cada galón tiene 3,785 litros • El precio del litro es para el Tipo A 6500, para el Tipo B 6000 y para el Tipo C 5500 El programa finaliza cuando el usuario lo decida. 265. Escriba un programa que lea un valor entero positivo y determine: a) Si el entero es un número primo. b) Si el entero es un número de Fibonacci. (Los números de Fibonacci forman una secuencia en la cual cada número es igual a la suma de los dos anteriores, siendo los dos primeros números iguales a 1). 266. En un centro de verificación de automóviles se desea saber el promedio de puntos contaminantes de los primeros 25 automóviles que lleguen. Asimismo se desea saber los puntos contaminantes del carro que menos contamino y del que más contamino. 267. Un entrenador le ha propuesto a un atleta recorrer una ruta de cinco kilómetros durante 10 días, para determinar si es apto para la prueba de 5 Kilómetros o debe buscar otra especialidad. Para considerarlo apto debe cumplir por lo menos una de las siguientes condiciones: - Que en ninguna de las pruebas haga un tiempo mayor a 16 minutos. - Que al menos en una de las pruebas realice un tiempo mayor a 16 minutos. - Que su promedio de tiempos sea menor o igual a 15 minutos.
  • 48. Ejercicios de algorítmica. Programación estructurada P á g i n a 47 | 55 268. Un Zoólogo pretende determinar el porcentaje de animales que hay en las siguientes tres categorías de edades: de 0 a 1 año, de más de 1 año y menos de 3 y de 3 o más años. El zoológico todavía no está seguro del animal que va a estudiar. Si se decide por elefantes solo tomara una muestra de 20 de ellos; si se decide por las jirafas, tomara 15 muestras, y si son chimpancés tomara 40. 269. Una compañía de seguros tiene contratados a n vendedores. Cada uno hace tres ventas a la semana. Su política de pagos es que un vendedor recibe un sueldo base, y un 10% extra por comisiones de sus ventas. El gerente de su compañía desea saber cuánto dinero obtendrá en la semana cada vendedor por concepto de comisiones por las tres ventas realizadas, y cuanto tomando en cuenta su sueldo base y sus comisiones. 270. En una empresa se requiere calcular el salario semanal de cada uno de los n obreros que laboran en ella. El salario se obtiene de la sig. Forma: 271. Si el obrero trabaja 40 horas o menos se le paga $20 por hora 272. Si trabaja más de 40 horas se le paga $20 por cada una de las primeras 40 horas y $25 por cada hora extra. 273. Determinar cuántos hombres y cuantas mujeres se encuentran en un grupo de n personas, suponiendo que los datos son extraídos alumno por alumno. 274. El Departamento de Seguridad Publica y Transito desea saber, de los n autos que entran a la ciudad, cuantos entran con calcomanía de cada color. Conociendo el último dígito de la placa de cada automóvil se puede determinar el color de la calcomanía utilizando la siguiente relación: DÍGITO COLOR 1 o 2 amarilla 3 o 4 rosa 5 o 6 roja 7 o 8 verde 9 o 0 azul 275. Obtener el promedio de calificaciones de un grupo de n alumnos. Leyendo tres calificaciones por cada alumno (primero promediar por cada alumno y el resultado promediar en general. Si en la última prueba obtuvo 1 se la calificación del alumno es 1). 276. Una persona desea invertir su dinero en un banco, el cual le otorga un 2% de interés. Cuál será la cantidad de dinero que esta persona tendrá al cabo de un año si la ganancia de cada mes es reinvertida? 277. Calcular el promedio de edades de hombres, mujeres y de todo un grupo de alumnos. Preguntar mediante un menú si se desea seguir cargando más alumnos. Imprimir la cantidad de alumnos. 278. Calcular el promedio de edades de hombres, mujeres y de un grupo de 30 alumnos. 279. Crear una aplicación que muestre y ejecute, mediante funciones, los ejercicios planteados en los 5 enunciados siguientes: repetir el programa hasta que el usuario decida salir del programa. 280. Encontrar el menor valor de un conjunto de n números dados. 281. Encontrar el mayor valor de un conjunto de n números dados.
  • 49. Ejercicios de algorítmica. Programación estructurada P á g i n a 48 | 55 282. Hacer un programa que cuente del uno al 10 283. Hacer un programa que pida un número y muestre los 10 siguientes números. 284. Hacer un programa que cuente del 20 a 1 en forma descendente 285. Hacer un programa que realice uno detrás de otro los ejercicios planteados en los siguientes 6 enunciados mediante funciones, sumar todos los últimos resultados de cada ejercicio y al final imprimir la sumatoria total de todos los resultados. Repetir el ejercicio 4 veces. 286. Realiza un algoritmo que muestre por la pantalla la tabla de multiplicar dos en forma creciente 287. Hallar la suma de los números enteros del 1 al 50 288. Diseña un algoritmo que me permita ingresar cualquier número y luego el algoritmo deberá calcular los múltiplos menores que 10 289. Dado a, b determinar el valor de la división entera y el resto de la división entera de a, b sin usar los operadores div y mod. 290. Mostrar solo la parte decimal de una división entre 2 números a y b sin usar div mod. 291. Hacer un programa que calcule la suma, suma de cuadrados y suma de cubos de los n primeros números naturales. 292. Crear un programa que muestre un menú de los siguientes 4 enunciados repetir el ciclo hasta que el usuario decida salir, imprimir cuantas veces se repitió el ciclo y cuantas veces se realizó cada enunciado. 293. Hacer un programa que muestre la tabla de multiplicar de numero 5 sin mostrar el 25 294. Hacer un programa que sume los 10 pares que le siguen al 24 295. Hacer un programa que sume los 10 impares que le siguen al número n 296. Hacer un programa que sume los pares comprendidos entre 100 y 200. 297. Hacer un programa que permita la tabla de multiplicar del 1 al 9. Hacer un programa que sume los diez primeros números pares, luego que sume los 10 primeros impares y muestre la diferencia de ambos. 298. Hacer un programa que sume los 10 números pares que le siguen a n, luego que sume los 10 impares que le siguen a m, y muestre la diferencia entre ambos resultados. 299. Desafío: Hacer un programa que muestre cuantos “lunes” hay entre las fechas 19 de septiembre del 2004 y el 25 de diciembre del mismo año 300. Desafío: Hacer un programa que muestre cuantos “lunes” hay entre las fechas 19 de septiembre del 2004 y el 25 de diciembre del mismo año, mostrando que día cae lunes y el nombre del mes correspondiente de ese día 301. Se requiere saber cuál es la ciudad con la población de más personas y a qué departamento pertenece, son tres departamentos y 11 ciudades. 302. Hacer un algoritmo para calcular la serie de Fibonacci. 303. Desafío: Hacer un algoritmo para conseguir el M.C.D de un número por medio del algoritmo de Euclides. 304. Desafío: Hacer un algoritmo que cumpla con la aproximación del número pi con la serie de Gregory-Leibniz. La fórmula que se debe aplicar es: Pi = (4/1) - (4/3) + (4/5) - (4/7) + (4/9) - (4/11) + (4/13) - (4/15)
  • 50. Ejercicios de algorítmica. Programación estructurada P á g i n a 49 | 55 Arreglos Hasta ahora se han usado datos que representan valores de tipo simple como un número entero, real ó carácter. Sin embargo, en muchas situaciones se necesita procesar un conjunto de valores que están relacionados entre sí por algún método, por ejemplo, una lista de calificaciones, una serie de temperaturas. Arreglos Unidimensionales - Vectores. Un arreglo es una secuencia de posiciones consecutivas de memoria que almacenan datos del mismo tipo. Estos datos comparten un nombre común. En cuanto a su dimensión, los arreglos se pueden clasificar como : UNIDIMENSIONALES: Vector, lista, matriz de una dimensión. Ej : Un vector denominado ventas, de 10 elementos, se puede representar como : ventas[1] ventas[2] ventas[3] ……… ventas[10] El subíndice de cada elemento designa su posición en la ordenación del vector. Se observa que todos los elementos comparten el nombre y que cada elemento se referencia por su subíndice o sea su posición relativa en el vector. Declaraciónde un arreglo Unidimensional : Estático : tipo nombre [dimensión] Ej : la instrucción entero x[8] declara un arreglo de nombre x, de 8 elementos de tipo entero.
  • 51. Ejercicios de algorítmica. Programación estructurada P á g i n a 50 | 55 BIDIMENSIONALES (TABLA, MATRIZ ) : Se pueden considerar como un vector de vectores. En este caso se necesita especificar dos subíndices para identificar cada elemento del arreglo : El primer subíndice se refiere a las filas ( i ) y el segundo a las columnas ( j ) . Declaración de un arreglo de dos dimensiones : Estático: tipo nombre [filas, coumnas] Ej : entero A [3,3] declara un arreglo de datos tipo entero de 3 filas y tres columnas. Almacenamiento de arreglos en memoria Arreglos de Una y dos dimensiones se representan como se muestra: Array unidimensional o vector A[1] A[2] A[3] A[4] ... A[n] Array bidimensional o matrices A[1,1] A[1,2] A[1,3] A[1,4] ... A[1,n] A[2,1] A[2,2] A[2,3] A[2,4] ... A[2,n] A[3,1] A[3,2] A[3,3] A[3,4] ... A[3,n] : : : : : : A[m,1] A[m,2] A[m,3] A[m,4] A[m,n] La memoria de la computadora es unidimensional, por lo que el almacenamiento de Operaciones sobre arreglos Las operaciones que se pueden realizar con arreglos durante el proceso de resolución de un problema son: Asignación
  • 52. Ejercicios de algorítmica. Programación estructurada P á g i n a 51 | 55 Lectura / Escritura Recorrido Búsqueda Ordenamiento. Asignación : La asignación de valores a un elemento de un arreglo se representa con la instrucción: A[10] = 3 / asigna el valor 3 al elemento 10 del vector A ventas[2,2] = 1500 Si se desea asignar valores a todos los elementos de un vector, se debe usar estructuras de repetición. Caso Unidimensional: Asignar el valor 6 a todos los elementos de un vector A[5] repetir_desde ( i = 1; i <= 5 ; i=i+1) A[i] = 6 fin_repetir_desde Caso Bidimensional: Inicializar un vector B[2,3] con el valor cero. repetir_desde ( i = 1; i <= 2 ; i=i+1) repetir_desde ( j = 1; j <= 3 ; j=j+1) B[i,j] = 0 fin_repetir_desde fin_repetir_desde Lectura / Escritura : La lectura/escritura de datos en arreglos u operaciones de entrada/salida, normalmente se realizan con estructuras repetitivas o selectivas. Las instrucciones simples de lectura/escritura se representan como: leer(Nombre_del_arreglo[Indice]) mostrar(Nombre_del_arreglo[Indice]) Ej : leer(X[3]) / Lee el elemento 3 del vector X
  • 53. Ejercicios de algorítmica. Programación estructurada P á g i n a 52 | 55 Recorrido : A la operación de efectuar alguna acción sobre todos los elementos del vector se le llama recorrido. Estas operaciones se realizan usando estructuras de repetición, cuyas variables de control se usan como índices del vector. Se puede realizar esta operación para introducir datos al vector (leer) o para ver su contenido (mostrar). 305. Ejemplo 1: Lectura de los 10 valores de un vector P. 306. Ejemplo 2: El siguiente algoritmo lee las notas del primer examen de Computación de una sección de 40 alumnos , a fin de calcular el promedio. 307. Si se deseara mostrar la cantidad de alumnos con notas superiores al promedio se agregan las siguientes líneas al algoritmo anterior: 308. Ejemplo 3: Leer una matriz de dos dimensiones A[5,4]. Dado que es una matriz de dos dimensiones, se necesitan dos bucles anidados para recorrer todos sus elementos.
  • 54. Ejercicios de algorítmica. Programación estructurada P á g i n a 53 | 55 309. Ejemplo 4: Inicializar una matriz de dos dimensiones con valor constante 0. El algoritmo debe asignar la constante 0 a todos los elementos de la matriz A[5,4]. Dado que es una matriz de dos dimensiones, se necesitan dos bucles anidados para recorrer todos sus elementos: 310. Ejemplo 5: Realizar la suma de dos matrices bidimensionales. Para sumar dos matrices es preciso que las dos matrices tengan las mismas dimensiones. La matriz suma[I,J] tendrá las mismas dimensiones de las matrices sumandos y cada elemento será la suma de los mismos elementos correspondientes en las matrices sumandos: suma[I,J] = A[I,J] + B[I,J]. Dado que las matrices son de dos dimensiones se requieren dos bucles anidados: 311. Ejemplo 6: Diseñar un algoritmo que genere una matriz identidad de orden n.
  • 55. Ejercicios de algorítmica. Programación estructurada P á g i n a 54 | 55 La matriz identidad tiene todos los elementos de la diagonal principal igual a uno (1), todos los demás elementos son igual a cero (0). En los elementos de la diagonal principal I = J. Ejercicios de Arreglos (Vectores) ALGORITMOS DE VECTORES: 312. Hacer un algoritmo que permita cargar un vector con cinco números enteros y determinar lo siguiente: ¿Cual es el número mayor? y ¿Cual es el número menor? 313. Hacer un algoritmo que permita cargar un vector con cinco números enteros y determinar, ¿Cuantos números primos existen en el vector?. 314. Hacer un algoritmo que permita cargar un vector con cinco números enteros y determinar, ¿Cuantos números pares y cuantos números impares existen en el vector? 315. Hacer un algoritmo que permita cargar un vector con cinco números enteros y mostrar los elementos del vector ordenados ascendentemente. 316. Hacer un algoritmo que permita cargar un vector con cinco números enteros y determinar. ¿Cuantos y cuales números se repiten? 317. Hacer un algoritmo que permita cargar dos vectores con cinco números enteros cada uno y determinar lo siguiente: ¿Cual es el número mayor de los dos vectores? 318. Hacer un algoritmo que permita cargar dos vectores con cinco números enteros cada uno y cargar un tercer vector con la suma de los dos primeros. 319. Hacer un algoritmo que permita cargar dos vectores con cinco números enteros cada uno y calcular el promedio de cada uno de ellos. 320. Hacer un algoritmo que permita cargar dos vectores con cinco números enteros cada uno y determinar si existe un número en el primer vector repetido en el segundo vector.
  • 56. Ejercicios de algorítmica. Programación estructurada P á g i n a 55 | 55 321. Hacer un algoritmo que permita cargar dos vectores con cinco números enteros cada uno y cargar otro vector con los números del primer vector y los del segundo vector. Ejercicios de matrices 322. Crear una matriz de 4 x 4. Y cargar los elementos por pantalla. Imprimir los valores. 323. Crear una matriz de F x C. y cargar los elementos por pantalla. Sumar e imprimir los valores. 324. Cargar una matriz de 5 x 5 por pantalla buscar el mayor valor. 325. Cargar una matriz de N x M por pantalla, buscar el menor valor y su posición. 326. Crear una matriz de n x m tamaño cargar los mismos por pantalla, sumar todos sus valores e imprimir el promedio. 327. Cargar e imprimir una matriz de 5 x 6. Copiar todos sus valores en otra matriz igual. 328. Cargar e imprimir una matriz de n x m. crear otra matriz y cargar en la misma el cuadrado dé cada valor del primer arreglo. 329. Crear 3 arreglos, de n x m, cargar los primero 2 por pantalla y cargar el tercero con la suma de los dos primeros. 330. Crear y cargar una matriz de n x m, crear otra matriz y cargar la otra matriz con los datos de la primera en orden inverso. 331. Cargar una matriz de n x m, sumar todos los valores, hallar el máximo, mínimo y promedio de los valores.