Está en la página 1de 11

ESCUELA DE INGENIERA

ASIGNATURA : FUNDAMENTOS DE PROGRAMACIN


SECCIN : TODAS
PERIODO ACADMICO : 2006-1
FECHA : 18/07/2006
TIEMPO : 100 MINUTOS
Examen Final



Apellidos y nombres: ........................................................................... Nmero de computadora:.................

INSTRUCCIONES:
NO SE PERMITE EL USO DE: APUNTES, LIBROS, COPIAS, CALCULADORAS; NINGUN MEDIO DE TRANSPORTE DE
INFORMACION DIGITAL (disketes, cd, memoria-usb, etc.)
ESTA TOTALMENTE PROHIBIDO EL USO DE CELULARES O AGENDAS ELECTRNICAS
DEVOLVER LA HOJA DE PROBLEMAS CON SUS DATOS PERSONALES DEBIDAMENTE LLENADOS.

GRABE CADA PROYECTO EN LA UNIDADG, EN UNA CARPETA CUYONOMBRE ESTE FORMADO POR SUAPELLIDO
PATERNO, EL INICIAL DE SU APELLIDO MATERNO Y EL NUMERO DEL PROBLEMA. Ejemplo:
RAMIREZ-L-01
RAMIREZ-L-02
RAMIREZ-L-03
LA GRABACIN DE LOS PROYECTOS DEBE SER HECHA AL INICIO DEL EXAMEN, PARA DETECTAR PROBLEMAS DE
CONEXIN Y OTRO TIPO, Y PARA EVITAR CONFUSIONES AL GRABAR A LTIMO MOMENTO. EL ALUMNO SE HACE
RESPONSABLE POR LAS CONSECUENCIAS DE NO CUMPLIR CON ESTA INSTRUCCIN.
LAS SEUDOINSTRUCCIONES SERN INCLUDAS COMO COMENTARIOS EN EL CDIGO DE LOS PROGRAMAS 1 Y 2.


PROBLEMA 1 (seudointrucciones: 2 puntos, desarrollo del programa: 5 puntos)

En una competencia de atletismo participarn N atletas (mximo 20), identificados con cdigos del
1 a N, los cuales ejecutarn las siguientes pruebas:
(1) 100 metros planos
(2) 100 metros con vallas
(3) Salto largo y
(4) Salto con garrocha

Cada atleta puede ejecutar una prueba cuantas veces desee y se le otorgar un puntaje que
vara entre 1 y 50.

Elabore un programa que permita.

Solicitar la cantidad de atletas participantes N (mximo 20).
Cada vez que un atleta realiza una prueba el programa pedir el cdigo del atleta(1-N), el
cdigo de prueba(1-4) y registrar el puntaje obtenido(1-50) en una matriz, slo si el
puntaje es ms alto que el registrado hasta el momento para ese ATLETA-PRUEBA. El
ingreso de puntajes finaliza cuando el usuario lo decida.
Mostrar los cdigos(1-N) que identifican a los mejores atletas de cada prueba.






CONTINA
2
PROBLEMA 2 (seudointrucciones: 2 puntos, desarrollo del programa: 5 puntos)

Una encuesta rpida tiene preguntas de opinin cuya respuestas pueden ser SI o NO. Los
resultados sern procesados por un programa que deber:

a) Solicitar el nmero N de preguntas de la encuesta (mximo 9).
b) Solicitar el conteo total de respuestas SI dadas por los encuestados para cada una de las
N preguntas. Almacenar este conteo en un vector F.
c) Mostrar un histograma del conteo de la respuesta SI, para cada una de las preguntas de
la encuesta. Utilizar un procedimiento ImprimirHistograma que reciba como parmetros el
vector F y el nmero de preguntas N.

Ejemplo: Cada lnea de impresin muestra el # de pregunta (1, 2, etc.), un smbolo barra |
y un smbolo asterisco * por cada respuesta SI dada a dicha pregunta.
1 |
**

2 |
***

3 |
****

4 |
*****

5 |
***

6
|*


Nota: El histograma se mostrar en un control LISTBOX, PICTUREBOX o directamente en
el Formulario empleando PRINT.

PROBLEMA 3. (Desarrollo de la aplicacin: 6 puntos)
Una farmacia que tiene reparto a domicilio registra sus clientes en un archivo con la siguiente
estructura:
Archivo Clientes
Campo Tipo de Dato Descripcin
Telefono String*7 Telfono del hogar
Nombre String*20 Nombre del cliente de la farmacia

