Вывести все цифры строки на экран без повторений - Turbo Pascal

Узнай цену своей работы

Формулировка задачи:

Написать программу, используя подпрограммы. Дана строка. Сколько цифр входит в строку? Вывести все цифры на экран без повторений.

Решение задачи: «Вывести все цифры строки на экран без повторений»

textual
Листинг программы
var
  s: String;
  m: set of '0'..'9';
  i, k: Integer;
  c: Char;
begin
  Write('Строка: '); ReadLn(s); {k:=0;}
  for i:=1 to Length(s) do
    if s[i] in ['0'..'9'] then begin
      Include(m,s[i]); Inc(k);
    end;
  Write('Цифр: ',k);
  if k>0 then begin
    Write(': ');
    for c:='0' to '9' do if c in m then Write(' ',c);
  end; WriteLn;
end.

Объяснение кода листинга программы

  1. Строка введена пользователем. Сохраняется в переменной s.
  2. Создается множество символов от '0' до '9'. Сохраняется в переменной m.
  3. Создаются две переменные i и k типа Integer. Переменная i используется для итерации по символам строки, а переменная k используется для отслеживания количества цифр, которые уже были найдены.
  4. Итерация начинается с первого символа строки.
  5. Проверяется, является ли текущий символ цифрой. Если да, то он добавляется в множество m, увеличивается значение переменной k на единицу и цикл продолжается.
  6. После завершения итерации выводится количество найденных цифр.
  7. Если количество найденных цифр больше нуля, то выводится двоеточие и цикл повторяется для каждого символа из множества m, пока не будут найдены все цифры.
  8. По завершении выводится символ новой строки.

Оцени полезность:

5   голосов , оценка 3.8 из 5
Похожие ответы