Исполнитель Редактор получает на вход строку цифр и преобразовывает её. Редактор может выполнять две команды, в обеих командах v и w
обозначают цепочки символов.
заменить (v, w)
нашлось (v)
Первая команда заменяет в строке первое слева вхождение цепочки v на
цепочку w. Если цепочки v в строке нет, эта команда не изменяет строку.
Вторая команда проверяет, встречается ли цепочка v в строке исполнителя
Редактор. Если она встречается, то команда возвращает логическое значение
"истина", в противном случае возвращает значение "ложь".
Дана программа для исполнителя Редактор:
НАЧАЛО
ПОКА нашлось (111)
заменить (111, 22)
заменить (2222, 1)
КОНЕЦ ПОКА
КОНЕЦ
Какая строка получится в результате применения приведённой программы к
строке вида 1…12…2 (63 единицы и 61 двойка)?
ОЧЕНЬ С ОЪЯСНЕНИЕМ
<p>program xxx;</p><p> var i, k, d, e, s : integer;</p><p>begin</p><p> k:=0;</p><p> for i:= 10 to 99 do</p><p> begin</p><p> d:= i div 10;</p><p> e:= i mod 10;</p><p> s:=d + e;</p><p> if i mod s = 0 then k:=k+1</p><p> end;</p><p> write ('кол-во чисел которые делятся на сумму своих цифр=', k);</p><p> readln</p><p>end.</p>
Var a1,a2,a3,a4,t1,t2,t3,p,d,vp,b: Integer;
begin
writeln ('программа вычисляет норму для данного ученика');
writeln ('введи массу учебника 1');readln (a1);
writeln ('введи массу учебника 2');readln (a2);
writeln ('введи массу учебника 3');readln (a3);
writeln ('введи массу тетради 1');readln (t1);
writeln ('введи массу тетради 2');readln (t2);
writeln ('введи массу тетради 3');readln (t3);
writeln ('введи массу пенала');readln (p);
writeln ('введи массу дневника');readln (d);
writeln ('введи массу портфеля');readln(vp);
b:=a1+a2+a3+a4+t1+t2+t3+p+d+vp;writeln ('общая масса портфеля= ' b);
if (b<=5) then writeln ('норма') else writeln ('ненорма');
readln;
end.