Вводится последовательность натуральных чисел. Признак конца ввода - ноль. Необходимо проанализировать подпоследовательности из подряд идущих чисел «`2`» и вывести количество чисел в самой длинной из них.
В этой задаче нам нужно подсчитывать количество чисел и искать максимум среди подсчитанных количеств. Алгоритм будет такой: если очередное число равно `2`, то увеличиваем счётчик количества, если же нет, то это означает, что подпоследовательность закончилась, и надо проверять, не превзошли ли мы максимум, а потом текущий счётчик сбрасывать в `0`. И ещё нужно сделать такую проверку после цикла, поскольку последовательность может закончиться на `2`.
Информация (от лат. informatio — «разъяснение, изложение, осведомлённость») — сведения о чём-либо, независимо от формы их представления. Информатика (от информация и автоматика) — наука о методах и процессах сбора, хранения, обработки, передачи, анализа и оценки информации, обеспечивающих возможность её использования для принятия решений. Компьютер (англ. computer, МФА: — «вычислитель») — устройство или система выполнять заданную, чётко определённую последовательность операций. Текстовый редактор — самостоятельная компьютерная программа или компонент программного комплекса (например, редактор исходного кода интергрированной среды разработки или окно ввода в браузере), предназначенная для создания и изменения текстовых данных вообще и текстовых файлов в частности. Графический редактор — программа (или пакет программ), позволяющая создавать и редактировать двумерные изображения с компьютера.
дешифровки: Const sh = '_.,'; Var St : String; i : Integer; Function DeCode(S : String; Tabl : String; k : Integer) : String; Var j,n : Integer; Begin For j:=1 to Length(S) do Begin n:=Pos(S[j],sh); If n>0 then Begin n:=n+k; While n>Length(sh) do n:=n-Length(sh); While n<=0 do n:=n+Length(sh); S[j]:=sh[n]; end end; DeCode:=S; end; Begin St:='ЗЫФЙГФШРЦ . ШД'; Writeln(Decode(St,sh,-6)); //For i:=-10 to 10 do Writeln(Decode(St,sh,i)); end.
В этой задаче нам нужно подсчитывать количество чисел и искать максимум среди подсчитанных количеств. Алгоритм будет такой: если очередное число равно `2`, то увеличиваем счётчик количества, если же нет, то это означает, что подпоследовательность закончилась, и надо проверять, не превзошли ли мы максимум, а потом текущий счётчик сбрасывать в `0`. И ещё нужно сделать такую проверку после цикла, поскольку последовательность может закончиться на `2`.
var a,k,max:integer;
begin
max:=0;
k:=0;
read(a);
while a <> 0 do begin
if a = 2
then k := k + 1
else begin
if k > max then max := k;
k := 0
end;
read(a);
end;
if k > max then max := k;
writeln(max)
end.