Documentos de Académico
Documentos de Profesional
Documentos de Cultura
FundamentosProgramacion 200801 PrimerParcial
FundamentosProgramacion 200801 PrimerParcial
1. (20%) Para cada uno de los siguientes programas, indique qué es lo mostrado en pantalla.
a. #include <iostream> b. #include <iostream>
using namespace std; using namespace std;
int main() int main()
{ {
int i,j,k; int x=1,i, a1=1,b1=7,c1=3,d1=2, max = (b1 + c1)/d1;
for (i=1; i<=4; i++)
while (x < max)
for (j=1; j<=8; j++)
{
{
cout<<x;
for (k=1; k<=j; k++)
if (x%5 == 0)
cout<<'*';
{
cout<<endl;
a1=b1*c1+x/d1‐a1;
}
cout<<a1<<" ";
return 0;
}else
}
for(i=1;i<=4;i++)
cout<<"*";
x++;
}
return 0;
}
2. (40%) El reglamento de pesca de Saskatchewan impone un límite a la cantidad total permitida de
kilos en un día de pesca. Suponga que se planea llevar un computador portátil en la siguiente salida
de pesca y se necesita un programa que indique cuando se ha excedido dicho límite. Diséñese un
programa que primero lea el límite (en kilos) y que en seguida lea los valores de entrada uno tras
otro (corresponderán a los pesos individuales de las presas pescadas en el orden que se obtienen) e
imprima un mensaje en el momento en que el límite haya sido excedido. Un peso 0 indica el fin de
datos (en caso de que no se alcance a sobrepasar el límite). Después de que cada pescado haya sido
registrado, el programa deberá imprimir el peso total que se lleva hasta ese momento.
El programa deberá imprimir al final si se llegó o no al límite establecido. Adicionalmente, debe
imprimir cuantos peces se atraparon en esa salida.
3. (40%)El banco del Tío Rico tiene la información de saldos y movimientos de las cuentas para el cierre
durante un determinado mes, de la siguiente manera:
- Los datos de las cuentas se encuentran agrupados por número de cuenta.
- Por cada movimiento (depósito o retiro) que se efectúa en la cuenta se registra: el número de la
cuenta (un entero), tipo de movimiento (un carácter que puede ser ‘D’ ó ‘R’ según sea depósito o
retiro respectivamente) y el valor en pesos del movimiento (un entero siempre mayor que cero).
- Cuando se inicia el grupo de datos de una cuenta, después del último movimiento de la cuenta
inmediatamente anterior, aparece el tipo de movimiento ‘S’ que indica saldo al inicio del mes y el
valor en pesos de dicho saldo.
- Un Número de cuenta 0 indica fin de datos.
Un ejemplo de los datos es el siguiente:
17844 S $ 500,000
17844 R $ 100,000
17844 R $ 50,000
15202 S $ 1,000,000
15202 D $ 200,000
15202 D $ 150,000
15202 R $ 300,000
23547 S $ 5,000,000
41236 S $ 2,000,000
41236 D $ 250,000
41236 R $ 100,000
51856 S $400,000
51856 R $500,000
0
Note que puede haber cuentas sin movimiento en el mes (ej: cuenta 23547).
Usted debe realizar un programa que procese los datos de cierre del mes, y cada vez que se termine de leer
el grupo de datos de una cuenta, produzca los siguientes resultados:
a. (15%) Imprimir el número de la cuenta y el nuevo saldo después del cierre.
b. (10%) Informar si en la cuenta se retiró más allá de lo disponible. En este caso, imprima un mensaje
de sobregiro indicando el valor correspondiente al sobregiro (ver ejemplo).
Al finalizar el procesamiento de todos los grupos de cuentas, su programa debe:
c. (15%) Indicar cual fue el porcentaje de cuentas que no tuvieron movimientos en el mes. Para el
ejemplo anterior, su programa debe imprimir que el porcentaje de cuentas sin movimientos es del
20%.
Para el ejemplo, el resultado sería el siguiente:
Nro Cuenta 17844 Saldo Final: 350.000
Nro Cuenta 15202 Saldo Final: 1.050.000
Nro Cuenta 23547 Saldo Final: 5.000.000
Nro Cuenta 41236 Saldo Final: 2.150.000
Nro Cuenta 51856 Saldo Final: ‐100.000 Sobregiro de $100.000
Porcentaje de cuentas sin movimiento: 20%