Divisores de un entero.

Iniciado por *-.Sub-Vorbio.-*, 9 Noviembre 2008, 22:19 PM

0 Miembros y 1 Visitante están viendo este tema.

*-.Sub-Vorbio.-*

No se como expresar la idea, alguna linea de apoyo? un saludo!


public class pureb {

public static void main (String [] args){

int a;
int b;
a=10;//numero a encontrar divisores
b=maquina(a);//divisores del numero = b (debería ser un array)?
}

public static int maquina (int z){

while (z/z--!=z){
int num[];
if (z%z-->0) z--;//pasa al siguiente
//else //envialo por num a "b"
//después repite la operacion if-else

return num[];
}

}
}
"Al clavo salido le toca siempre el martillazo."

"Cuando los elefantes luchan, la hierba es la que sufre."

juancho77

Para encontrar los divisores de un numero:

Código (freebasic) [Seleccionar]
variables numero, x.

para x desde 1 hasta numero hacer
si (numero mod x = 0)
mostrar i.



sapito169

#2
ase mucho pero mucho tiempo que no me salia un problema a la pprimera en menos de 5 minutos

es que ya me acostumbre a solo hacer problemas bien dificiles ::) ::) ::)

bueno casualmente la solucion es exactamente la misma que en tu psedocodigo

expliacandote unas cosas el operador % indica cual es el resto de una division
ejemplo:

int a
16%3=a
System.out.print(a);

a te bota 5

luego para sabier si un numero es divisble entre otro el resto necesariamente te da 0
asi en tus codigo java seria


System.out.print("20 es divisible entre 2")
if(20%2==0){
System.out.print("verdad")
}


sabiendo esto la solucion a tu preoblema seria el siguiente

public class Class1{
    public static void main(String[] args){
        int num=10;
        System.out.print("encontrando divisores de 10\n");
        for(int c=1;c<=num;c++){
            if(num%c==0)System.out.print(c+"\n");
        }
    }

juancho77

Citares que ya me acostumbre a solo hacer problemas bien dificiles

...