El programa tendr tres formularios y un mdulo.

Formulario 1: Men de opciones. Las opciones son:
- Nuevo cliente (abre el formulario 2)
- Consulta de clientes (abre el formulario3)
- Salir (Cierra el programa)

Formulario 2: Nuevo cliente. Al grabar un nuevo cliente se permitir usar ms de una vez el
mismo telfono.

Formulario 3: Consulta de clientes. Al elegir un telfono se mostrar los nombres de todos los
clientes que tengan el telfono seleccionado.

Mdulo:
Definicin de la estructura de registro, las variables globales necesarias y un procedimiento para
abrir el archivo.
ESCUELA DE INGENIERA

ASIGNATURA : FUNDAMENTOS DE PROGRAMACIN
SECCIN : TODAS
PERIODO ACADMICO : 2006-2
FECHA : 28/11/2006
TIEMPO : 100 MINUTOS
Examen Final-Tema A



Apellidos y nombres: ........................................................................... Nmero de computadora:.................

INSTRUCCIONES:
NO SE PERMITE EL USO DE: APUNTES, LIBROS, COPIAS, CALCULADORAS; NINGUN MEDIO DE TRANSPORTE DE
INFORMACION DIGITAL (disketes, cd, memoria-usb, etc.)
ESTA TOTALMENTE PROHIBIDO EL USO DE CELULARES O AGENDAS ELECTRNICAS
DEVOLVER LA HOJA DE PROBLEMAS CON SUS DATOS PERSONALES DEBIDAMENTE LLENADOS.

GRABE CADA PROYECTO EN LA UNIDADG, EN UNA CARPETA CUYONOMBRE ESTE FORMADO POR SUAPELLIDO
PATERNO, EL INICIAL DE SU APELLIDO MATERNO Y EL NUMERO DEL PROBLEMA. Ejemplo:
RAMIREZ-L-01
RAMIREZ-L-02
RAMIREZ-L-03
LA GRABACIN DE LOS PROYECTOS DEBE SER HECHA AL INICIO DEL EXAMEN, PARA DETECTAR PROBLEMAS DE
CONEXIN Y OTRO TIPO, Y PARA EVITAR CONFUSIONES AL GRABAR A LTIMO MOMENTO. EL ALUMNO SE HACE
RESPONSABLE POR LAS CONSECUENCIAS DE NO CUMPLIR CON ESTA INSTRUCCIN.
LAS SEUDOINSTRUCCIONES SERN INCLUDAS COMO COMENTARIOS EN EL CDIGO DE LOS PROGRAMAS 2 Y 3.


PROBLEMA 1 (Desarrollo del programa: 5 puntos)

Una aerolnea tiene que identificar los aviones de su flota que necesitan mantenimiento, para lo
cual requiere crear un archivo con la siguiente estructura:

Archivo Aviones
Campo Tipo de Dato Descripcin
Codigo Integer Cdigo que identifica al avin (1-999)
Modelo String*10 Modelo del avin: Boeing 777, DC10, etc.
kmAcum Single Kilmetros acumulados en todos sus vuelos


Desarrolle una aplicacin que utilizando un nico formulario permita:


a) Ingresar los datos de cada avin en el archivo Aviones. Para ello, luego de digitar los datos
de cada avin, se pulsar el botn Grabar.

b) Mostrar los aviones (cdigo y modelo) que requieren mantenimiento. Para ello, al pulsar el
botn Mostrar, se visualizarn slo aquellos aviones que tengan ms de 750,000
Kilmetros acumulados.

Nota: No es necesario crear un men de opciones. En el mdulo incluir la definicin de la
estructura de registro, las variables asociadas y un procedimiento para abrir el archivo.


CONTINA TEMA A
2
PROBLEMA 2 (seudoinstrucciones: 2 puntos, desarrollo del programa: 6 puntos)

Una cabina de internet tiene 5 computadoras identificadas con nmeros del 1 al 5; y atiende los 7
das de la semana identificados con los cdigos del 1 al 7.

Desarrolle un programa que acumule los tiempos de alquiler (en minutos) de las computadoras en
los diferentes das, para lo cual cada vez que se registre un tiempo de alquiler el programa
solicitar los siguientes datos:

