Помощь - Поиск - Пользователи - Календарь
Полная версия: Множества. Получить все простые числа
Форум «Всё о Паскале» > 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
Спасибо огромное. Я была на верном пути.
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.