Помощь - Поиск - Пользователи - Календарь
Полная версия: Множества. Получить все простые числа
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
ladybird
Помогите пожалуйста дописать программу и проверьте написанное. Условие такое:
Даны целые числа от 8 до 22. Получить все простые числа из этого диапазона и все остальные.
Насчет всех простых программа работает правильно, а вот куда добавить разницу множеств, чтобы она считала"все остальные?"
Ozzя
program lab7;
uses crt;
const
mn=22;
type
setN=set of 1..mn;
var
startSet,simpleSet:setN;
n1,next,i:word;
begin
clrscr;
startSet:=[2..mn];
simpleSet:=[1];
next:=2;
while startSet <> [ ] do
begin
n1:=next;
while n1<=mn do
begin
exclude(startSet,n1);
n1:=n1+next;
end;
include(simpleSet,next);
repeat
next:=next+1;
until(next in startSet) or (next>mn)
end;
for i:=8 to mn do
if i in simpleSet
then
write(i:8);
writeln;
startSet:=[8..mn];

for i:=8 to mn do
if i in simpleset then
begin
exclude(startset,i);
end;
for i:=8 to mn do
if i in startset then
begin
write(i:8);
end;

writeln;
readln;
end.
ladybird
Спасибо огромное. Я была на верном пути.
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.