Дан целочисленный массив из 25 элементов. Элементы массива могут принимать значения от 30 до 50 — количество яблок в одном ящике. Опишите на русском языке или на одном из языков программирования алгоритм, который среди ящиков с количеством яблок больше сорока находит номер ящика с самыми крупными яблоками. Гарантируется, что такой ящик один. (Вес яблок во всех ящиках одинаковый.)
Исходные данные объявлены так, как показано ниже. Запрещается использовать не объявленные переменные, но разрешается не использовать часть из них.
| Бэйсик | Паскаль |
|---|---|
CONST N 25 DIM А(1 ТО N) , I, J,MIN AS INTEGER FOR I = 1 TO N INPUT A(I) NEXT I END
| const N = 25; var A:array[1..N] of integer; i,j,min:integer; begin for i:=1 to N do readln (A[i]); end.
|
| Си++ | Естественный язык |
#define N 25 int A[25]; int i, j, min; for(i = 0; i < N; i++) {cin >> a[i];} | Объявляем массив А из 25 элементов. Объявляем целочисленные переменные г, j, min. В цикле от 1 до 25 вводим элементы массива Л с 1-го по 25-й. |
| Python | |
# допускается также # использовать две # целочисленные переменные j, min a = [] n = 25 for i in range(0, n): a.append(int(input())) ... | |
Естественный язык
Записываем в переменную j начальное значение, равное 1, в переменную min — начальное значение 50. В цикле от первого до двадцать пятого элемента проходим весь массив и сравниваем каждый элемент с 40. Если элемент больше 40 и меньше значения переменной min, то присваиваем переменной j номер текущего элемента, а и переменной min присваиваем значение текущего элемента. Выводим на экран значение переменной j.
Решение на Си
#define N 25
int A[N];
int i, j, min;
for(i = 0; i < N; i++)
scanf(%d, A[i]);
min = 51;
for(i = 0;i < N; i++)
{
if (A[i] > 40 && A[i] < min) {min = A[i]; j = i+1; }
}
cout « j « endl;


Ошибка в строке
for i:=l to N do readln (A[i]);
Вместо единицы написана маленькая буква L