Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум «Всё о Паскале» _ Задачи _ Множества. Получить все простые числа

Автор: ladybird 6.05.2009 16:58

Помогите пожалуйста дописать программу и проверьте написанное. Условие такое:
Даны целые числа от 8 до 22. Получить все простые числа из этого диапазона и все остальные.
Насчет всех простых программа работает правильно, а вот куда добавить разницу множеств, чтобы она считала"все остальные?"


Прикрепленные файлы
Прикрепленный файл  LAB7.PAS ( 580 байт ) Кол-во скачиваний: 232

Автор: Ozzя 6.05.2009 17:11

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 6.05.2009 17:23

Спасибо огромное. Я была на верном пути.