3Eva_IT2005_T3 Calcular millas de viajero

Mejoramiento I Término 2005 – 2006. Septiembre 13, 2005 /ICM00794

Tema 3. (30 puntos).Para el cálculo de las millas de viajero frecuente promocionadas por las aerolíneas, se requiere las coordenadas cartesianas de un mapa que corresponden a las ciudades entre las que el viajero usa un boleto.

a) Escriba una función distancia(x1,y1,x2,y2) que dados dos puntos cartesianos, que retorne la distancia entre ellos. areomillas

b) Escriba un programa que en una estructura almacene los nombres de las ciudades y los puntos (x,y) por donde el viajero inicia su viaje, sigue su recorrido y retorna a su ciudad de origen y calcule, la distancia total recorrida entre todos los puntos usando la función distancia.

Ciudad X Y Distancia Recorrida
Guayaquil 0 0 0
Riobamba 5 1 5.099
Quito 4 3 2.236
Manta 1 2 3.162
Guayaquil 0 0 2.236
Millas Acumuladas: 12.733

3Eva_IT2004_T4 Manejar inventario de ferretería

Mejoramiento I Término 2004 – 2005. Agosto 31, 2004 /ICM00794

Tema 4. Escriba un programa en C/C++ que permita controlar las herramientas de una ferretería en el archivo C:\producto.txt, implementando el siguiente menú:

1. Ingreso de una nueva herramienta
2. Compra de una herramienta existente
3. Venta de una herramienta existente
4. Consulta Individual de una herramienta
5. Reporte de herramientas
6. Salir

Escriba la función en C/C++ que permita hacer la compra de una herramienta existente.

Suponga que las demás funciones ya están implementadas.

Utilice la siguiente estructura para la información:

No. de registro Nombre de herramienta Cantidad
1 Martillo 76
2 Sierra 21
3 Pinzas 18
4 Destornillador 106
5 Llave de tuerca 34

3Eva_IIIT2003_T4 Informes notas de estudiantes

Mejoramiento III Término 2003 – 2004. Abril, 2004 /ICM00794

Tema 4. Escriba un programa en C/C++ que usando una estructura almacene en un archivo  los datos de los estudiantes de Fundamentos de Computación.

El archivo se denomina ‘estud.dat’, en el disco ‘C:\’ con la siguiente forma:

nombre (20 caracteres), edad (entero), nota parcial (entero entre 0 y 100), nota final (entero entre 0 y 100).

Una vez ingresados los datos, presente un menú que permita:

a. Listar los estudiantes con promedio mayor a 80.
b. Cuántos estudiantes pasaron con los exámenes parcial y final (promedio mayor o igual que 60).
c. Muestre los nombres de los estudiantes con una edad menor a 18 años
d. Salir

3Eva_IIIT2003_T2 Socios del club por género

Mejoramiento III Término 2003 – 2004. Abril, 2004 /ICM00794

Tema 2. Dispone de tres vectores que contienen el nombre, el género y la edad de cada uno de los miembros de un club juvenil. Los valores de género: masculino y femenino se representan por su inicial mediante ‘M‘ y ‘F‘ respectivamente.

Escriba un programa en C/C++ que usando un menú realice lo siguiente:

a) Ingrese el nombre, el género y la edad de cada uno de los miembros del club. El ingreso finaliza cuando el usuario ya no desea seguir ingresando más datos (se deberá hacer una pregunta pertinente luego del ingreso de un miembro).

b) Genere dos nuevos vectores, denominados HOMBRES y MUJERES, los cuales deberán contener los nombres de todos los varones y de todas las damas, respectivamente.

c) Muestre por pantalla los nombres de los integrantes con la menor edad en el club.

3Eva_IT2003_T5 Calcular área de f(x) por Montecarlo

Mejoramiento I Término 2003 – 2004. Septiembre 16, 2003 /ICM00794

Nota.- En este examen deben desarrollarse un total de 4 temas. El desarrollo de los temas 1, 2 y 3 es obligatorio. UD. puede seleccionar un solo tema de entre los restantes (4, 5 o 6). Cada tema tiene igual ponderación (25%).

Tema 5. El área bajo la curva de una función f puede estimarse mediante el método de Montecarlo, que consiste en lo siguiente:

  • Establecer un rectángulo tal que x Є [a,b]; y Є [0,d], tal que y=f(x)
  • Generar un numero n de puntos aleatorios tal que a<x<b, 0<y<d.
  • Indicar cuántos de estos puntos caen bajo la curva y=f(x)
  • El área bajo la curva puede estimarse mediante la relación:
\frac{\text{área bajo la curva}}{\text{área bajo el rectángulo}} = \frac{\text{número de puntos bajo la curva}}{n}

Escriba un programa en C/C++ que lea las dimensiones a, b, d de la posición del rectángulo, genere aleatoriamente n pares ordenados dentro de ese rectángulo e indique cuántos puntos están bajo la curva y=f(x)=xe-(x/2) en el intervalo [0,2]

3Eva_IT2003_T3 Reportar notas desde un archivo

Mejoramiento I Término 2003 – 2004. Septiembre 16, 2003 /ICM00794

Tema 3. Se tienen los datos de 20 estudiantes almacenados en ‘c:\notas\entrada.dat’. En el archivo, la estructura de cada registro para cada estudiante estudiante es:

entrada.dat: 
matricula (9 caracteres),apellido (10 caracteres), nota1 (entero), nota2 (entero), faltas (entero)

Lea los datos de los estudiantes almacenados en ‘c:\notas\entrada.dat’, y genere el archivo ‘c:\notas\salida.dat’, donde para cada estudiante se consideran los siguientes datos:

salida.dat:
matricula (9 caracteres), apellido (10 caracteres), promedio (entero), estado (tipo caracter).
  • Promedio almacena el promedio de las 2 mejores notas.
  • Estado puede tomar el valor «A» si el estudiante aprueba, o «R» si reprueba.

Un estudiante aprueba cuando el promedio es mayor o igual que 60 y el numero de faltas es menor que el 40% del total de clases dictadas (definido con una constante NUM_CLASES).
Un estudiante reprueba en caso de no cumplir tal requisito de aprobación.

3Eva_IT2002_T3 Determinar productos iguales entre vendedores

Mejoramiento I Término 2002 – 2003. Septiembre 24, 2002 /ICM00794

Tema 3. Suponga que existen en una unidad de almacenamiento los archivos ‘A:\vendedor1.txt’ y A:\vendedor2.txt’que contienen los registros para de artículos de vendedores con la siguiente información:

código de un artículo (entero) y 
nombre del artículo (10 caracteres)

a) Escriba un programa en C++ que lea desde el teclado dos listas conteniendo los códigos de los artículos que ofrecen dos vendedores.
Cada lista puede tener hasta 20 códigos.

b) Compare y muestre ¿cuales son los nombres de los artículos que están ofreciendo ambos vendedores?

Sugerencia: almacene las listas en arreglos de una dimensión, encuentre la intersección de las dos listas y busque los nombres en el archivo A:\DATOS.

3Eva_IT2000_T3 Archivo con socios del club

Mejoramiento I Término 2000 – 2001 /ICM00794

Tema 3. Escriba un programa que permita manejar un archivo mediante los siguientes procedimientos:

a) Ingrese los datos de los socios de un club en un archivo tipo texto, en los que se registra:

Número de membresía (entero), 
género (m ó f), 
Edad (real), 
Nombre (20 caracteres)

b) Liste los números y nombres de los miembros del club cuya edad está entre 20 y 30 años y son del sexo femenino.

c) Cuando ya funcione el segundo programa, agregue las instrucciones necesarias para que el computador elija aleatoriamente un socio para entregarle un premio. Muestre el nombre del socio ganador.

Rúbrica: Literal a (10 puntos), literal b (8 puntos), literal c (7 puntos)

3Eva_IT2000_T2 Matriz: puntos por goles en campeonato

Mejoramiento I Término 2000 – 2001. Septiembre 24, 2000 /ICM00794

Tema 2. En un campeonato de fútbol intervienen n equipos, siendo n un dato entero menor que 10.

Cada equipo juega contra todos los demás equipos y los goles anotados en cada encuentro han sido almacenados en una matriz nxn como se indica en la tabla ejemplo:

Goles(f,c)
1 2 3 4 5
1 0 3 1 2 1
2 1 0 3 2 3
3 0 2 0 1 1
4 1 0 2 0 1
5 3 4 1 2 0
0
El equipo 1 marco 3 goles al equipo 2,
   1 gol al equipo 3, etc.
El equipo 2 marco 1 gol al equipo 1,
    2 goles al equipo 3, etc.

Lea la matriz y determine cuantos puntos tiene cada equipo. Los puntos asignados son: empate 1, triunfo 3 , derrota 0.


Se adjunta la matriz en python para el ejercicio en forma de un arreglo de 5×5:

goles = np.array(
       [[0, 3, 1, 2, 1],
        [1, 0, 3, 2, 3],
        [0, 2, 0, 1, 1],
        [1, 0, 2, 0, 1],
        [3, 4, 1, 2, 0]] )