Нужно сделать в паскале, пусть дан текст из 80 . напечатайте сначала все цифры, входящие в него, а затем все остальные , сохраняя при этом взаимное расположение в каждой из этих двух групп.
Для сред программирования DOS (например, Turbo Pascal) удалите фигурные скобки, для сред Windows (например, PascalABC.Net) строки в фигурных скобках удалите полностью. {uses Crt;} const n=80; digits=['0','1','2','3','4','5','6','7','8','9']; var s:string[80]; i:integer; begin {ClrScr;} Writeln('Введите текст (учитываются только 80 первых символов)'); Readln(s); for i:=1 to n do if s[i] in digits then Write(s[i]); Writeln; for i:=1 to n do if not(s[i] in digits) then Write(s[i]); Writeln; {ReadKey} end.
Тестовое решение: Введите текст (учитываются только 80 первых символов) Обь с притоком Иртыш 5410км, Амур с Аргунью 4440км, Лена 4400км, Енисей 4102км 5410444044004102 Обь с притоком Иртыш км, Амур с Аргунью км, Лена км, Енисей км
{uses Crt;}
const
n=80;
digits=['0','1','2','3','4','5','6','7','8','9'];
var
s:string[80];
i:integer;
begin
{ClrScr;}
Writeln('Введите текст (учитываются только 80 первых символов)');
Readln(s);
for i:=1 to n do
if s[i] in digits then Write(s[i]);
Writeln;
for i:=1 to n do
if not(s[i] in digits) then Write(s[i]);
Writeln;
{ReadKey}
end.
Тестовое решение:
Введите текст (учитываются только 80 первых символов)
Обь с притоком Иртыш 5410км, Амур с Аргунью 4440км, Лена 4400км, Енисей 4102км
5410444044004102
Обь с притоком Иртыш км, Амур с Аргунью км, Лена км, Енисей км