Вопрос задан 20.06.2023 в 01:24. Предмет Информатика. Спрашивает Вольский Кирилл.

НА ПИТОНЕ Опишите на русском языке или одном из языков программирования алгоритм подсчета числа

элементов, равных максимальному, в числовом массиве из 30 элементов ЕСТЬ РЕШЕНИЕ НА ПАСКАЛЕ: var a:array[1..N] of integer; max, k, i: integer; begin for i:=1 to N do readln(A[i]); k:=1; max:=a[1]; for i:=2 to N do begin if a[i]=max then k:=k+1; if a[i]>max then begin max:=a[i]; k:=1 end end; writeln(k) end.
0 0
Перейти к ответам

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

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Жаңбырбай Ануар.

k, N = 1, 30

a = [int(input()) for i in range(N)]

print(a)

_max = a[0]

for i in range(1, N):

   if a[i] == _max:

       k += 1

   if a[i] > _max:

       _max = a[i]

       k = 1

print(k)

0 0
Отвечает Назаров Ваня.

Ответ:

Задание:

Опишите на русском языке или одном из языков программирования алгоритм поиска номер первого из двух последовательных элементов в целочисленном массиве из 30 элементов, сумма которых максимальна (если таких пар несколько, то можно выбрать любую из них).

Решение:

Выделяем целочисленные переменные i1 и Sum; в i1 будем хранить номер первого в паре выбранных соседних элементов, а в Sum – их сумму. В i1 записываем начальное значение 1, а в Sum – сумму первых двух элементов. В цикле рассматриваем все элементы массива со второго до N-1, если сумма текущего элемента и следующего за ним больше Sum, то запоминаем эту сумму в переменной Sum, а номер текущего элемента – в i1.

const N=30;

var A:array[1..N] of integer;

i, i1, Sum: integer;

for i:=1 to N do readln(A[i]);

i1 := 1;

Sum := A[1] + A[2];

for i:=2 to N-1 do

if A[i]+ A[i+1] > Sum then begin

i1 := i;

Sum := A[i] + A[i+1];

end;

writeln(i1);

end.

0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Конечно, я могу переписать ваш алгоритм на языке программирования Python. Ниже представлен код на Python, эквивалентный вашему решению на Pascal:

```python # Задаем размер массива N = 30

# Инициализируем массив и считываем значения A = [int(input()) for _ in range(N)]

# Инициализируем переменные max_value = A[0] count_max = 1

# Проходим по массиву, начиная с элемента с индексом 1 for i in range(1, N): if A[i] == max_value: count_max += 1 elif A[i] > max_value: max_value = A[i] count_max = 1

# Выводим результат print(count_max) ```

В этом коде создается массив `A` размером 30 элементов, и затем считываются значения. Затем происходит итерация по массиву для подсчета числа элементов, равных максимальному. Результат выводится на экран.

0 0

Похожие вопросы

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос