|
Дан целочисленный массив из 30 элементов. Элементы массива могут принимать целые значения от
–
–
10
000 до 10
000 включительно. Опишите
на одном из языков программирования алгоритм, который находит максимум среди элементов массива, делящихся нацело на 5, а затем заменяет каждый элемент, делящийся нацело на 5, на число, равное найденному максимуму. Гарантируется, что хотя бы один такой элемент в массиве есть. В качестве результата необходимо вывести изменённый массив, каждый элемент выводится с новой строчки.
Например, для исходного массива из шести элементов:
5
7
10
25
39
15
программа должна вывести следующий массив
25
7
25
25
39
25
Исходные данные объявлены так, как показано ниже на примерах для некоторых языков программирования. Запрещается использовать переменные, не описанные ниже, но разрешается не использовать некоторые из описанных переменных.
|
Бейсик
|
Python
|
|
CONST N AS INTEGER = 30
DIM A (1 TO N) AS LONG
DIM I AS LONG,
J AS LONG,
K AS LONG
FOR I = 1 TO N
INPUT A(I)
NEXT I
...
END
|
# допускается также
# использовать две
# целочисленные переменные j и k
a = []
n = 30
for i in range(0, n):
a.append(int(input()))
...
|
|
Алгоритмический язык
|
Паскаль
|
|
алг
нач
цел
N
= 30
целтаб
a
[1:
N
]
цел
i
,
j
,
k
нц
для
i
от
1
до
N
ввод
a[i]
кц
...
кон
|
const
N = 30;
var
a: array [1..N] of longint;
i, j, k: longint;
begin
for i := 1 to N do
readln(a[i]);
...
end.
|
|
C
++
|
|
#include <
iostream
>
using namespace std;
const int N = 30;
int main() {
long a[N];
long i, j, k;
for (i = 0; i < N; i++)
cin >> a[i];
...
return
0;
}
|
В качестве ответа Вам необходимо привести фрагмент программы, который должен находиться на месте многоточия. Вы можете записать решение также на другом языке программирования (укажите название и используемую версию языка программирования, например Free Pascal 2.6). В этом случае Вы должны использовать те же самые исходные данные и переменные, какие были предложены в условии (например, в образце, записанном на Алгоритмическом языке).
|