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

Tarea #1 [solución]

Números de Armstrong

      Traduzca y compile este programa. Documente su experiencia. Para trabajar use DrJava, disponible en http://www.drjava.net/

// Armstrong.cpp (C) 2005  adolfo@di-mare.com

/** \file  Armstrong.cpp
    \brief Traducción de \c Armstrong.pas

    \author Adolfo Di Mare <adolfo@di-mare.com>
    \date   2005
*/

#include <iostream>

/** Determina cuantos números son de Armstrong, desde \c 1 hasta \c N.
   - Un número es de Armstrong si la suma de los dígitos que lo
     componen elevados al cubo es igual al número.
   - Por ejemplo 153 es un número de Armstrong porque:
     \code
             3    3    3
     153 == 1  + 5  + 3  == 1^3 + 5^3 + 3^3
     \endcode
*/
int main() {
    const int N = 3000;
    int numero, suma, digito, temp;

    cout << "Números encontrados (1 .. ";
    cout << N << ") que son de Armstrong:" << endl << endl;
    for ( numero = 1; numero <= N; ++numero) {
        suma = 0;
        temp = numero;
        while ( temp != 0 ) {       // suma de dígitos
            digito = temp % 10;     // al cubo
            suma   = suma + (digito * digito * digito);
            temp   = temp / 10;
        }
        if (suma == numero) {
            cout << numero << " Suma de sus dígitos al cubo ";
            cout << suma << endl;
        }
    }
    return 0;
}

// EOF: Armstrong.cpp

 

Entrega de la tarea

      Luego de imprimir la documentación de su programa, y entregarla en clase, envíe su trabajo por correo electrónico. Para esto, haga un archivo empacado .zip cuyo nombre sea su número de carnet. Incluya en ese archivo lo siguiente:

  1. Un documento en formato HTML que describa el trabajo que realizó. Incluya el nombre del compilador que usó.
  2. La especificación de su programa.
  3. Archivo de configuración Javadoc (los asistentes usrarán este archivo de configuración para generar la documentación de su programa, por lo que sobra que usted incluya esa documentaciónen su archivo .zip).
  4. El código fuente de sus programas (archivos de implementación *.java, etc.).
  5. Los archivos y datos de prueba para su programa.
  6. Un archivo de enlace Internet, con extensión .url que permita abrir la página Internet en que está la documentación completa de su programa.

      Las cuentas de computador en la ECCI se asignan de acuerdo al número de carnet. Por ejemplo, si su carnet es el número 95-28-09, para entregar su tarea usted debe crear el archivo 952809.zip para enviarlo por correo electrónico. Si varios alumnos participaron en la confección de la tareas, sus carnets deben incluirse en el nombre del archivo .zip: 952809-952810-952811.zip.

      Luego haga en su cuenta personal un subdirectorio llamado public_html, que es bajo el que se instalan todas sus páginas Internet. Por ejemplo, si su solución está en el archivo HTML llamado "OLP/t3sol952809.htm", entonces usted debe instalar esa página en el archivo
      public_html/OLP/t3sol952809.htm
de su cuenta. Luego, para acceder esa página Internet, debe entrar a este sitio:
      http://anubis.ecci.ucr.ac.cr/~e952809/OLP/t3sol952809.htm

[InternetShortcut]
URL=http://anubis.ecci.ucr.ac.cr/~e952809/OLP/t3sol952809.htm
952809.url

      Como todas las cuentas de estudiante son la letra "e" seguida del número de carnet, para el estudiante de carnet "952809" la cuenta es "e952809". Para indicarle al servidor Internet a cuál cuenta entrar se usa el caracter "~" (Alt-126), seguido del nombre de la cuenta: "~e952809". En este caso, el archivo de acceso rápido a su página Internet se llamaría "952809.url".

      Después de la fecha de entrega del programa, puede usted instalar en su cuenta personal su solución (no instale antes su solución en Internet, pues en ese caso sería usted culpable de facilitar la copia de su trabajo, y en consecuencia se haría acreedor a la sanción respectiva).

      Por ejemplo, para entregar su tarea programada, el estudiante 952809 crea su archivo 952809.zip en el que aparece estos archivos:

Armstrong.java
Programa para calcular los números de Armstrong
Bib.java
Biblioteca Java personal
 
952809.doc
Documentación, escrita con Word (incluye la portada)
952809.htm
Página Internet con toda la documentación
952809.url
Enlace para abrir la página Internet
 
Armstrong.vjsproj
Archivo para compilar el programa con Visula Studio .NET

[mailto:] Entrega de Tareas

Tiempo de entrega: 7 días
Modalidad: Individual

 

Políticas de Corrección de Tareas

  1. La falta de cualquier especificación debe ser castigada fuertemente.
  2. Correcta indentación del código fuente.
  3. Correcto espaciado del código fuente.
  4. Código fuente escrito de manera que se legible y claro.
  5. Uso de indentificadores significativos.

Soluciones

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