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_T3 Sumatoria en forma recursiva

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

Tema 3. Escriba una función RECURSIVA, denominada SumaElem(), que reciba como parámetros un arreglo de enteros y su dimensión, luego procese y devuelva la suma de los elementos del arreglo.

Escriba un programa en C/C++ que almacene en un arreglo los 100 primeros números naturales, que llame a función SumaElem() para calcular la suma de dichos números y que muestre el resultado por pantalla.

3Eva_IIIT2003_T2 Separar lista socios 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 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_IIIT2003_T1 Funciones lógicas pyq y poq

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

Tema 1. Analice las dos siguientes formas de expresiones lógicas:

a. (p ∧ q)
b. (p ∨ q)

donde p y q son variables proposicionales que pueden tomar los valores 0 ó 1.

Escriba una función denominada pyq() y otra función denominada poq(), que reciban 2 variables proposicionales como parámetros y devuelvan un 1 si la expresión lógica respectiva es verdadera o 0 si es falsa.

Escriba un programa en C/C++ que reciba valores para p y q y use las funciones anteriores para evaluar las siguientes expresiones:

1. (p ∧ q) ∨ (p ∧ q)
2. p ∨ (p ∧ q)

3Eva_IT2003_T6 Prueba de escritorio

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 6. Dado el siguiente fragmento de programa:

float A[5]={1,2,4,6,8};
int i;
float *p;
for (i=0;i<5;i++){
    p=&A[i];
    *p=*p+i;
}

¿Cuál es el contenido del vector A[] luego de ejecutar dicha secuencia de instrucciones?

 A[]
 i
 p

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_T4 Prueba de escritorio

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 4. Dada la siguiente definición para una función denominada misterio():

int misterio(int m,int n){
    if (m==0)
        return n+1;
    else
        if (n==0)
            return misterio(m-1,1);
        else
            return misterio(m-1, misterio(m,n-1));
}
m
n

Realice una prueba de escritorio (paso por paso), para mostrar el resultado de la ejecución de la sentencia: misterio(1,1)

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_IT2003_T2 Verificar un cuadrado mágico

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

TEMA 2. Un cuadrado mágico es una matriz cuadrada de orden n, tal que sus elementos son los números 1, 2, 3, 4, …, n2; sin repeticiones y ubicados de tal manera que la suma de los elementos de cada fila es igual a la suma de los elementos de cualquier columna e igual a la suma de los elementos de las diagonales.

Por ejemplo, la matriz siguiente es un cuadrado mágico de tercer orden.

4 9 2
3 5 7
8 1 6
Ejemplo:
Es un cuadrado mágico: 1

Escriba un programa en C/C++ que permita leer los elementos de una matriz nxn, tal que n<10 y verifique si el cuadrado es mágico.

3Eva_IT2003_T1 Raíces enteras positivas del polinomio

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

Tema 1. Encuentre el número de raíces enteras positivas y diferentes menores que 20 que hay en la ecuación polinómica p(x)=0, donde:

p(x) = – 336x + 356x + 208x  – 337x4   + 127x5  + 19x6 + x7

término 1 2 3 4 5 6 7
coeficiente [término] -336 356 208 -337 127 -19 1

a) Escriba una función num_raices que:

  • reciba el grado del polinomio y un arreglo entero con los coeficientes de la ecuación y
  • retorne el número de raíces enteras positivas y diferentes menores que 20, de dicha ecuación.

b) Escriba un programa en C/C++ que permita leer el grado y los coeficientes del polinomio p(x), llame a la función num_raices y presente el resultado.