Перевод из Pascal в Python

Пытался перевести из паскаля в питон:

var a: array[1..100] of integer;
i, k: integer;
begin
  for i:= 1 to 100 do
    if i*2 >= 65 then
      a[i]:= 1
    else 
      a[i]:= 0;
    for k:= 1 to 100 do
    for i:= 1 to 100 do
      if a[i] = 0 then
        if (a[i+1] > 0) and (a[i*2] > 0) then
          a[i]:= max(a[i+1], a[i*2])*-1
        else 
          if (a[i+1] < 0) or (a[i*2] < 0) then
            a[i]:= min(a[i+1], a[i*2])*-1+1;
       for i:= 1 to 64 do
         if a[i] = 1 then
           print(i);     
end.

Получилось так:

a = [1, 101]
i = int()
j = int()
for i in range(1, 101):
    if i*2 >= 65:
        a[i] = 1
    else:
        a[i] = 0
    for k in range(1, 101):
        for i in range(1, 101):
            if a[i] == 0:
                if (a[i+1] > 0) and (a[i*2] > 0):
                    a[i] = max(a[i+1], a[i*2])*-1
                elif (a[i+1] < 0) or (a[i*2] < 0):
                    a[i] = min(a[i+1], a[i*2])*-1+1
for i in range(1, 65):
    if a[i] == 1:
        print(i)

В итоге пишет ошибку:

if (a[i+1] > 0) and (a[i*2] > 0):
IndexError: list index out of range

Скажите пожалуйста, что не так сделал?


Ответы (0 шт):