Programozás‎ > ‎Gyakorlatok 1.‎ > ‎

BED megoldás

class legtobbosztojuszam{
public static void main (String args[]){
int m = Integer.parseInt(args[0]);        //induló szám: alsó korlát
int v = Integer.parseInt(args[1]);        //felső korlát
int d = 2;                                //prímtényező
int p = 1;                                //osztók darabszáma
int l = 0;                                //legnagyobb "osztószám"
int h = m;                                //"helyes" szám
int i = 1;                                //prímtényezők darabszámát számolja
int N = m;                                //az aktuálisan felbontandó szám

while(m <= v){
     while (N>1){
        while(N % d == 0){
            N /= d;
            i++;
        }
        d++;
        p=p*i;
        i=1;
    }
    d=2;
    if(p>l){
        l=p;
         h=m;
    }
    p=1;
    m++;
    N=m;
}
System.out.println(h);
System.out.println("osztoinak szama: " +l);
m=h+1;
N=m;
while(m <= v){
    while (N>1){
        while (N % d ==0){
            N /= d;
            i++;
        }
        d++;
        p=p*i;
        i=1;
    }
    d=2;
    if (p==l){
        System.out.println("azonos osztoszamu: "+m);
    }
    p=1;
    m++;
    N=m;
}
}
}


Comments