Вопрос задан 21.04.2021 в 19:00. Предмет Информатика. Спрашивает Козлов Алексей.

Помогите решить задачу в паскаль!!! Последовательность состоит из натуральных чисел и завершается

числом 0. Всего вводится не более 10000 чисел (не считая завершающего числа 0). Определите, сколько элементов этой последовательности равны ее наибольшему элементу.Числа, следующие за числом 0, считывать не нужно.у меня есть такой вариант но нужен еще один readln(a);beginif a > 0 thenif (max = 0) or (a > max) thenbegin max := a;k := 1 endelse if a = max then inc(k);end;until a=0;write(k);end.
0 0
Перейти к ответам

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

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Унанян Тигран.
Var t,i,x,max:integer;
begin
max:=0;t:=0;
repeat
begin
x:=0;
read(x);
if (x>0) and (x=max) then i:=i+1;
if x>max then
begin
max:=x; 
i:=1; 
end;
t:=t+1;
end;
until (x<=0) or (t>=1000) or (x mod 1>0);
if (x<0) or (x mod 1>0) then begin i:=-1; writeln('Нельзя вводить ненатуральные числа');end;
if i=0 then writeln('Введён только ноль');
if i>0 then writeln('Чисел, равных максимуму: ', i);
end.
0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Ваш код выглядит близко к решению задачи, но нужно внести некоторые изменения.

Сначала вам нужно объявить две переменные: одну для хранения текущего максимума (max), а вторую для хранения количества элементов, равных максимуму (count).

Ваш цикл должен продолжаться до тех пор, пока вы не введете 0. В каждой итерации цикла вы должны проверять, является ли введенное число больше, чем текущий максимум. Если это так, то обновите текущий максимум и сбросьте количество элементов, равных максимуму, до 1. Если введенное число равно текущему максимуму, то увеличьте количество элементов, равных максимуму, на 1.

После того, как вы завершите ввод, вы должны вывести количество элементов, равных максимуму.

Вот код, который решает задачу:

css
var a, max, count: integer; begin count := 0; max := 0; repeat readln(a); if a > max then begin max := a; count := 1; end else if a = max then count := count + 1; until a = 0; write(count); end.
0 0

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

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

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