Основы программирования — Осенний семестр; Михалкович С.С.; 2008; VIII — различия между версиями

Материал из Вики ИТ мехмата ЮФУ
Перейти к: навигация, поиск
(Новая: Категория:Конспекты Категория:Основы программирования ==Множества== Описание множеств. Множеств...)
 
Строка 1: Строка 1:
[[Категория:Конспекты]]
 
 
[[Категория:Основы программирования]]
 
[[Категория:Основы программирования]]
 
==Множества==
 
==Множества==

Версия 18:10, 4 июня 2009

Множества

Описание множеств. Множества-константы. Пустое множество.

Операции над множествами:

s1+s2 - объединение
s1*s2 - пересечение
s1-s2 - разность
s += s1
s -= s1
s *= s1
s1<s2 - строгое вложение
s1<=s2 - нестрогое вложене
s1>s2 - строгое вложение
s1<=s2 - нестрогое вложене
i in s - принадлежность

Include(s,i);
Exclude(s,i); 

Вывод множеств.

Цикл foreach по множеству.

Пример использования множеств: решето Эратосфена. Алгоритм.

Лекция 25

Алгоритм Эратосфена

Код алгоритма Эратосфена

const n = 10000;
var primes: set of byte;
begin
   primes := [2..n];
   for var i:=2 to round(sqrt(n)) do
   begin
     if not (i in primes) then
       continue;
     var x := 2*i;
     while x<=n do
     begin
       Exclude(primes,x);
       x += i;
     end;
   end;
   for var i:=0 to n do
     if i in primes then
        write(i,' ');
end.