В отличии от блок-схемы, в программе использовано формирование членов последовательности посредством генератора случайных чисел. Если нужен ввод с клавиатуры, достаточно удалить randomize и заменить строку t:=Random(19)-9; { случайное значение на [-9;9] } на Read(t);
var i,n,t,c0,cn:integer; NoEnd:boolean; begin Randomize; Write('Предельное количество членов последовательности: '); Read(n); c0:=0; cn:=0; i:=1; NoEnd:=True; Writeln('Члены последовательности'); while (i<=n) and NoEnd do begin t:=Random(19)-9; { случайное значение на [-9;9] } Write(t:3); if t=0 then begin if c0<2 then Inc(c0) end else begin if c0<>2 then c0:=0; if t<0 then begin if cn<3 then Inc(cn) end else if cn<>3 then cn:=0 end; NoEnd:=(c0<>2) or (cn<>3); Inc(i) end; Writeln; if c0>=2 then Writeln('В последовательности есть два нулевых члена подряд'); if cn>=3 then Writeln('В последовательности есть три отрицательных члена подряд') end.
Тестовое решение: Предельное количество членов последовательности: 200 Члены последовательности 3 -9 9 9 0 3 -4 -9 3 -3 8 -1 5 1 -6 -9 5 9 -1 5 -6 -2 -4 -5 -1 -8 7 1 1 -6 -3 2 -8 8 8 3 -2 -4 0 8 5 -1 6 -6 -2 5 4 6 9 3 9 -3 -7 -8 4 -5 5 5 1 -1 5 5 -1 -1 -9 -4 -3 7 2 0 3 0 0 В последовательности есть два нулевых члена подряд В последовательности есть три отрицательных члена подряд
Решение достаточно простое. В самом деле, "Повтори 10" говорит нам о том, что будет нарисовано нечто из 10 одинаковых элементов. Что именно выполняется 10 раз? Поворот направо на 20 градусов, затем рисование прямой линии длиной 36 единиц и снова поворот направо, но уже на 40 градусов. Т.е. угол между прямыми составит 40+20=60 градусов. За 6 циклов будет нарисован правильный шестиугольник (6х60=360 градусов), а оставшиеся 4 шага пройдут по уже нарисованным линиям, т.е. 4 шага лишние. ответ: 3) правильный шестиугольник