Parcial I Término 2003 – 2004. Julio 08, 2003 /ICM00794
Tema 1. (10 puntos)
a) Defina ALGORITMO
b) Un GIGABYTE tiene ______ bytes
c) Encontrar el número equivalente en el Sistemas de Numeración 10: 101010101100012
Curso con Python – CCPG1043/CCPG1001-FIEC-ESPOL
Ejercicios de examen
Tema 1. (10 puntos)
a) Defina ALGORITMO
b) Un GIGABYTE tiene ______ bytes
c) Encontrar el número equivalente en el Sistemas de Numeración 10: 101010101100012
TEMA 4. (25 puntos) En la siguiente secuencia de números:
1, 1, 2, 3, 5, 8, 13, 21, ...
cada número a partir del tercero se obtiene sumando los dos inmediatos anteriores.
La propiedad de esta secuencia es que el cociente de dos términos consecutivos tiende hacia un número real.
1/1, 1/2, 2/3, 3/5, 5/8, 8/13, 13/21, ... ¿?
Escriba un algoritmo para encontrar este número con 4 decimales de exactitud.
Sugerencia: para la secuencia, mantenga en cada iteración dos valores consecutivos de este número real, y pare cuándo la diferencia sea menor que 0.0001
TEMA 3. (25 puntos) Elabore un diagrama de flujo, tal que dado un valor n entero positivo, calcule y muestre los elementos correspondientes a la CONJETURA DE ULLMAN (en honor al matemático S. Ullman) que consiste en lo siguiente:
Al final se obtendrá el número 1, independientemente del entero inicial.
Por ejemplo: cuando el entero inicial n es 52, la secuencia será: 52, 26, 13, 40, 20, 10, 5, 16, 8, 4, 2, 1
Rúbrica: validar número positivo (5 puntos)operaciones (5 puntos), uso de un vector para secuencia (10 puntos), estructura del algoritmo (5 puntos)
Referencia: https://anagarciaazcarate.wordpress.com/piensa-un-numero-la-magia-del-algebra/
Tema 4. (25 puntos) En el juego del “Imitador” pueden participar dos personas para probar su memoria en el que por medio de turnos alternos se prueba la capacidad de recordar una secuencia numérica entera (0-9) de cada jugador.
El juego presenta en pantalla para cada jugada lo siguiente:
Tema 3. (20 puntos) Una compañía de telecomunicaciones tiene sospechas de que sus datos están siendo interceptados y desea transmitirlos de manera segura usando algoritmos de encriptación de tal forma que solo la pueda entender el destinatario.
Toda su información se transmite como enteros de 4 dígitos.
El asesor de seguridad informática le recomienda seguir los siguientes pasos:
Ejemplo: >> encripta(1254) ans= 2189
a) Escriba una función encripta() que reciba numero entero de 4 dígitos (entre 1000 y 9999) y que retorne el mismo numero entero encriptado correspondientemente
b) Escriba un Programa que pida al usuario una clave de acceso (entero de 4 dígitos), verifique que sea válida en rango). Encripte la clave de acceso y la muestre en pantalla.
La Agencia de Control de Transito usará colores en todas las placas de los vehículos conforme al último dígito, utilizando la tabla mostrada:
dígito | COLOR | ¿Cuántos? |
---|---|---|
1, 2 | amarillo (código 1) | … |
3, 4 | café (código 2) | … |
5, 6 | rojo (código 3 | … |
7, 8 | azul (código 4) | … |
9, 0 | verde (código 5) | … |
Ayude a dicha institución realizando un algoritmo que:
a) reciba los tres últimos números de la placa (3 dígitos validados) y el número n de autos a procesar,
b ) muestre cuántas placas de cada color de vehículos hay que fabricar y reemplazar.
Rúbrica: ingreso de datos en vector (5 puntos), validar dígitos (5 puntos), conteo por color (15 puntos).
Referencia: Matrícula (vehículos), Wikipedia
Tema 2. (35 puntos) El archivo ‘a:\DATOS1.TXT’ contiene la información de los clientes del banco A en el siguiente formato:
char cedula[10], char nombre[60], int cuenta
cuenta es un valor lógico que indica si tiene una cuenta corriente, lo contrario significa que tiene cuenta de ahorros.
El archivo a:\DATOS2.TXT contiene la información de los clientes del banco B en el siguiente formato:
char cedula[10], char nombre[60], int préstamo
préstamo es un valor lógico que indica si tiene un préstamo, lo contrario significa que no tiene deudas.
Elabore un programa que:
a) Lea los dos archivos desde el disco (disquete). (10 puntos)
b) Seleccione los clientes que tienen cuenta de ahorros y préstamo. (15 puntos)
c) Muestre un reporte por pantalla con la cédula y el nombre de los clientes que tienen cuenta de ahorros y préstamo. (10 puntos).
Nota: Dentro de un mismo archivo no existen clientes repetidos. El número de clientes máximo es 100, pero el número puede ser menor de acuerdo a si el cliente tiene o no préstamo o cuentas en el banco y puede ser leído en el archivo antes de leer el primer cliente.
TEMA 1.
b) (10 puntos) Considere el segmento números enteros x[4], y [4], k, j;
y los datos de entrada digitados en el orden dado:
1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14
Después de ejecutarse el código,
¿cuál será el contenido de los arreglos x[] y y[]?
para (k ← 0; k<= 3; k ← k+1) repita ingrese x[k] para (j ← k; j < = 3; j ← j+1) repita ingrese y[j] fin fin
Prueba de escritorio
k | x[ ] | j | y[ ] |
….. | ….. | ….. | ….. |
Tema 1. (20 puntos) Un número perfecto es aquel que es igual a la suma de todos sus divisores, con excepción del mismo.
Ejemplo: 6 es perfecto porque, sus divisores son: 1, 2, 3 (6 no se considera). 1+2+3=6
a) Defina una función llamada perfecto(x) que retorne 1 si x es un número perfecto o 0 en caso de que no lo sea.
b) Para probar la función, genere en el programa principal m pares de números aleatorios con valores entre 1 y n inclusive (m y n deben ser previamente pedidos por teclado), y muestre cuántas de estas parejas tienen su suma igual a un número perfecto.
TEMA 1.a (15 puntos) Escriba un algoritmo para crear tablas de multiplicar usando un menú con las siguientes opciones:
1. Mostrar una tabla de sumar, 2. Mostrar una tabla de multiplicar, 3. Salir.
Luego de escoger una opción, le preguntará sobre cuál número desea ver la tabla. El algoritmo muestra la tabla y regresa al al menú.
Si el usuario escoge la opción de salir del algoritmo, este terminará.
Nota: Considere que las tablas se muestran hasta el número 12. Podría usar cadenas de caracteres para incluir los símbolos de ‘+,-,=’ en la expresión.
Ejemplo:
1. Mostrar una tabla de sumar 2. Mostrar una tabla de multiplicar 3. Salir --- ¿Cuál opcion?: 1 **** menu opcion 1. sumar **** tabla del número: 3 tabla hasta n: 12 3 + 1 = 4 3 + 2 = 5 3 + 3 = 6 3 + 4 = 7 3 + 5 = 8 3 + 6 = 9 3 + 7 = 10 3 + 8 = 11 3 + 9 = 12 3 + 10 = 13 3 + 11 = 14 3 + 12 = 15 1. Mostrar una tabla de sumar 2. Mostrar una tabla de multiplicar 3. Salir --- ¿Cuál opcion?: