/**
@(#)Lab01.java 2009
Traducción de Armstrong.cpp
Contiene todos los componentes principales de un algoritmo:
- Secuenciación
- Asignación y expresiones
- Decisiones if()
- Ciclos for(;;) y while()
- Uso de vectores o matrices
- Subrutinas y parámetros
@author Adolfo Di Mare
*/
import java.lang.System; // Este programa usa la clase "System"
/** Clase que contiene el programa principal {@code main()}. */
public class Lab01 {
/** Determina si una lista de números son de Armstrong. */
public static void main( String args[] ) {
int VEC[] = { 456 , 370 , 9 , 555 , 371 , 12 , 407 , 0 , 1 };
final int DIM = VEC.length;
boolean B[] = new boolean[DIM]; // vector paralelo a VEC[]
esArmstrong( VEC , B );
System.out.println("\nNúmeros de Armstrong:" );
for ( int i=0; i 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:
3 3 3
153 == 1 + 5 + 3 == 1^3 + 5^3 + 3^3 == 1 + 125 + 27
Falla si {@code VAL.length > res.length}.
*/
public static void esArmstrong( int VAL[] , boolean res[] ) {
final int N = VAL.length;
int numero, suma, digito, temp;
for ( int i=0; i