[ Goran Rakić @ 04.12.2001. 16:49 ] @
Imali smo kontrolni i jedan zadatak je bio da:
broj n rastavimo na proste cinioce i to lepo ispisemo na ekranu...
Ja sam napravio programce, preko DIV i MOD operacija, koje odredi cinioce, ali umesto da za n=12 uradi 2 2 3 uradi 2 3... to jest ne odredi koliko je puta neki cinilac cinilac:
evo i koda:

PROGRAM rastavi_na_cinioce;
VAR n,I,A,P:integer;
BEGIN
writeln ('Unesi broj n: ');
read (n);
FOR I:=2 TO (n DIV 2) DO BEGIN
P:=0;
IF n MOD I=0 THEN BEGIN
FOR A:=1 TO I DO BEGIN
IF I MOD A=0 THEN P:=P+1;
END;
IF P<=2 THEN writeln (I);
END;
END;
END.
[ shaDy @ 12.12.2001. 00:34 ] @
Pogledo sam tvoj zadatak ali nisam imao vremena da provaljujem
kako si radio.
Ali evo srocio sam ti na sledeci nacin, mozda je malo prostije:


var n,k: integer;

begin
readln(n);
k:=2; { k je faktor}
while k<=n do
If n mod k = 0 then
begin
write(k,' ');
n:=n div k;
end
else inc(k);
end.

Nadam se da ti je pomoglo.

Poz
[ Goran Rakić @ 12.12.2001. 15:00 ] @
hvala