begin write('Введите числа: '); read(z, s); if z < s then writeln('Новые значения:', #10, 'z=', (z + s) / 2, ' s=', z * s * 2) else if z > s then writeln('Новые значения:', #10, 'z=', z * s * 2, ' s=', (z + s) / 2) else writeln('Числа равны'); end.
//Мне скучно, потому я пишу сомнительный код по примеру Эникея //PascalABC.NET 3.2 сборка 1318
Var s,t,snew,curr,add,currsave:string; i,j,flag:integer; begin readln(s); readln(t); //s=lowcase(s); t:=lowercase(t); while pos(' ',s)<>0 do begin flag:=0; curr:=copy(s,1,pos(' ',s)); currsave:=curr; if pos(t,lowercase(curr))<>0 then begin flag:=1; delete(curr,pos(t,lowercase(curr)),length(t)); for j:=1 to length(curr) do if ((curr[j]>='a') and (curr[j]<='я')) or ((curr[j]>='А') and (curr[j]<='Я')) or ((curr[j]>='a') and (curr[j]<='z')) or ((curr[j]>='A') and (curr[j]<='Z')) then flag:=0; end; if flag=1 then snew+=curr else snew+=currsave; delete(s,1,pos(' ',s)); end; curr:=s; currsave:=curr; flag:=0; if pos(t,lowercase(curr))<>0 then begin flag:=1; delete(curr,pos(t,lowercase(curr)),length(t)); for j:=1 to length(curr) do if ((curr[j]>='a') and (curr[j]<='я')) or ((curr[j]>='А') and (curr[j]<='Я')) or ((curr[j]>='a') and (curr[j]<='z')) or ((curr[j]>='A') and (curr[j]<='Z')) then flag:=0; end; if flag=1 then snew+=curr else snew+=currsave; writeln(snew); end.
Пример ввода: Который из всех котов кот съел мясо Пример вывода: Который из всех котов съел мясо
{Автор: Рудницкий В. Л. Ограничения: Последовательность не может быть длинее NN. Откуда: Олимпиада, KZ, 2016.} const NN = 10000; var a : array [1 .. NN] of integer; i, j, d, N: integer; begin write('Введите длину массива: '); readln(N); writeln('Введите массив чисел через пробел:'); for i := 1 to N do read( a[i] ); { Удаляем повторы чисел } for i := 1 to N-1 do for j := i+1 to N do if a[i] = a[j] then a[j] := 0; { Создаем последовательность заполняя не нужные числа нулями } for i := 2 to N do if ( a[i-1] > a[i] ) and ( a[i] <> 0 ) then a[i] := 0; { Суммируем не нулевые элементы } d := 0; for i := 1 to N do if a[i] <> 0 then d := d + 1; writeln('Максимальная длинна массива после удалений: ',d); end.
z, s: integer;
begin
write('Введите числа: ');
read(z, s);
if z < s
then writeln('Новые значения:', #10, 'z=', (z + s) / 2, ' s=', z * s * 2)
else if z > s
then writeln('Новые значения:', #10, 'z=', z * s * 2, ' s=', (z + s) / 2)
else writeln('Числа равны');
end.