• Добро пожаловать на компьютерный форум Tehnari.ru. Здесь разбираемся с проблемами ПК и ноутбуков: Windows, драйверы, «железо», сборка и апгрейд, софт и безопасность. Форум работает много лет, сейчас он переехал на новый движок, но старые темы и аккаунты мы постарались сохранить максимально аккуратно.

    Форум не связан с магазинами и сервисами – мы ничего не продаём и не даём «рекламу под видом совета». Отвечают обычные участники и модераторы, которые следят за порядком и качеством подсказок.

    Если вы у нас впервые, загляните на страницу о проекте, чтобы узнать больше. Чтобы создавать темы и писать сообщения, сначала зарегистрируйтесь, а затем войдите под своим логином.

    Не знаете, с чего начать? Создайте тему с описанием проблемы – подскажем и при необходимости перенесём её в подходящий раздел.
    Задать вопрос Новые сообщения Как правильно спросить
    Если пришли по ссылке со старого Tehnari.ru – вы на нужном месте, просто продолжайте обсуждение.

Множества. Помогите доделать программу

  • Автор темы Автор темы tix0n
  • Дата начала Дата начала

tix0n

Ученик
Регистрация
29 Июн 2012
Сообщения
3
Реакции
0
Баллы
0
Множества. Помогите доделать программу

Дана строка. В алфавитном порядке напечатать(по разу) все малые латинские буквы, входящие в эту строку ровно один раз.
помогите доделать
Код:
Program jghfh;
uses crt;
type x='a'..'z';
var mn1,mn2:set of x;
s: string;
c:char;
i:integer;
begin
clrscr;
writeln();
readln(s);
if s[length(s)]<>'.' then s:=s+'.';
i:=1;mn1:=[];mn2:=[];
while s[i] <> '.' do
begin
If s[i] in mn1 then mn2:=mn2+[s[i]];
mn2:= mn2 +[s[i] ];
i:=i+1;
end;
for c:='a' to 'z' do
if c in mn2 then   write(c);
readln;
end
 
помогите доделать
Попробую. Мне кажется, у Вас много лишнего накручено. Предлагаю такой вариант:
Код:
uses crt;
const
 mn0=['a'..'z'];
var
 mn1:set of char;
 s: string;
 c:char;
 i:integer;
begin
 clrscr;
 writeln('Enter the string:');
 readln(s);
 mn1:=[];
 for i:=1 to length(s) do
  if (s[i] in mn0) and Not(s[i] in mn1) then mn1:=mn1+[s[i]];
 for c:='a' to 'z' do
  if c in mn1 then write(c,' ');
 readln;
end.
 
Назад
Сверху