1) begin var s1:=ReadlnString('Текст:'); Writeln('k = ',s1.Where(c->Pos(c,'01')>0).Count); var s2:=s1.Select(c->c='0'?'A':c).Select(c->c='1'?'M':c); s2.Println; end.
Пример: Текст: Текст с 1 и 0: 110+101=1011 k = 12 Текст с M и A: MMA+MAM=MAMM
2) var s1,s2:string; i,k:integer; begin writeln('Введите текст:'); readln(s1); k:=0; s2:=''; for i:=1 to length(s1) do if s1[i]='0' then begin s2:=s2+'A'; k:=k+1; end else if s1[i]='1' then begin s2:=s2+'M'; k:=k+1; end else s2:=s2+s1[i]; writeln(s2); writeln('k = ',k); end.
Пример: Введите текст: Текст с 1 и 0: 110+101=1011 Текст с M и A: MMA+MAM=MAMM k = 12
1) предусловие
program w;
var x,y: real;
begin
x:=1;
while x<=2 do
begin
y:=10*x/3;
writeln ('x = ',x:3,' y = ',y:0:3);
x:=x+0.2
end
end.
2) постусловие
program r;
var x,y: real;
begin
x:=1;
repeat
y:=10*x/3;
writeln ('x = ',x:3,' y = ',y:0:3);
x:=x+0.2
until x>2
end.
Объяснение:
1) предусловие
задаем начальное значение х
Цикл:
проверяем условие
считаем у
выводим значения х и у на экран
изменяем х на шаг
2) постусловие
задаем начальное значение х
Цикл:
считаем у
выводим значения х и у на экран
изменяем х на шаг
проверяем условие