Está en la página 1de 4

INTRODUCCIÓN A LA COMPUTACIÓN – 2008

Licenciatura en Ciencias de la Computación – Profesorado en Ciencias de la Computación

PRÁCTICO 3. Lenguaje de Diseño de Algoritmos - Selección


Importante: En todos los casos que se pida el desarrollo de un algoritmo esto implica:
• Especificar el ambiente del algoritmo.
• Realizar una desagregación, por refinamientos sucesivos, del problema hasta alcanzar la versión final de la solución expresada
en nuestro lenguaje de diseño.
Notas: * Todos los ejercicios marcados con (*) son obligatorios y deberán ser resueltos en clase. Los demás ejercicios deberán ser
resueltos en la casa.
* Cualquiera de los ejercicios que no sean de resolución obligatoria en clase, deberán ser entregados bajo requerimiento del
Profesor (para regularizar o promocionar la materia, al menos el 50% de los ejercicios solicitados deberán estar aprobados).

Responda:
[1] ¿Qué representan para Ud. <condición> en la estructura de control condicional?
[2] ¿Cuándo se ejecuta la secuencia de acciones A1? ¿Cuándo A2?
SI <condición> ENTONCES
<A1>
SINO
<A2>
FINSI
[3] Reemplace <condición>, <A1> y <A2> con ejemplos concretos escritos en Lenguaje de Diseño.
[4] ¿Cuándo se ejecuta la secuencia de acciones A2?

SI <condición1> ENTONCES
<A1>
SINO
SI <condición2> ENTONCES
<A2>
FINSI
FINSI

Ejercicio 1: Ejecutar el siguiente algoritmo e indicar cuál es su salida.

ALGORITMO: “¿SALIDA?” A B C D X Pantalla


COMENZAR
A, B, C, D: entero
X: caracter
A← 3+5*2 B ← RC(16) – 2 * 5 ^ 2
C ← 2 + 10 / 5 * 4 D ← 2 ^ 2 ^ 4 ^ 0
X ← “M”
SI ( A<= 17 ∧ A > 15) ENTONCES
ESCRIBIR X ESCRIBIR “A” ESCRIBIR “L”
FINSI
SI ( B<= - 46 ∧ A<= 13) ENTONCES
ESCRIBIR X X ← “U”
FINSI
SI (C<> 10) ENTONCES
X ← “L” ESCRIBIR “M”
ESCRIBIR “A” ESCRIBIR X X ← “U”
SINO
ESCRIBIR X ESCRIBIR “Y” X ← “B”
FINSI
SI (D = 4) ENTONCES
ESCRIBIR X ESCRIBIR “I” ESCRIBIR “E”
SI (A<> 16 ∧ B= -46 ∧ C = 10 ∧ D= 4) ENTONCES
ESCRIBIR “N”
FINSI
FINSI
FIN

Licenciatura en Ciencias de la Computación – Profesorado en Ciencias de la Computación 1


(*)Ejercicio 2: Indique cuál será el valor de las variables enteras A y B, al finalizar la ejecución de cada uno
de los trozos de algoritmos que se indican a continuación:
(1) (2) (4)
A←3 A←3 A←1
B←1 B←1 B←2
SI B = 1 SI B // 100 = 1 SI A < B
ENTONCES ENTONCES ENTONCES
B←0 A←B A←A+1
FINSI SI B = 0 SINO
SI B = 1 ENTONCES SI A = B
ENTONCES B←0 ENTONCES
A←B FINSI B ← B + 10
SINO FINSI FINSI
B←A SI A = B FINSI
FINSI ENTONCES
A←A+1
FINSI

Ejercicio 3: Codificar en Lenguaje de Diseño lo expresado por los siguientes diagramas de flujo:

a) INICIO

FALSO ¿GANANCIA ES VERDADERO


MAYOR A 500?

Informar por pantalla al usuario Informar por pantalla al usuario


que el impuesto a abonar que el impuesto a abonar
corresponde al 5% de las corresponde al 10% de las
ganancias. ganancias.
(Imprimir Resultado) (Imprimir Resultado)

FIN

(*)b) INICIO

FALSO ¿ Si Puntos VERDADERO


Adquiridos >100 ?

FALSO ¿ Si Puntos Adquiridos >50 ? VERDADERO FALSO ¿ Si Puntos Adquiridos >200 ? VERDADERO

Imprimir por pantalla Imprimir por pantalla Imprimir por pantalla Imprimir por pantalla
que el premio obtenido que el premio obtenido que el premio obtenido que el premio obtenido
es un “Mate” es un “Termo” es una “Camiseta” es un “Fútbol”

FIN

Licenciatura en Ciencias de la Computación – Profesorado en Ciencias de la Computación 2


(*)Ejercicio 4: Desarrollar los algoritmos, en el Lenguaje de Diseño, correspondientes a los siguientes
problemas:
1. Dado el precio de tres artículos ingresados por el usuario, mostrar por pantalla el costo total de la compra
indicando si supera o no los $10. Ejecute el algoritmo con las siguientes secuencias de datos de entrada:
2.5 3 1.49 y 1.57 1.43 8.
2. Dados dos números enteros ingresados por el usuario, mostrarlos por pantalla sólo si son iguales. Ejecute
el algoritmo con las siguientes secuencias de datos de entrada: 2 2 y 3 17.
3. Dado un caracter ingresado por el usuario, mostrarlo por pantalla sólo si es vocal. Ejecute el algoritmo
con los siguientes datos de entrada: “a”, “f” y “?”.
4. Dado un caracter ingresado por el usuario, mostrarlo por pantalla sólo si es consonante. Ejecute el
algoritmo con los siguientes datos de entrada: “a”, “f” y “?”.

