procedure hase(var k,n,max:integer); //сама последовательность begin if not(odd(n)) then n:=n div 2 else n:=n*3+1; //условие про чётность writeln(n); //вывод нового члена последовательности inc(k); //увеличение значения счётчика шагов if max<n then max:=n; //поиск вершины end;
procedure start(var k,n,max:integer); //название процедуры намекает begin readln(n); k:=0; writeln('Seq:'); max:=integer.MinValue; while n<>1 do hase(k,n,max); writeln('Шаги:',k); writeln('Вершина:',max); end; begin start(k,n,max); end. Пример ввода: 6 Пример вывода: Seq: 3 10 5 16 8 4 2 1 Шаги:8 Вершина:16
Const Sz = 1000; var a: array [1..Sz] of integer; b: array [1..Sz] of integer; c: array [1..Sz] of integer; d: array [1..Sz] of integer; M: integer; N: integer; i: integer; k: integer;begin read(M); readln(N); for i:=1 to N do begin read(a[i]); readln(b[i]); if (a[i]<>0) then c[i]:=1 else c[i]:=0; end; for i:=1 to N do begin if(c[i]<>0) then begin for k:=1 to i do begin if(d[k]=0) then d[i]:=1; if (c[k]=i) then d[k]:=0; end; writeln(d[i]) end;end;end.
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota
Оформи подписку