Materia Laboratorio de Computación I Unidad Metodología de Programación
Materia Laboratorio de Computación I Unidad Metodología de Programación
Materia Laboratorio de Computación I Unidad Metodología de Programación
Materia
Laboratorio de Computación I
Unidad
Metodología de programación
Versión 2022
Página 1 de 15
Metodología de Programación
El objetivo de esta práctica es trabajar en grupos para debatir y acordar sobre la comprensión del
problema y sus posibles soluciones.
Además, se pide que determinen el tipo de valores de los datos y de los resultados.
1.1. Calcular el sueldo de un operario conociendo la cantidad de horas que trabajó en el mes y
el valor de cada hora.
1.4. Dada una lista de 3 números, determinar si el primero es menor que los otros 2.
1.5. Dados los catetos de un triángulo, calcular el perímetro de este si la longitud del cateto
mayor es mayor a 100, de lo contrario, calcular su superficie.
1.7. Dada una lista de valores enteros que finaliza cuando se ingresa el valor cero, hallar el
rango de la lista, es decir, la diferencia entre el valor máximo y el mínimo de esta.
Página 2 de 15
Metodología de Programación
En los ejercicios siguientes se deberá evaluar expresiones que utilizan los operadores aritméticos,
de relación y lógicos.
A B AyB A B AoB A no A
f f f f f f f v
f v f f v v v f
v f f v f v
v v v v v v
Indique el resultado de las expresiones si es que las mismas son correctas. Caso
contrario indicar el error.
2.1. A > B + 1
2.2. A = 6 y B = -4
2.3. A = 6 o B = -4
2.4. A = 6 o B = 4
2.5. (A = C) o (B = 4) y (C = 2)
2.6. A – B < o C
2.7. no (A > 0)
2.8. A + 2 = 8 y (C – 2 = b)
2.9. (A = - 6) y (B = -4)
Escriba una expresión lógica para cada una de las siguientes condiciones. Para todos
los casos X, Y, Z Y W son variables reales)
Página 3 de 15
Metodología de Programación
Proceso seguimiento
//Definimos variables
definir H, R, G, T, N Como Real
// comienzo de algoritmo
H= 2.15
R= 0.85
T= 1.5
G=H+R
T= H*G
N= G-T
Escribir R,R,G,T,N
FinProceso
3.3. Leer dos números enteros por teclado y emitir los resultados de las siguientes
operaciones:
• La suma de ambos
• La resta del primero menos el segundo
• La multiplicación de ambos
3.4. Escriba el algoritmo que resuelva el ejercicio 1.1. que decía: Calcular el sueldo de
un operario conociendo la cantidad de horas que trabajó en el mes y el valor de cada
hora.
3.5. Escriba un programa que lea el peso en libras de un objeto, y calcule y emita su
peso convertido a gramos y a kilogramos. (Supondremos que 1 libra = 450 gr).
3.8. Realizar un programa para intercambiar los contenidos de dos variables enteras.
3.9. Realizar un programa que declare las variables x, y, z, les asigne los valores 10,
20 y 30 e intercambie entre si sus valores de forma que el valor de x pasa a y, el de y
Página 4 de 15
Metodología de Programación
3.10. Suponga que un individuo desea invertir su capital en un banco y desea saber
cuánto dinero ganara después de un mes si el banco paga a razón de 2% mensual.
3.11. Un vendedor recibe un sueldo base mas 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.
3.12. Una tienda ofrece un descuento del 15% sobre el total de la compra y un cliente
desea saber cuánto deberá pagar finalmente por su compra.
3.15. Dada una cantidad en pesos, obtener la equivalencia en dólares, asumiendo que
la unidad cambiaría es un dato desconocido.
3.18. Calcular el número de pulsaciones que una persona debe tener por cada 10
segundos de ejercicio, si la formula es:
num. pulsaciones = (220 - edad)/10
3.19. Calcular el nuevo salario de un obrero si obtuvo un incremento del 25% sobre su
salario anterior.
Obtener la cantidad de dinero que recibirá cada área, para cualquier monto
presupuestal.
Página 5 de 15
Metodología de Programación
3.22. 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.
4.3. Dados 2 números reales, emitir uno de estos 3 mensajes, según corresponda:
- “El primero es mayor que el segundo”
- “El primero es menor que el segundo”
- “Ambos son iguales”
4.4. Leer un número real y emitir una leyenda informando si es mayor, menor o igual a
cero
Página 6 de 15
Metodología de Programación
Proceso seguimiento
//Definimos variables
definir a, b, c Como Entero
// comienzo de algoritmo
leer a
leer b
leer c
segun a hacer
1:
si b>c entonces
escribir b
Sino
escribir c
FinSi
2:
si b>c entonces
escribir b
Sino
si b<=c entonces
escribir c
FinSi
FinSi
3:
si b>0 entonces
si c>0 entonces
escribir b
sino
escribir c
FinSi
Sino
si b=0 entonces
escribir c
sino
si b<0 entonces
escribir b
FinSi
FinSi
FinSi
4:
d= b+c
escribir d
De Otro Modo:
Escribir "Opción no válida"
FinSegun
FinProceso
Página 7 de 15
Metodología de Programación
4.6. Dadas las longitudes de los 3 lados de un triángulo, determinar e informar si éste
es equilátero, isósceles o escaleno. Dar 2 soluciones diferentes a este ejercicio.
4.7. Resolver el ejercicio 1.4 que decía: Dada una lista de 3 números, determinar si el
primero es menor que los otros 2.
4.8. Se ingresan 3 valores numéricos. Si el primer valor es mayor que el segundo, pero
menor que el tercero, se debe emitir el producto de los 3 valores; caso contrario se
debe emitir la suma de los 3 valores.
4.10. Leer 3 caracteres y emitir el máximo de ellos. Si fueran 3 cadenas, ¿hay cambios
en el algoritmo?
4.11. Dados 2 valores reales, hallar el cociente del primero por el segundo. Emitir un
mensaje en el caso de la división por cero.
4.14. Ingresar 4 números de a uno por vez. Si los valores están ordenados en forma
estrictamente creciente, emitir el mensaje “Conjunto Ordenado”, caso contrario, emitir
el mensaje “Conjunto Desordenado”.
Página 8 de 15
Metodología de Programación
5.1. 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 $10000, y en ese caso desea saber cuánto dinero
tendrá finalmente en su cuenta.
5.3. En un almacén se hace un 20% de descuento a los clientes cuya compra supere
los $5000 ¿Cuál será la cantidad que pagará una persona por su compra?
5.5. Calcular el total que una persona debe pagar en una gomería, si el precio de cada
llanta es de $20000 si se compran menos de 5 llantas y de $70000 si se compran 5 o
más.
5.7. 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:
num. pulsaciones = (220 - edad)/10
y si el sexo es masculino:
num. pulsaciones = (210 - edad)/10
Página 9 de 15
Metodología de Programación
5.11. Una empresa de bienes raíces ofrece casas de interés social, bajo las siguientes
condiciones: Si los ingresos del comprador son menores de $80000 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 de $80000 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.
El gobierno desea saber el número de pinos, oyameles y cedros que tendrá que
sembrar en el bosque, si se sabe que en 10 metros cuadrados caben 8 pinos, en 15
metros cuadrados caben 15 oyameles y en 18 metros cuadrados caben 10 cedros.
También se sabe que una hectárea equivale a 10 mil metros cuadrados.
6.1. 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.
6.2. Leer tres números diferentes e imprimir el número mayor de los tres.
6.3. 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.
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
10 años o más 20% del salario
Página 10 de 15
Metodología de Programación
6.7. En un juego de preguntas a las que se responde “Si” o “No” gana quien responda
correctamente las tres preguntas. Si se responde mal a cualquiera de ellas ya no se
pregunta la siguiente y termina el juego. Las preguntas son:
¿Colon descubrió América?
¿La independencia de México fue en el año 1810?
The Doors fue un grupo de rock Americano?
6.8. 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 pagará, con IVA
incluido, un cliente cualquiera por la compra de su aparato.
6.9. Una frutería ofrece las manzanas con descuento según la siguiente tabla:
NUM. DE KILOS COMPRADOS % DESCUENTO
0 - 2 0%
2.01 - 5 10%
5.01 - 10 15%
10.01 en adelante 20%
Determinar cuánto pagara una persona que compre manzanas es esa frutería.
6.10. El dueño de una empresa desea planificar las decisiones financieras que tomará
en el siguiente año. La manera de planificarlas depende de lo siguiente:
6.11. Realizar un programa que le presente al usuario un menú de opciones con las
cuatro operaciones básicas (suma, resta, multiplicación, división). Según la operación
elegida ingresará 2 números enteros, se realizará la misma y se mostrará por pantalla
Página 11 de 15
Metodología de Programación
Página 12 de 15
Metodología de Programación
7. Ejercicios de “Repetición”
7.2. Ingrese 5 pares de valores. En cada oportunidad, emita ambos valores, pero si
además ambos son positivos, emita también el promedio.
7.3. Leer 1000 caracteres. Contar y emitir la cantidad de letras ‘A’ que hay entre esos
caracteres (es indistinto mayúsculas y minúsculas).
7.4. Dada una lista de 100 valores reales, calcular y emitir la sumatoria de todos los
valores menores que el primero de la lista.
7.6. Leer un lote de N valores, de a uno por vez. Determinar y emitir el valor máximo
del conjunto.
7.7. Leer un lote de N valores, de a uno por vez. Determinar y emitir el valor mínimo
del conjunto y la posición en que se halla. Si el mínimo se encuentra en más de una
posición, considerar solo el primero encontrado. ¿Qué debería modificarse en el
algoritmo original si se quiere considerar el último mínimo encontrado en caso de que
haya varios mínimos?
7.8. Leer un lote de valores enteros cuyo fin está dado por un 0 (cero). Contar y emitir
cuántos valores componen este lote.
7.9. Ingresar, carácter por carácter, una palabra terminada con un ‘.’ (punto). Contar y
emitir la cantidad de letras que componen este lote.
7.10. Leer una secuencia de caracteres que termina con un ‘*’ (asterisco) y contar la
cantidad de letras ‘a’ que componen la secuencia.
7.11. Ingresar pares de valores reales. En cada oportunidad, emitir ambos valores. Si
además ambos son positivos, emitir también su promedio. La lista de pares finaliza
con un par (0,0).
7.12. Dada una lista de valores enteros positivos cuya terminación debe usted indicar,
construya un programa que cuente y emita la cantidad de valores mayores de 200 que
se encuentran en esa lista.
7.13. Leer un lote de valores reales, de a uno por vez. El fin del lote está indicado por
el 0 (cero). Determinar y emitir el valor máximo de aquellos que sean mayores a 10.
De no haber ninguno, hay que indicar que el máximo es cero.
7.14. Agregar al ejercicio anterior, la posición del máximo (si hay más de uno, indicar
la primera aparición)
Página 13 de 15
Metodología de Programación
Proceso Reptitivo
leer a
leer b
mientras x=0 hacer
a= a+b
escribir a, b
FinMientras
FinProceso
7.16. Se posee un conjunto de valores numéricos no nulos que serán leídos de a uno
por vez. Calcular y emitir el rango de variación del conjunto, que es la diferencia entre
el máximo y el mínimo del lote (el lote finaliza con un valor cero).
7.17. Una empresa informa para cada uno de sus vendedores el Código de vendedor y
el Importe vendido en el mes. Se desea emitir el importe máximo vendido y cuántos
vendedores alcanzaron dicho máximo.
7.19. Se ingresa por teclado la cantidad de agua caída, en milímetros día a día durante
un mes. Se pide determinar el día de mayor lluvia, el de menor y el promedio
7.20. Una farmacia considera diferentes modalidades de ventas. Cada una está
representada por un código indicador (‘O’, ‘E’ o ‘T’) y un importe.
Si el código es ‘O’, significa que corresponde a una obra social (se abona sólo en
efectivo), le corresponde un 40% de descuento.
Si el código es ‘E’, significa que se abona en efectivo, le corresponde un 10% de
descuento.
Si el código es ‘T’, significa que se abona con tarjeta, le corresponde un 15% de
recargo.
Al terminar el día se ingresa un movimiento con ‘*’ en el código.
7.22. Dada una secuencia de números reales cuyo ingreso se termina ingresando un
valor 0, determinar el valor máximo de la misma.
7.23. Dada una secuencia de números reales cuyo ingreso se termina ingresando un
valor 0, determinar el valor mínimo y la primera posición en la que aparece.
7.24. Dada una secuencia de números reales, determinar el valor máximo y el mínimo
de la secuencia. Se deberá ir preguntando si hay más números para ingresar.
Página 14 de 15
Metodología de Programación
7.25. Dada una secuencia de números reales, determinar el valor máximo, el mínimo y
las posiciones en que éstos se encontraban en la secuencia. Se deberá ir preguntando
si hay más números para ingresar
7.26. Dada una secuencia de números enteros terminada en cero, imprimir los dos
mayores.
7.27. Dada una secuencia de números enteros terminada en cero, imprimir los tres
mayores
Página 15 de 15