Создавая циклы с условием для Робота , можно использовать 10 команд проверки условий:
– 8 команд вида [слева/справа/снизу/сверху] [стена/свободно]
– 2 команды вида клетка [закрашена/чистая]
На этом занятии будем выполнять задания, в которых не известно, сколько раз надо выполнять повторяющиеся действия
Пример 1. Составьте алгоритм, закрашивающий все внутренние клетки, прилегающие к стене. Длины стен неизвестны.
Особое внимание обратите на то, что программа должна давать верный результат при любых длинах стен. Проверять работо программы надо несколько раз, создавая различные варианты стартовых обстановок, например, при длине стены 1 клетка, при длине стены 8 клеток.
На рисунках представлены стартовая обстановка и результат.
Программа ищет и выводит все трехбуквенные слова, содержащие русские и/или латинские буквы в обоих регистрах. Слова могут разделяться любым количеством любых символов, кроме символа подчеркивания.
// PascalABC.NET 3.2, сборка 1417 от 28.03.2017 // Внимание! Если программа не работает, обновите версию!
begin var s:=ReadlnString('Вводите:'); var m:=s.Matches('\b\w{3}\b'); if m.Count>0 then m.Println else Writeln('Нет трехбуквенных слов') end.
Пример: Вводите: Как найти все слова, где букв - три? Как все где три
Var s,tmp:string; i,n:integer; flag,word:boolean; function letter (const let:char):boolean; begin if ((let>='a') and (let<='z')) or ((let>='A') and (let<='Z')) then letter:=true else letter:=false; end; begin readln (s); s:=s+' '; n:=length(s); flag:=false; for i:=1 to n do begin if (letter(s[i])) and (not flag) then begin flag:=true; tmp:=''; word:=false; end else if (not letter(s[i])) and (flag) then begin flag:=false; if (word) and (not (tmp='')) then writeln (tmp); end; if (flag) then begin tmp:=tmp+s[i]; if (s[i]='k') then word:=true; end; end; end.
Создавая циклы с условием для Робота , можно использовать 10 команд проверки условий:
– 8 команд вида [слева/справа/снизу/сверху] [стена/свободно]
– 2 команды вида клетка [закрашена/чистая]
На этом занятии будем выполнять задания, в которых не известно, сколько раз надо выполнять повторяющиеся действия
Пример 1. Составьте алгоритм, закрашивающий все внутренние клетки, прилегающие к стене. Длины стен неизвестны.
Особое внимание обратите на то, что программа должна давать верный результат при любых длинах стен. Проверять работо программы надо несколько раз, создавая различные варианты стартовых обстановок, например, при длине стены 1 клетка, при длине стены 8 клеток.
На рисунках представлены стартовая обстановка и результат.

Вариант решения:
использовать Робот
алг
нач
нц пока слева свободно
закрасить;влево
кц
нц пока снизу свободно
закрасить;вниз
кц
нц пока снизу стена
закрасить;