Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /**
- * @mainpage Ejemplo de diseño modular: Gestión de una lavadora.
- En este ejemplo se construye un programa modular que ofrece un menú de opciones para gestionar una lavadora. Se introducen las clases <em>Lavadora</em>, <em>Cubeta</em> y <em>Prenda</em>.
- Sólo se documentan elementos públicos. En una próxima sesión se verá un ejemplo
- de proyecto completamente documentado, incluyendo los elementos privados.
- */
- /** @file pro2_s8.cc
- @brief Programa principal para el ejercicio <em>Gestión de una lavadora</em>.
- */
- // para que el diagrama modular quede bien se han escrito includes redundantes;
- // en los ficheros .hh de la documentación de las clases ocurre lo mismo.
- #include "Prenda.hh"
- #include "Lavadora.hh"
- #include "Cubeta.hh"
- #ifndef NO_DIAGRAM // explicado en Prenda.hh
- #include "readbool.hh"
- #endif
- /** @brief Programa principal para el ejercicio <em>Gestión de una lavadora</em>.
- */
- int main () {
- Lavadora lavadora;
- Cubeta cubeta;
- int input, peso;
- bool color;
- while (cin >> input and input != -8) {
- if (input == -1)
- {
- cin >> peso;
- color = readbool();
- lavadora.inicializar(peso,color);
- }
- else if (input == -2)
- {
- cin >> peso;
- color = readbool();
- if (color == lavadora.consultar_color() and peso + lavadora.consultar_peso() <= lavadora.consultar_peso_maximo()) {
- Prenda prenda(color,peso);
- lavadora.anadir_prenda(prenda);
- }
- }
- else if (input == -3)
- {
- cin >> peso;
- color = readbool();
- Prenda prenda(peso,color);
- cubeta.anadir_prenda(prenda);
- }
- else if (input == -4)
- {
- if (lavadora.esta_inicializada()) cubeta.completar_lavadora(lavadora);
- }
- else if (input == -5)
- {
- lavadora.lavado();
- }
- else if (input == -6)
- {
- cout << " Cubeta:" << endl;
- cubeta.escribir();
- }
- else if (input == -7)
- {
- cout << " Lavadora:" << endl;
- lavadora.escribir();
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment