Напечатайте заданный текст из 100 литер, удалив из него повторные вхождения каждой литеры - Pascal ABC

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

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

Мы ведь "ОДНА БОЛЬШАЯ СЕМЬЯ", помогите сделать!!! Напечатайте заданный текст из 100 литер, удалив из него повторные вхождения каждой литеры. Заранее, спасибо!!!

Решение задачи: «Напечатайте заданный текст из 100 литер, удалив из него повторные вхождения каждой литеры»

textual
Листинг программы
Var
  ss : set of Char;
  St : String;
  n  : Integer;
 
Begin
  ss:=[]; n:=1;
  Readln(St);
  While n<=Length(St) do 
  Begin
    If not (St[n] in ss) then
    Begin
      Include(ss,St[n]);
      Write(St[n]);
    End;
    Inc(n);
  End;
  Writeln;  
End.

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

  1. В начале объявляются переменные: ss - множество символов, St - строка, n - целое число.
  2. Переменная ss инициализируется пустым множеством, а переменная n принимает значение 1.
  3. Считывается строка St с помощью функции Readln.
  4. Запускается цикл While, который будет выполняться до тех пор, пока n меньше или равно длине строки St.
  5. В цикле проверяется, содержится ли текущий символ из строки St в множество ss. Если нет, то он добавляется в множество ss с помощью функции Include.
  6. Если текущий символ не содержится в ss, то он выводится на экран с помощью функции Write.
  7. После завершения внутреннего цикла значение переменной n увеличивается на 1 с помощью функции Inc.
  8. По завершении внешнего цикла выводится символ новой строки с помощью функции Writeln.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

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

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