matematykaszkolna.pl
program znajdujacy liczby doskonale poczatkujacykoder: Witam, mam za zadanie napisac program znajdujacy liczby doskonale w przedziale od 1 do zadanego M. Liczba doskonala to taka ktorej suma dzielnikow wlasciwych jest rowna jej samej, najmniejsza z nich jest 6. Oto co wyskrobalem, bylbym wdzieczny za wytkniecie bledow, pozdrawiam. (jezyk w ktorym pisze to pascal) program doskonale; var M,n,i,suma:longint; begin repeat readln(M); if M<6 then writeln('Zbyt maly zakres!'); until M>=6 suma:=0; n:=6; while n<=M do begin for i:=1 to n−1 do begin if n mod i = 0 then suma:=suma+i; end; if suma=n then writeln(n); n:=n+1; end; readln; end.
16 paź 22:16
poczatkujacykoder: podbijam
16 paź 23:27
Trivial: suma jest zainicjalizowana w złym miejscu (powinna być w pętli while, na początku).
16 paź 23:40
poczatkujacykoder: dzieki wielkieemotka nie dawalo mi to spokoju
16 paź 23:56
Trivial: Działa?
16 paź 23:58
poczatkujacykoder: tak
16 paź 23:59
Trivial: woowwooo To teraz pomyśl nad lepszym algorytmem niż sprawdzanie wszystkich możliwości. emotka
16 paź 23:59
poczatkujacykoder: teraz to mnie zagiales, nie wiem jak inaczej to mozna wykonac
17 paź 00:04
Trivial: Pomyśl, a znajdziesz inny sposób. emotka Dobranoc.
17 paź 00:05