
98 баллов Переведите с паскаля на питон Const N = 30; Var A:Array[1..N]
of integer; i,SMax,iSMax:integer; Begin Randomize; Write('Исходный массив:'); For i:= 1 to N do Begin A[i]:=random(N); Write(' ',A[i]) End; WriteLn; iSMax:=1; SMax:=A[1]+A[2]+A[3]; For i:= 3 to N-2 do if A[i]+A[i+1]+A[i+2]>SMax then Begin iSMax:=i; SMax:=A[i]+A[i+1]+A[i+2]; End; WriteLn('Номера элементов, сумма которых максимальна: ',iSMax,', ',iSMax+1,', ',iSMax+2); WriteLn('Максимальная сумма = A[',iSMax,'] + A[',iSMax+1,'] + A[',iSMax+2,'] = ',SMax) End.

Ответы на вопрос

from random import randint as random
n = 30
a = [random(1,n) for i in range(1,n+1)]
print('Исходный массив: ',end='')
for i in range(0,n):
print(a[i],end=' ')
print()
iSMax = 1
SMax = a[0] + a[1] + a[2]
for i in range(2,n-2):
if a[i] + a[i+1] + a[i+2] > SMax:
iSMax = i+1
SMax = a[i] + a[i+1] + a[i+2]
print('Номера элементов, сумма которых максимальна:','{}, {}, {}'.format(iSMax,iSMax+1,iSMax+2))
print('Максимальная сумма = a[{}] + a[{}] + a[{}]= {}'.format(iSMax,iSMax+1,iSMax+2,SMax))



Данный код на языке Паскаль выглядит таким образом:
pascalConst N = 30; Var A:Array[1..N] of integer; i,SMax,iSMax:integer; Begin Randomize; Write('Исходный массив:'); For i:= 1 to N do Begin A[i]:=random(N); Write(' ',A[i]); End; WriteLn; iSMax:=1; SMax:=A[1]+A[2]+A[3]; For i:= 3 to N-2 do if A[i]+A[i+1]+A[i+2]>SMax then Begin iSMax:=i; SMax:=A[i]+A[i+1]+A[i+2]; End; WriteLn('Номера элементов, сумма которых максимальна: ',iSMax,', ',iSMax+1,', ',iSMax+2); WriteLn('Максимальная сумма = A[',iSMax,'] + A[',iSMax+1,'] + A[',iSMax+2,'] = ',SMax); End.
Чтобы перевести этот код на Python, следуйте приведенному ниже коду на Python:
pythonimport random
N = 30
A = [random.randint(0, N-1) for _ in range(N)]
print('Исходный массив:', end=' ')
for i in range(N):
print(A[i], end=' ')
print()
iSMax = 1
SMax = A[0] + A[1] + A[2]
for i in range(2, N - 2):
if A[i] + A[i + 1] + A[i + 2] > SMax:
iSMax = i
SMax = A[i] + A[i + 1] + A[i + 2]
print('Номера элементов, сумма которых максимальна:', iSMax, ',', iSMax + 1, ',', iSMax + 2)
print('Максимальная сумма = A[', iSMax, '] + A[', iSMax + 1, '] + A[', iSMax + 2, '] = ', SMax)
Обратите внимание, что Python использует смещение индексов массива от 0, поэтому в коде Python индексы массива начинаются с 0 вместо 1, как в Паскале.


Похожие вопросы
Топ вопросов за вчера в категории Информатика
Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili