var
x, numDel, i, j: longint;
d: array[1..2] of longint;
begin
for i := 174457 to 174505 do begin
numDel := 0;
for j := 2 to (i div 2) - 1 do begin
if i mod j = 0 then begin
numDel := numDel + 1;
if numDel > 2 then break;
d[numDel] := j;
end;
end;
if numDel = 2 then writeln(d[1], ' ', d[2]);
end;
end.
Что то вроде этого:
d = [0,0]
for i in range(174457,174506):
numDel = 0
j = 2
while j > (i//2) - 1:
if i%j=0:
numDel += 1
if numDel>2:
break
d[numDel] = j
if numDel = 2:
print(str(d[1], ' ', d[2]))
Это так сказать построчный перевод. Если знать формулу, можно в несколько строк все уложить
Берете какой либо оператор из паскаля и ищете его аналог в пайтоне. Так же и с функциями и процедурами и классами. Циклы вроде бы такие же. Массивы и типы данных вроде бы тоже.