Cdigo de la computadora (1-5)
Cdigo del da (1-7)
Tiempo de alquiler (minutos).

El registro de tiempos de alquiler finaliza cuando el usuario lo decida y responda NO a la pregunta
desea continuar?.

El precio por alquiler de una computadora es de 3 soles por hora.

Despus de finalizar el ingreso de datos el programa deber mostrar los siguientes resultados:

d) El tiempo acumulado y el monto total de alquiler por da.

e) El mayor tiempo acumulado de alquiler indicando el nmero de computadora y el cdigo
del da. (Si hay repeticin mostrar todos)

PROBLEMA 3. (seudoinstrucciones: 2 puntos, desarrollo del programa: 5 puntos)

Un banco requiere un aplicacin para procesar las solicitudes de prstamo de sus clientes, la cual
deber tener los siguientes sub-programas:

Un procedimiento de nombre IngresarSolicitudes que pida y almacene los datos de las
solicitudes: monto de prstamo en un vector y el nmero de meses a pagar en otro vector.
El procedimiento recibe como parmetros dos vectores y el nmero de elementos de los
vectores.

Una funcin de nombre PagoMensual que reciba como parmetros el monto del prstamo
y nmero de meses a pagar de una solicitud. La funcin retorna el pago mensual que el
cliente debe realizar. Para el clculo se aplica la siguiente frmula:

Meses
Monto
l PagoMensua
Meses
035 . 1
*
=


Empleando los subprogramas anteriores desarrolle la aplicacin que haga lo siguiente:

a) Solicitar al usuario el nmero N de solicitudes a procesar (mximo 30).

b) Utilizar el procedimiento IngresarSolicitudes que pida al usuario para cada una de las N
solicitudes el monto de prstamo y el nmero de meses a pagar; y almacene todos estos
datos en los vectores Monto y Meses.

c) Utilizar la funcin PagoMensual con cada solicitud de manera que se muestre el pago
mensual correspondiente.


FIN TEMA A
ESCUELA DE INGENIERA

ASIGNATURA : FUNDAMENTOS DE PROGRAMACIN
SECCIN : TODAS
PERIODO ACADMICO : 2007-1
FECHA : 17/07/2007
TIEMPO : 100 MINUTOS
Examen Final -Tema A



Apellidos y nombres: ........................................................................... Nmero de computadora:.................

INSTRUCCIONES:
NO SE PERMITE EL USO DE: APUNTES, LIBROS, COPIAS, CALCULADORAS; NINGUN MEDIO DE TRANSPORTE DE
INFORMACION DIGITAL (disketes, cd, memoria-usb, etc.)
ESTA TOTALMENTE PROHIBIDO EL USO DE CELULARES O AGENDAS ELECTRNICAS
DEVOLVER LA HOJA DE PROBLEMAS CON SUS DATOS PERSONALES DEBIDAMENTE LLENADOS.

GRABE CADA PROYECTO EN LA UNIDADG, EN UNA CARPETA CUYONOMBRE ESTE FORMADO POR SUAPELLIDO
PATERNO, LA INICIAL DE SU APELLIDO MATERNO Y EL NUMERO DEL PROBLEMA. Ejemplo:
RAMIREZ-L-01
RAMIREZ-L-02
RAMIREZ-L-03
LA GRABACIN DE LOS PROYECTOS DEBE SER HECHA AL INICIO DEL EXAMEN, PARA DETECTAR PROBLEMAS DE
CONEXIN Y OTRO TIPO, Y PARA EVITAR CONFUSIONES AL GRABAR A LTIMO MOMENTO. EL ALUMNO SE HACE
RESPONSABLE POR LAS CONSECUENCIAS DE NO CUMPLIR CON ESTA INSTRUCCIN.
LAS SEUDOINSTRUCCIONES SERN INCLUDAS COMO COMENTARIOS EN EL CDIGO DE LOS PROGRAMAS
CORRESPONDIENTES A LAS PREGUNTAS 1 Y 2. LA PREGUNTA 3 SE RESPONDER EN EL ESPACIO RESERVADO EN
ESTA HOJA.

PREGUNTA 1 (seudoinstrucciones: 1 punto, desarrollo del programa: 7 puntos)

Desarrolle un programa que solicite la cantidad N (mximo 10) de tipos de fallas que pueden
suceder en el cajero automtico y que realice las siguientes tareas:

