Напечатать первые вхождения букв в текст, сохраняя их взаимный порядок - Free Pascal (4)

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

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


textual

Код к задаче: «Напечатать первые вхождения букв в текст, сохраняя их взаимный порядок - Free Pascal (4)»

var s:string;
    m:set of char; //само множество
    i:byte;
begin
writeln('Введите строку из строчных латинских букв');
readln(s); //ввод строки
m:=[]; //грубо говоря обнуляем множество
writeln('Первые вхождения букв');
for i:=1 to length(s) do //повтор цилка от одного до кол-ва букв в строке
if not(s[i] in m) then //если буквы нет в множестве то
 begin
  write(s[i]); //вывести её
  m:=m+[s[i]]; //и добавить в множество
 end;
end.
Эта работа вам не подошла?

Вы всегда можете заказать любую учебную работу у наших авторов от 20 руб.


СДЕЛАЙТЕ РЕПОСТ

8   голосов, оценка 3.875 из 5

Источник
Похожие ответы