Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабораторні роботи по програмуванні(14 лаб).doc
Скачиваний:
77
Добавлен:
16.05.2015
Размер:
1.43 Mб
Скачать

Приклад виконання завдання 3.

Варіант 2. Розробити метод (функцію) визначення члена кратного 7 і метод, що використовує цю функцію для визначення кількості і суми елементів даного одномірного динамічного масиву, кратних 7.

Дана програма буде складатися з одного класу, що містить конструктор – для виділення пам’яті під масив, деструктора – для звільнення пам'яті, функцію вводу даних, функцію для знаходження елементів кратних 7 і функцію для виводу результатів на екран.

Клас буде мати наступну структуру:

class CKratn_7{

float *masiv;

int kol;

int i,j;

int k,s;

public:

CKratn_7();

~CKratn_7();

void Vvod();

void Kratn_7();

void Print();

};

Лістинг програми:

#include<stdio.h>

#include<iostream.h>

#include<conio.h>

#include<malloc.h>

#include<math.h>

class CKratn_7{

float *masiv;

int kol;

int i,j;

int k,s;

public:

CKratn_7();

~CKratn_7();

void Vvod();

void Kratn_7();

void Print();

};

CKratn_7::CKratn_7()

{

cout<<"vvedite kilkist elementov masiva\nk= ";

cin>>k;

masiv=new float[k];

}

CKratn_7::~CKratn_7()

{

free(masiv);

}

void CKratn_7::Vvod()

{

cout <<"vvedite element masiva\n";

for(i=0;i<k;i++)

{

cout<<"a["<<i<<"]=";

cin >>masiv[i];

}

}

void CKratn_7::Kratn_7()

{

j=0;

for(i=0;i<k;i++)

if(fmod(masiv[i],7)==0)

{

masiv[j]=masiv[i];

j++;

}

}

void CKratn_7::Print()

{

s=0;

cout<<"\nelement kratny 7\n";

for(i=0;i<j;i++)

{

s=s+masiv[i];

cout<<"\na["<<i<<"]="<<masiv[i];

}

cout<<"\n\nsuma="<<s;

cout<<"\nkolichestvo elementov kratnih 7="<<j;

}

void main()

{

clrscr();

CKratn_7 obj;

obj.Vvod();

obj.Kratn_7();

obj.Print();

getch();

}

Тестування:

Для перевірки правильності роботи програми введемо в неї дані при введені, яких результат заздалегідь відомий.

Наприклад сформуємо масив з 8 елементів такого виду:

21 -63 1 5 15 7 49 40

З введених даних наочно видно, що кратними 7 є 1,2,6 і 7 елемент.

Сума їх =14. Кількість 4.

Тепер введемо ці ж дані в програму і перевіримо результат.

vvedite kilkist elementov masiva

k= 8

vvedite element masiva

a[0]=21

a[1]=-63

a[2]=1

a[3]=5

a[4]=15

a[5]=7

a[6]=49

a[7]=40

element kratny 7

a[0]=21

a[1]=-63

a[2]=7

a[3]=49

suma=14

kolichestvo elementov kratnih 7= 4

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

    1. Що таке клас?

    2. Формат типу CLASS.

    3. Для чого використовують інкапсуляцію?

    4. Специфікатори доступу.

    5. Як описуються функції-члени класу?

    6. Що таке екземпляр класу?

    7. Що відносять до даних-членів класу?

    8. Як здійснюється ініціалізація даних-членів класу?

    9. Які специфікатори доступу використовують для даних-членів класу?

    10. Що таке об’єкт класу?

    11. Наведіть приклад об’єкту класу.

    12. Вкажіть способи опису класів.

    13. Що таке закриті члени класу?

    14. Що таке відкриті члени класу?

    15. Як організувати доступ до закритих членів класу?

    16. Як задати початкові значення даним-членам класу (всі способи)?

    17. Скільки об'єктів класу може бути використано в програмі, яка застосовує клас?

Лабораторна робота №4

Тема: Розробка програм з використанням класів з конструктором і деструктором.

Мета: Набуття навиків в проектуванні найпростіших класів, розробка найпростіших програм їх використання.