[ главная ]   [ рейтинг статей ]   [ справочник радиолюбителя ]   [ новости мира ИТ ]



Ответов: 0
25-02-12 07:01







   Web - программирование
PHP


ASP






XML



CSS

SSI





   Программирование под ОС











   Web - технологии








   Базы Данных









   Графика






Данные




Программирование под ОС / Pascal - Delphi /

Структурированный тип - множество

Используя тип множество, напечатать в порядке уменьшения все целые числа в диапазоне 1?4900, которые можно представить в виде n2+2k2, но нельзя представить в виде 7ij+j+3 (n,k,i,j>0).

Текст программы

program Prg8;
uses crt;
type t=set of byte;
   ar=array[0..20]of t;
var p,q,v:byte;
   i,j,k,u,s,f:integer;
   a:ar;
begin
u:=4900;
v:=u div 255;
for i:=1 to v do
   a[i]:=[];
for i:=1 to u do begin
   j:=i; k:=i; p:=0; q:=0;
   while s<=u do
      begin
      s:=sqr(i)+2*sqr(j);
      q:=s div 255;
      p:=s mod 255;
      include(a[q],p);
      inc(j);
      end;
   while f<=u do
      begin
      f:=7*i*k+k+3;
      q:=f div 255;
      p:=f mod 255;
      a[q]:=a[q]-[p];
      inc(k);
      end;
   end;
clrscr;
for i:=u downto 1 do
   if i mod 255 in a[i div 255] then write(i,' ');
readkey;
end.

Результат работы программы

4609 4233 3873 3529 3201 2889 2593 2313 2049 1801 1569 1353 1153 969 801 649 513 393 289 201 129 73 33 9 3

Теория к программе

Структурированный тип - множество
  Множество - предоставляется конечными наборами элементов, которые помещаются в квадратных скобках и перечисленные через запятую. Элементы множества неупорядочены
  (неупорядоченный набор разных элементов одного из базовых типов)
    Пример:
      [5,3,9] ~ [3,5,9] ~ [9,3,5] и т.д.
      [] - пустое множество
  Тип множества - определяет все возможные значения, то есть мощность множества, для определенного перечислимого типа
    TYPE <идентификатор типа> = SET OF <тип компонента>;
      <тип компонента> - базовый тип, обязательно перечислимый, не может иметь более как 256 возможных значений. Порядковые номера верхней и нижней границ не могут выходить за диапазон 0..255. Поэтому из стандартных целочисленных типов базовым может быть только тип BYTE.
  Определение значения переменной типа множество выполняется через оператор предоставления:
    <переменная типа SET>:=<описание множества>;
    [] - пустое множество
    [<группа элементов через запятую>]
    [<выражения через запятую>]
  При определении переменной надо придерживаться правил:
    1) все элементы множества должны быть одного типа,
    2) тип пустого множества соединяется с любым другим типом множества,
    3) группа элементов X..Y определяет элементами множества все значения, которые принадлежат диапазону X..Y. Если X>Y - пустое множество
  Операции над множествами
    1) * - срез множеств АВ
    2) + - объединение множеств АВ
    3) - - разность множеств АВ
    4) Сравнение множеств - результат - BOOLEAN:
      = - полное совпадение
      <> - полное несовпадение
      >= - проверка на подмножество
      <= - проверка на подмножество
      IN - проверка на принадлежность элемента множеству
      <выражение или отдельный элемент> IN <множество>
    Все выражения сравнения (типа 4), как и другие сравнения, могут использоваться в условных операторах и операторах цикла.


Комментарии

 Ваш комментарий к данному материалу будет интересен нам и нашим читателям!



Последние статьи: Программирование под ОС / Pascal - Delphi /

Работа со шрифтами на Win API
06-06-2010   

Сегодня поговорим о шрифтах, и о том, каким образом работать с ними на Win API. Нам потребуется переменная типа HFONT. Изменить стиль шрифта можно у любого компонента, я покажу это на примере кнопки... подробнее

Кол. просмотров: общее - 3910 сегодня - 0

Работа с таймером на Win API
06-06-2010   

Таймер - вещь в хозяйстве очень полезная. Если некое действие нужно повторять с определенной периодичностью, то таймер, это как раз то, что нужно... подробнее

Кол. просмотров: общее - 3924 сегодня - 0

Работа с мультимедийным таймером на Win API
06-06-2010   

Мы уже знакомы с системным таймером, сегодня познакомимся с мультимедийным, основное отличие которого, более высокая скорость (точность) работы... подробнее

Кол. просмотров: общее - 4065 сегодня - 0

Создание CheckBoxов средствами Win API
06-06-2010   

Сегодня наша программа научится работать с CheckBoxами. CheckBox можно представить как флаг, который можно установить или сбросить, и в зависимости от его состояния выполнять определенные действия... подробнее

Кол. просмотров: общее - 4195 сегодня - 0

Создание группы RadioButton средствами Win API
06-06-2010   

В прошлый раз мы сделали несколько радио-кнопок, которые автоматически объединялись в одну группу. Сейчас рассмотрим, как создавать несколько независимых групп радио-кнопок... подробнее

Кол. просмотров: общее - 3964 сегодня - 0

Популярные статьи



  WWW.COMPROG.RU - 2009-2012 | Designed and Powered by Zaipov Renat | Projects