fork download
  1. var a,i,b: longint;
  2. begin
  3. read(a);
  4. b:= trunc(sqrt(a));
  5. for i :=1 to b do
  6. if a mod i = 0 then begin
  7. if i mod 2 = 0 then
  8. writeln(i);
  9. if ((a div i) mod 2 = 0) and (a div i <> i) then
  10. writeln(a div i);
  11. end;
  12. end.
Success #stdin #stdout 0s 232KB
stdin
1000000000
stdout
1000000000
2
500000000
4
250000000
200000000
8
125000000
10
100000000
16
62500000
20
50000000
40000000
32
31250000
40
25000000
50
20000000
64
15625000
80
12500000
100
10000000
8000000
128
7812500
160
6250000
200
5000000
250
4000000
256
3906250
320
3125000
400
2500000
500
2000000
512
1600000
640
1562500
800
1250000
1000
1000000
1250
800000
1280
781250
1600
625000
2000
500000
2500
400000
2560
320000
3200
312500
4000
250000
5000
200000
6250
160000
6400
156250
8000
125000
10000
100000
12500
80000
12800
64000
16000
62500
20000
50000
25000
40000
31250
32000