Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 12.12.2007, 20:58   #1
stydent M
Новичок
Джуниор
 
Регистрация: 11.12.2007
Сообщений: 1
По умолчанию Множества

помогите пожалуйста с задачей: дано натуральное число N (типа LongInt). Составить программу вывода цифр, НЕ входящих в десятичную запись числа (в порядке возрастания). Использовать множество.
stydent M вне форума Ответить с цитированием
Старый 13.12.2007, 04:27   #2
Abbatik
Форумчанин
 
Аватар для Abbatik
 
Регистрация: 11.11.2007
Сообщений: 136
По умолчанию

Код:
str(n,s);{переводишь число  N в строку S}
for i:=1 to length(s) do begin
val(s[i],d,erc);
set_s:=set_s+[d]; {посимвольно образуешь множество set_s}
end;
for i:=0 to do 9 do begin
if (i in set_s)=false then writeln(i);{проверяешь нет ли в множестве set_s цифры i}
end;
ICQ - 446037211
Abbatik вне форума Ответить с цитированием
Старый 13.12.2007, 09:54   #3
puporev
Старожил
 
Регистрация: 13.10.2007
Сообщений: 2,740
По умолчанию

Код от Abbatic конечно красивый, только работать он не будет.
Вот правильное решение:
Код:
program mnog2;
uses crt;
type
chislo = set of 0..9;
var g1,g2,g3:chislo;
b:array[1..20] of integer;
N:longint;
a,k,i,j,x:integer;
begin
clrscr;
writeln('vvedite chislo ot 1 do 2 147 483 647:');
write('N=');readln(N);
a:=0;
while N>0 do           //разбиваем число на цифры
     begin
        k:=N mod 10;     
        a:=a+1;
        b[a]:=k;       //создаем из них массив
        N:=N div 10;
     end;
g1:=[0..9];
g2:=[];
for i:=1 to a do
include(g2,b[i]);      //создаем множество из цифр числа
g3:=g1-g2;             //опреднляем, каких нет
for i:=0 to 9 do
if i in g3 then        
write(i,' ');readln;
end.
puporev вне форума Ответить с цитированием
Старый 13.12.2007, 22:00   #4
Abbatik
Форумчанин
 
Аватар для Abbatik
 
Регистрация: 11.11.2007
Сообщений: 136
По умолчанию

Цитата:
Сообщение от puporev Посмотреть сообщение
Код от Abbatic конечно красивый, только работать он не будет.
совсем про include забыл!
онлайн писал!
ICQ - 446037211
Abbatik вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Множества Zid@ne Помощь студентам 16 20.01.2008 10:19
Множества в Си Иллидан Общие вопросы C/C++ 14 17.01.2008 15:58
множества xxxPascalxxx Помощь студентам 1 27.12.2007 21:54
Задание на множества Mastak Паскаль, Turbo Pascal, PascalABC.NET 2 14.12.2007 13:45
Задача на множества Mastak Паскаль, Turbo Pascal, PascalABC.NET 2 11.12.2007 18:04