a) Almacenar en un vector D los nombres de los N tipos de fallas. Por ejemplo:

Cdigo de falla Nombre
1 Fuera de lnea.
2 Se traba la tarjeta.
3 Impresora defectuosa.
etc. etc.

b) Solicitar los cdigos de las fallas que se han presentado durante un mes de operacin del
cajero, almacenando la frecuencia de cada tipo de falla en el vector F. Realizar este
ingreso de datos hasta que el usuario lo decida.

c) Ordenar descendentemente el vector F en paralelo al vector D. Para esta tarea utilice el
procedimiento OrdenarVectores que reciba como parmetros el vector D, el vector F y el
nmero de elementos a ordenar.

d) Despus de efectuado el ordenamiento, hallar el porcentaje de cada frecuencia con
respecto al total. Listar las primeras fallas que acumuladas lleguen al menos al 80% del
total.
CONTINA TEMA A
2
PREGUNTA 2 (seudoinstrucciones: 1 punto, desarrollo del programa: 7 puntos)

Un auditorio cuenta con asientos distribuidos en 5 filas y 8 columnas representados en la siguiente
matriz:
Matriz de ventas de asientos



0: asiento disponible
1: asiento vendido



El valor 0 en una celda significa que el asiento est disponible y el valor 1 significa que el
asiento est vendido.

Desarrollar un programa que registre las ventas de los asientos para un concierto en una matriz, la
cual al inicio tendr el valor 0 en todas las celdas.

Para cada venta se solicitar la fila y la columna del asiento, y se verificar si el asiento est o no
disponible. Si el asiento est disponible se vender, guardando en la celda correspondiente el
valor 1. En caso contrario se mostrar el mensaje: No se realiz la venta, asiento no est
disponible.

Los asientos de la columna 1, la columna 8 y la fila 5 tendrn un precio de $ 45 y los dems
asientos de $ 30.

Las ventas se registrarn hasta que el usuario lo decida, luego de lo cual se mostrar lo siguiente:

a) La matriz de ventas de asientos para el concierto.

b) El monto total en dlares recaudado por las ventas realizadas.


PREGUNTA 3. (4 puntos)

En relacin a subprogramas (funciones y procedimientos):

a) Defina el concepto de parmetro por valor.

________________________________________________________________________

________________________________________________________________________

________________________________________________________________________



b) Defina el concepto de parmetro por referencia.

________________________________________________________________________

________________________________________________________________________

________________________________________________________________________

CONTINA TEMA A


1 2 3 4 5 6 7 8
1
1 0 0 0 0 0 1 1
2
0 1 0 0 1 0 0 1
3
0 1 0 0 0 1 0 0
4
1 0 1 0 1 0 0 1
5
1 0 0 1 0 1 0 1
3
De acuerdo al uso de sentencias para manejar datos en archivos:

c) Explique la diferencia entre la sentencias 1 y 2.

1. FileOpen(1, "c:\ejemplo.txt", OpenMode.Output)

2. FileOpen(1, "c:\ejemplo.txt", OpenMode.Append)

________________________________________________________________________

________________________________________________________________________


d) Escriba la sentencia que le falta al siguiente segmento de programa para que funcione
correctamente.

Dim Edad As Integer
ListBox1.Items.Clear()
If My.Computer.FileSystem.FileExists("c:\datos.txt") Then
Do Until EOF(1)
Input(1, Edad)
ListBox1.Items.Add(Edad)
Loop
FileClose(1)
End If

________________________________________________________________________



FIN TEMA A
ESCUELA DE INGENIERA

ASIGNATURA : FUNDAMENTOS DE PROGRAMACIN
SECCIN : TODAS
PERIODO ACADMICO : 2007-2
FECHA : 27/11/2007
TIEMPO : 100 MINUTOS

Examen Final -Tema A


INSTRUCCIONES:

NO SE PERMITE EL USO DE: APUNTES, LIBROS, COPIAS, CALCULADORAS; NI NINGN MEDIO DE TRANSPORTE DE
INFORMACIN DIGITAL (disketes, cd, memoria-usb, etc.)
ESTA TOTALMENTE PROHIBIDO EL USO DE CELULARES O AGENDAS ELECTRNICAS
DEVOLVER LA HOJA DE PREGUNTAS CON SUS DATOS PERSONALES DEBIDAMENTE LLENADOS.

