Universidad de Costa Rica
Escuela de Ciencias de la
Computación e Informática
Profesor Adolfo Di Mare
CI-1101
II Semestre 2000
[<=] [home] [<>] [\/] [=>]
CI-1101 Programación I

Tarea #5 [solución]

Calculadora

      El programa lab05.cpp es una calculadora muy sencilla, pero tiene varios errores simples de sintaxis, los que usted debe corregir usando el ambiente de programación de su compilador C++ preferido. Una vez que pueda compilar su programa, usted deberá ponerle comentarios. Para esto, busque todas las hileras del código fuente que tengan el siguiente formato:
      // <><><><><><><><>
y sustitúyalas por su explicación de lo que hace esa parte del programa.

      Usted no podrá ponerle los comentarios al programa si no entiende qué es lo que hace. Para entender qué hace cada parte del programa, usted deberá ejecutarlo paso por paso usando el depurador simbólico del compilador (teclas F4, F7 y F8 en el caso del Borland C++). Para conocer el valor de las variables debe usar la ventana de evaluación de expresiones (teclas Ctrl-F4 y Ctrl-F7 en el caso del Borland C++). Use la ayuda interactiva del compilador cuando tenga problemas.

      Después de ponerle los comentarios al programa, escriba un documento en que explique qué hace el programa, y cómo lo hace. Incluya sus ideas de cómo puede mejorar el programa, y comente sobre las restricciones que tiene.

      Cuando termine su trabajo, usted debe enviarlo por correo electrónico a los asistentes del curso un archivo empacado .zip que contenga dos archivos ASCII llamados <carnet>.cpp y <carnet>.doc. El primer archivo contendrá el programa fuente que corresponde a lab05.cpp, y el segundo será la documentación escrita en formato de texto: no hace falta que envíe ningún otro archivo. Además, también debe imprimir el contenido del archivo <carnet>.doc y entregarlo en clase.

Envío de tareas por correo electrónico

[mailto:]Andrés Arias y Tomás Rodríguez

/* lab05.cpp  (c) 2000 adolfo@di-mare.com */

#include <iostream>  // cin+cout
#include <iomanip>   // setw()
#include <climits>   // INT_MAX

int main() {
/*  resultado
<><><><><><><><> Escriba aquí qué hace el programa... */
/*  programador <><><><><><><><>
Ponga aquí su nombre y carnet
<><><><><><><><> */

rata     r,        // <><><><><><><><>
acum     // <><><><><><><><>
achara     op       // <><><><><><><><>

// <><><><><><><><>
acum = 0

// <><><><><><><><>
cout << acum << " > "
cin  >> op


// <><><><><><><><>
while (op != '.') {
// <><><><><><><><>
cin >> r             // <><><><><><><><>

// <><><><><><><><>
switch (op) {
case '+': acum += r
case '-': acum  = acum - r
case '*': acum *= r
case '/': acum  = acum / r
default:
// <><><><><><><><>
cout << "\n(" << op << ")==> Operación inválida\n"
}

// <><><><><><><><>
cout << acum << " > "
cin >> op
}

// <><><><><><><><>
cout << acum << " > "
cin >> op

Borreme!!!
return 0
}  // main()

/* EOF: lab05 */

Figura 1: lab05.cpp
Tiempo de entrega: 2 Días
Modalidad: Individual

Soluciones

[mailto:] Adolfo Di Mare <adolfo@di-mare.com>.
Copyright © 2000
Derechos de autor reservados © 2000
[home] <> [/\]