Перейти к содержимому


Манипуляции с множествами


В этой теме нет ответов

#1 petuhovskiy

    Пользователь

  • Пользователи
  • PipPip
  • 16 сообщений
  • ГородВитебск

Отправлено 25 декабря 2011 - 16:52

Множества используются для нахождения недостающих, общих, всех встречающихся элементов и для проверки вхождения элемента в множество.Операции над множествами:

1 . + - Объедение или нахождение всех встречающих элементов в множествах.
2 . * - Пересечение или нахождение общих элементов в множествах.
3 . - - Нахождение тех элементов которые находятся в первом множестве но не встречаются во втором.
4. 'элемент' in ['Множество'] - Проверяет принадлежность элемента к множеству.
Операции над цифрами двух чисел

Дано два числа. Определить (отсортированые по возврастанию!)
1. Общие цифры
2. Все использованные цифры
3. Цифры которые находятся в первом числе но их нет во втором.
4. Цифры которые находятся во втором числе но их нет в первом.
Ввод:
123
319
Вывод:
1 3
1 2 3 9
2
9

var a,b,i,d: longint;
  	mn1,mn2,mn : set of 0..9; //Заводим множества
begin
  readln(a); //Считываем первое число
  readln(B)/>; //Считываем второе число
  mn1:=[]; mn2:=[]; //Очищаем множества
  while a>0 do //Разбиваем число на цифры
  begin
	mn1:=mn1+[a mod 10]; //Добавляем новую цифру в множество
	a:=a div 10; //Удаляем цифру из числа
   end;
   while b>0 do //Разбиваем число на цифры
  begin
	mn2:=mn2+[b mod 10]; //Добавляем новую цифру в множество
	b:=b div 10; //Удаляем цифру из числа
   end;
   mn:=mn1*mn2; //Заполняем множество общих цифр
   for i:=0 to 9 do if i in mn then write(i,' '); //Выводим цифры
   mn:=mn1+mn2; //Заполняем множество использованных цифр
   for i:=0 to 9 do if i in mn then write(i,' '); //Выводим числа
   mn:=mn1-mn2; //Заполняем множество цифр которые присуствуют только в первом числе
   for i:=0 to 9 do if i in mn then write(i,' '); //Выводим числа
   mn:=mn2-mn1; //Заполняем множество цифр которые присуствуют только во втором числе.
   for i:=0 to 9 do if i in mn then write(i,' '); //Выводим числа
end.


Yo





Количество пользователей, читающих эту тему: 1

0 пользователей, 1 гостей, 0 анононимных