GRABE CADA PROYECTO EN LA UNIDADG, EN UNA CARPETA CUYONOMBRE ESTE FORMADO POR SUAPELLIDO
PATERNO, LA INICIAL DE SU APELLIDO MATERNO Y EL NMERO DE LA PREGUNTA. Ejemplo:
RAMIREZ-L-01
RAMIREZ-L-02
RAMIREZ-L-03
LA GRABACIN DE LOS PROYECTOS DEBE SER HECHA AL INICIO DEL EXAMEN, PARA DETECTAR PROBLEMAS DE
CONEXIN Y OTRO TIPO, Y PARA EVITAR CONFUSIONES AL GRABAR A LTIMO MOMENTO. EL ALUMNO SE HACE
RESPONSABLE POR LAS CONSECUENCIAS DE NO CUMPLIR CON ESTA INSTRUCCIN.
LAS SEUDOINSTRUCCIONES SERN INCLUIDAS COMO COMENTARIOS EN EL CDIGO DE LOS PROGRAMAS
CORRESPONDIENTES A LAS PREGUNTAS 1 Y 2.
LA PREGUNTA 3 SE RESOLVER EN ESTA HOJA.





Cdigo: ..


Apellidos y nombres: ....


Nmero de computadora: ..





Nota:









2
PREGUNTA 1 (seudoinstrucciones: 2 puntos - desarrollo del programa: 5 puntos)

Elabore un programa para llenar una matriz cuadrada de orden N (mximo 10) con
secuencias numricas. Por ejemplo, para una matriz cuadrada de orden N = 7 el
contenido sera el siguiente:



El programa deber realizar las siguientes tareas:

a) Solicitar N (orden de la matriz cuadrada).

b) Llenar la matriz cuadrada de orden N con las secuencias numricas
correspondientes.

c) Mostrar la matriz usando el procedimiento MostrarMatriz que tenga como
parmetros la matriz y el orden de la matriz.

d) Grabar en el archivo c:\examen.txt la suma de la primera columna de la matriz.


















Para la calificacin (no llenar)
1 2 3 4 5 Puntaje preg. 1







CONTINA TEMA A



3
PREGUNTA 2 (seudoinstrucciones: 2 puntos - desarrollo del programa: 7 puntos)

Elabore un programa que registre las calificaciones que realiza un jurado de las
sustentaciones de ttulo profesional de N alumnos, identificados con cdigos de 1, 2, 3,,
hasta N.

El programa solicitar el nmero de alumnos N (mximo 30) que sustentaron. Para cada
alumno pedir el nombre del alumno, el cual se almacenar en un vector; y los
calificativos (1: aprobado, 0: desaprobado) otorgados por cada uno de lo tres jurados; los
cuales se almacenarn en una matriz como se muestra a continuacin.










Un alumno obtiene el ttulo profesional si por lo menos dos jurados le otorgan el
calificativo 1 (aprobado).

Finalizado el ingreso de datos se mostrarn los siguientes resultados:

a) El nombre de los alumnos que obtuvieron el ttulo profesional.

b) El jurado o los jurados que otorgaron la mayor cantidad de calificativos 0
(desaprobado).














Para la calificacin (no llenar)
1 2 3 4 Puntaje preg. 2








CONTINA TEMA A
Jurado 1 Jurado 2 Jurado 3
1 0 0
1 1 1
1 0 1
1 1 0
. . .
. . .
Nombres
Ros, Luis
Gmez, Luca
Taira, Carlos
Chvez, Beatriz
..
..



4
PREGUNTA 3

e) En relacin a los subprogramas, mencione una similitud y una diferencia entre
funciones y procedimientos. (2 puntos)

___________________________________________________________________________

___________________________________________________________________________

___________________________________________________________________________

___________________________________________________________________________

___________________________________________________________________________

___________________________________________________________________________

___________________________________________________________________________


f) En relacin a las modalidades para abrir archivos de acceso secuencial, indique
cules son estas modalidades y defina cada una de ellas. (2 puntos)

___________________________________________________________________________

___________________________________________________________________________

___________________________________________________________________________

___________________________________________________________________________

___________________________________________________________________________

___________________________________________________________________________












Para la calificacin (no llenar)
1 2 Puntaje preg. 3








FIN TEMA A

También podría gustarte