// PascalABC.Net 3.0, сборка 1066 var s,s1:string; i:integer; a:char; begin Write('Введите натуральное число любой длины :'); Readln(s); Write('Введите цифру, которую надо удалить: '); Readln(a); s1:=''; for i:=1 to Length(s) do if s[i]<>a then s1:=s1+s[i]; Writeln('Результат: ',s1) end.
Тестовый прогон: Введите натуральное число любой длины :3141592653589793 Введите цифру, которую надо удалить: 5 Результат: 3141926389793
2. Современное решение (так в школе почему-то не учат)
// PascalABC.Net 3.0, сборка 1066 begin var s:=ReadString('Введите натуральное число любой длины :'); var a:=ReadChar('Введите цифру, которую надо удалить: '); Write('Результат: ',s.Replace(a,'')); end.
Program Markovsp1; uses crt; const eps=0.001; var t,s:real; i:integer; begin writeln('*** alphaues is thinking... ***'); writeln('*** OK ***'); writeln(); writeln('Программа вычисляет частичную сумму ряда '); writeln(' S=1+1/(2^2)+1/(3^2)+1/(4^2)+... '); writeln('Вычисление прекратится, когда модуль очередного слагаемого станет меньше 0,001'); используется цикл repeat'); writeln(); s:=0; i:=1; repeat t:=1/((i)*(i)); s:=s+t; //writeln('i=',i,' T=',t:0:6,' S=',s:0:6); i:=i+1; until abs(t)<eps; writeln('s=',s:0:6,' (pi^2)/6=',(pi*pi)/6:0:6); writeln('Приближение к (pi^2)/6 равно ',s-(pi*pi)/6:0:6); end.
Program Markovsp2; uses crt; const eps=0.001; var t,s:real; i:integer; begin writeln('*** alphaues is thinking... ***'); writeln('*** OK ***'); writeln(); writeln('Программа вычисляет частичную сумму ряда '); writeln(' S=1+1/(2^2)+1/(3^2)+1/(4^2)+... '); writeln('Вычисление прекратится, когда модуль очередного слагаемого станет меньше 0,001'); используется цикл while'); writeln(); s:=0; i:=1; t:=1; while t>eps do begin t:=1/(i*i); s:=s+t; //writeln('i=',i,' T=',t:0:6,' S=',s:0:6); i:=i+1; end; writeln('s=',s:0:6,' (pi^2)/6=',(pi*pi)/6:0:6); writeln('Приближение к (pi^2)/6 равно ',s-(pi*pi)/6:0:6); end.
// PascalABC.Net 3.0, сборка 1066
var
s,s1:string;
i:integer;
a:char;
begin
Write('Введите натуральное число любой длины :'); Readln(s);
Write('Введите цифру, которую надо удалить: '); Readln(a);
s1:='';
for i:=1 to Length(s) do
if s[i]<>a then s1:=s1+s[i];
Writeln('Результат: ',s1)
end.
Тестовый прогон:
Введите натуральное число любой длины :3141592653589793
Введите цифру, которую надо удалить: 5
Результат: 3141926389793
2. Современное решение (так в школе почему-то не учат)
// PascalABC.Net 3.0, сборка 1066
begin
var s:=ReadString('Введите натуральное число любой длины :');
var a:=ReadChar('Введите цифру, которую надо удалить: ');
Write('Результат: ',s.Replace(a,''));
end.
Program Markovsp1;
uses crt;
const
eps=0.001;
var
t,s:real;
i:integer;
begin
writeln('*** alphaues is thinking... ***');
writeln('*** OK ***');
writeln();
writeln('Программа вычисляет частичную сумму ряда ');
writeln(' S=1+1/(2^2)+1/(3^2)+1/(4^2)+... ');
writeln('Вычисление прекратится, когда модуль очередного слагаемого станет меньше 0,001');
используется цикл repeat');
writeln();
s:=0;
i:=1;
repeat
t:=1/((i)*(i));
s:=s+t;
//writeln('i=',i,' T=',t:0:6,' S=',s:0:6);
i:=i+1;
until abs(t)<eps;
writeln('s=',s:0:6,' (pi^2)/6=',(pi*pi)/6:0:6);
writeln('Приближение к (pi^2)/6 равно ',s-(pi*pi)/6:0:6);
end.
Program Markovsp2;
uses crt;
const
eps=0.001;
var
t,s:real;
i:integer;
begin
writeln('*** alphaues is thinking... ***');
writeln('*** OK ***');
writeln();
writeln('Программа вычисляет частичную сумму ряда ');
writeln(' S=1+1/(2^2)+1/(3^2)+1/(4^2)+... ');
writeln('Вычисление прекратится, когда модуль очередного слагаемого станет меньше 0,001');
используется цикл while');
writeln();
s:=0;
i:=1;
t:=1;
while t>eps do
begin
t:=1/(i*i);
s:=s+t;
//writeln('i=',i,' T=',t:0:6,' S=',s:0:6);
i:=i+1;
end;
writeln('s=',s:0:6,' (pi^2)/6=',(pi*pi)/6:0:6);
writeln('Приближение к (pi^2)/6 равно ',s-(pi*pi)/6:0:6);
end.