Ім'я файлу: ПР20 нова.doc
Розширення: doc
Розмір: 1263кб.
Дата: 13.10.2020
скачати
Пов'язані файли:
МКР №2.docx


Практичне заняття № 20
Тема: Робота з множинами

Мета: Набути практичних навичок використання множинного типу даних для створення програм.

Теоретичні відомості

Структурований тип - множина
  Множина - надається кінцевими наборами елементів, що містяться у квадратних дужках та перелічені через кому. Елементи множини невпорядковані   (невпорядкований набір різних елементів одного з базових типів).
    Приклад:
      [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), як і інші порівняння, можуть використовуватись в умовних операторах і операторах циклу.

Постановка задачі

Використовуючи тип множина, надрукувати в порядку спадання всі цілі числа в діапазоні 1÷4900, які можна представити у вигляді n2+2k2, але не можна представити у вигляді 7ij+j+3 (n,k,i,j>0).

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

program Prg8;
{ http://nataliya.kiev.ua }
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







Після виконання роботи студенти повинні вміти опрацьовувати множинний тип даних на ПК.

ЗМІСТ ЗВІТУ:

Номер практичної роботи .

Назва практичної роботи .

1.Мета роботи .

2.Постановка задачі .

3.Алгоритм розв'язку задачі .

4.Блок-схема алгоритму .

5.Система тестів .

6.Текст програми .

7.Результат виконання програми .

8.Висновки .

Контрольні запитання

  1. Що таке множина? ____________________________________________________________________________________________________________________________________________________

  2. Як оголошується новий тип множини? __________________________________________________________________________

  3. Як використовується оголошений тип множини? __________________________________________________________________________

  4. Як позначається порожня множина? __________________________________________________________________________

  5. Як визначається потужність мноджини? __________________________________________________________________________

В результаті виконання практичної роботи студенти повинні вміти оголошувати множини в програмі, створювати програми з множинами та виводити їх на друк.
ЗМІСТ ЗВІТУ

  • відповіді на питання самостійного вивчення;

  • постановка задачі для конкретного варіанту;

  • текст програми;

  • результати обчислень;

  • відповіді на контрольні питання;

  • висновок.


В результаті виконання практичної роботи студенти повинні вміти створювати програми з використання комбінованих типів даних – записів.
СПИСОК РЕКОМЕНДОВАНИХ ДЖЕРЕЛ


  1. А.Б. Ставровський, Турбо Паскаль 7.0. Учебник. – К.: Изд. группа BHV, 2000. – 400с.

  2. Глинський Я.М., Анохін В.Є., Ряжська В.А. Паскаль. Turbo Pascal&DELPHI. – Львів, 2008. – 192с., іл..

  3. Фаронов В.В. Турбо Паскаль 7.0. Начальный курс.Учебное пособие.-М.:"Нолидж", 1999.-616с.,ил.

  4. Електронна бібліотека СК ЛНАУ.

  5. Д жерела інтернет

















Практична робота № 20

Арк.


















Зм.

Арк.

докум.

Підпис

Дата



скачати

© Усі права захищені
написати до нас