Задание нужно сделать в Паскале, помогите пожалуйста... Пусть дан текст из 80 литер....

0 голосов
43 просмотров

Задание нужно сделать в Паскале, помогите пожалуйста...

Пусть дан текст из 80 литер. Напечатайте сначала все цифры, входящие в него, а затем все остальные литеры, сохраняя при этом взаимное расположение литер в каждой из этих двух групп.


Информатика | 43 просмотров
Дан 1 ответ
0 голосов
Правильный ответ
Для сред программирования 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
Обь с притоком Иртыш км, Амур с Аргунью км, Лена км, Енисей км

(142k баллов)