Ejercicio 5: En un curso de Ciencias de la Computación, la escala de calificación de un estudiante va de 0 a


10; la calificación final del estudiante se determina como la suma de determinados porcentajes del
rendimiento en tres aspectos del trabajo cuatrimestral. Para la calificación final se considerará el 30% de la
calificación del promedio de los exámenes parciales, el 20% de la calificación del trabajo de laboratorio y el
50% restante de la nota del examen integrador. Todas las notas deberán ser ingresadas por el usuario. Diseñe
un algoritmo, utilizando el Lenguaje de Diseño, que calcule la calificación final del estudiante y muestre por
pantalla el resultado. Luego devuelva el cartel que corresponda según la nota obtenida: No Aprobado [0 -
3.99], Aprobado [4 - 6.99], Notable [7 - 8.99], Sobresaliente [9 - 10]. Ejecute el algoritmo con las siguientes
secuencias de datos de entrada: 7 (nota de los parciales) 10 (nota del laboratorio) 8 (nota del examen
integrador); 2 (nota de los parciales) 10 (nota del laboratorio) 10 (nota del examen integrador) y 3 (nota de
los parciales) 10 (nota del laboratorio) 4 (nota del examen integrador).

(*)Ejercicio 6: Escribir un algoritmo que lea una temperatura introducida por el usuario y muestre por
pantalla la actividad más apropiada para dicha temperatura teniendo en cuenta los siguientes criterios:

ACTIVIDAD TEMPERATURA IDONEA


Natación temperatura > 30
Tenis 20 < temperatura <= 30
Golf 10 < temperatura <= 20
Esquí 5 < temperatura <= 10
Ludo temperatura <=5

Ejecute el algoritmo con las siguientes secuencias de datos de entrada: 0; 21; 20; 7 y 31.

(*)Ejercicio 7: Una empresa ha adoptado un método de identificar cada producto que elabora asignándole un
identificador que se compone de la siguiente manera:
• El primer caracter identifica en cuál de las 4 sucursales (A, B, C, o D) fue producida.
• Luego le sigue el número del ítem, que puede variar entre 0 a 999
• Finalmente le sigue un número de cuatro dígitos que representa el año en que fue producido. Los años
pueden ser desde 1975 hasta 2008 inclusive.
Se pide construir un algoritmo que, a partir de 3 datos de entrada que corresponden a cada uno de los
componentes del identificador, determine si dicho producto fue elaborado o no por la empresa. El algoritmo
deberá mostrar “Si” en el caso en que pertenezca, en otro caso deberá mostrar “No”. Ejecute el algoritmo con
las siguientes secuencias de datos de entrada: B 131 1983; F 998 2005 Y D 0 2009.

Ejercicio 8: Un banco solicita a su departamento de Sistemas que diseñe un algoritmo que permita ingresar
los datos de un cliente y determine si el mismo puede o no acceder a un crédito, informando por pantalla:
“Puede” o “No puede”. Los datos que se ingresan son: Monto del Crédito solicitado y Sueldo (ingreso del
Cliente). Para un crédito menor de $10000 el cliente debe tener un sueldo mínimo de $1000. Para un crédito
de entre $10000 y $30000 el sueldo debe ser mayor de $2000, y para un crédito mayor de $30000 se debe
tener un sueldo de más del 15% del crédito solicitado.

Ejercicio 9: Realizar un algoritmo que solicite una letra al usuario e imprima el correspondiente dígito de
teléfono. Los dígitos y las letras están asociados como sigue:

Licenciatura en Ciencias de la Computación – Profesorado en Ciencias de la Computación 3


2 = A, B, C 3 = D, E, F 4 = G, H, I 5 = J, K, L 6 = M, N, O 7 = P, R, S 8 = T, U, V 9 = W, X, Y

Tener en cuenta que no hay dígito asociado a las letras Q y Z. Si el usuario ingresara alguna de esas dos
letras se debe mostrar el mensaje “No hay dígito en el teléfono que se corresponda con la letra Q ó Z”. Cada
letra minúscula tiene asociado el mismo dígito que su mayúscula correspondiente. Para cualquier otro
carácter que se introduzca el programa deberá mostrar el mensaje de error “Ha introducido un carácter no
válido”.

(*) Ejercicio 10: Una empresa de seguros desea poder calcular, en base a la cantidad de cuotas que adeudan
y el plan de cada cliente, el interés que deben cobrarle a cada cliente deudor. Para calcular dicho interés se
debe tener en cuenta la siguiente tabla:

Plan Cuotas Adeudadas Interés


“A” o “B” Menos de 5 cuotas 1% del capital adeudado
“A” 5 o más cuotas 2% del capital adeudado
“B” 5 o más cuotas 3% del capital adeudado

La empresa ha solicitado la realización de un algoritmo que sea capaz de informar a partir del ingreso de tres
datos (plan, cantidad de cuotas adeudada, valor de la cuota) el interés que debe cobrar.

Se pide:
1. Definir el ambiente del algoritmo.
2. Llegar a la versión final a través de refinamientos sucesivos del algoritmo.
3. Escribir la versión final en Lenguaje de Diseño.
4. Ejecutar el algoritmo para el siguiente caso: “El cliente Pérez que posee un plan “B” debe 10 cuotas,
donde el valor de la cuota es de $57. ¿Cuál es el interés?

Licenciatura en Ciencias de la Computación – Profesorado en Ciencias de la Computación 4

También podría gustarte