- •Лабораторна робота №1. Розгалужені оператори мови Borland Pascal
- •Теоретичні відомості
- •1. Структура програми на Pascal
- •2. Прості оператори
- •3. Оператори розгалуження
- •4. Процедури введення / виведення
- •Теоретичні відомості
- •Порядок виконання роботи:
- •Контрольні запитання:
- •Лабораторна робота №2. Циклічні оператори мови Borland Pascal
- •Лабораторна робота №3. Процедури та функції користувача мови Borland Pascal
- •Теоретичні відомості
- •Опис процедур
- •Лабораторна робота №4. Одновимірні масиви мови Borland Pascal
- •Теоретичні відомості
- •Лабораторна робота №5. Двовимірні масиви мови Borland Pascal
- •Теоретичні відомості Багатовимірні масиви
- •Оголошення багатовимірних масивів. Доступ до елементів
- •Базові операції обробки двовимірних масивів
- •Лабораторна робота №6 Записи. Множини в мові Borland Pascal
- •Теоретичні відомості
- •Порядок виконання роботи:
- •Контрольні запитання
- •Звіт повинен містити:
- •Завдання 1до лабораторної роботи №6
- •Завдання2 до лабораторної роботи №6
- •Лабораторна робота №7. Текстові та бінарні файли мови Borland Pascal
- •Теоретичні відомості
- •Операції над текстовими файлами
- •Завдання до лабораторної роботи №7
- •Лабораторна робота №8 Динамічні структури даних в мові Pascal
- •Теоретичні відомості
- •Теоретичні відомості
- •Базові типи даних
- •Потоки введення – виведення даних
- •Математичні функції
- •Порядок виконання роботи:
- •Теоретичні відомості
- •Вираз1, вираз2 або команда1, команда2
- •If (логічний вираз) команда1; else команда2;
- •If (логічний вираз) команда1;
- •Теоретичні відомості
- •Лабораторна робота №4. Циклічні оператори (while, do…while).
- •Теоретичні відомості
- •Цикл з передумовою while
- •While ( вираз )оператор;
- •Завдання 2.
- •Лабораторна робота №5. Циклічні оператори (for).
- •Теоретичні відомості
- •Теоретичні відомості
- •Лабораторна роботА №7. Одновимірні масиви
- •Теоретичні відомості
- •Теоретичні відомості
- •Порядок виконання роботи:
- •Контрольні запитання
- •Звіт повинен містити:
- •Завдання до лабораторної роботи №3
Лабораторна роботА №7. Одновимірні масиви
Мета: Засвоєння структури функцій на мові С++, набуття навичок при роботі з масивами, навчитися створювати функції для обробки масивів.
Обладнання: ПК, програмне забезпечення BorlandС, методичні вказівки та завдання до лабораторної роботи.
Теоретичні відомості
Масиви - це набір даних одного типу. Кожний елемент масиву має свій номер, який називають його індексом.
Синтаксис опису масиву:
<тип елементів> <ім'я масиву> [<кількість елементів>];
Наприклад, long а[20]; int с[ 10]; char str[ 16].
Щоб отримати доступ до елементів масиву, використовуються квадратні дужки. Нумерація елементів в масиві починається з нуля. Тоді, якщо масив має п елементів, то щоб звернутися до елементів масиву, слід вказувати індекси від 0 до п-1.
Нехай маємо масив:
#define N 10
int a[N];
Ввід масиву можна виконати, використовуючи таку конструкцію:
for (int і=0; і<N; і++) scanf("%d ", &а[i]); //cin>>a[i]
Вивід масиву можна виконати таким чином:
for (int і=0; і<N; і++) printf("%d ", &а[i]);//cout<<a[i]<<”\t”;
Зауваження!!! Потрібно слідкувати за тим, щоб не вийти не межі індексу. При записі даних за межі масиву може призвести до помилки.
При оголошенні масивів можна ініціювати його елементи. Це можна зробити за таким синтаксисом:
<тип елементів> <ім'я масиву> [розмір] = {<зн.ел. 1>,<зн.ел. 2>,...,<зн.ел.N>};
Наприклад, int а[5]={ 1,2,3,4,5};
Якщо опустити при ініціалізації розмір масиву, то компілятор автоматично обчислить розмір масиву за списком значень елементів. Тому можна записати int a[]={ 1,2,3,4,5};. Якщо ж розмір масиву більший за кількість ініційованих значень, то останні елементи не ініціюються. Значення тих елементів, які не були ініційовані, не встановлюються. Не можна в списку значень масиву задавати більше значень, ніж задано в розмірі. Так, помилку може викликати такий фрагмент: int а[5]={ 1,2,3,4,5,6};
Взаємозв'язок масивів і вказівників
В мові С++ записане ім'я масиву без квадратних дужок означає адресу першого елементу масиву в пам'яті. Наприклад, якщо описаний масив int а[5]={1,12,3,5,2}, то а ідентичне а[0]. Аналогічно звертатися до значення першого елемента можна двома способами: *а або а[0]. Щоб взяти адресу другого елемента, потрібно написати &а[1], або, враховуючи адресну арифметику, а+1. Відповідно, значення другого елементу можна двома способами: *(а+1) або а[1]. Відмітимо різницю * а+1 і *(а+1). Операція розкриття вказівника має вищий пріоритет, ніж операція додавання. Тому у випадку *а+1 спочатку обчислиться *а, а потім додасться до нього 1.
Передача масиву в функцію
Враховуючи адресну арифметику, можна передавати в функцію адресу першого елементу масиву та його розмірність для обробки масиву, та отримувати адрес першого елементу масиву з функції.
Наприклад, напишемо функцію для вводу масиву:
#include<соnіо.h>
#іnclude<іоstream.h>
#define n 5
void Vvid (int* x)
{ foг (int і=0;і<n;і++) сіn>>х[і]; }
int main ()
{ int a[n];
Vvid(а);
fог (int і=0;і<n;і++) соut<<а[і]<<"\t";
соut<<"\n";
getch(); }
Порядок виконання роботи:
Створити алгоритм (блок-схему) та програму для розв’язування завдання з вашого варіанту.
Відладити програму.
Запустити програму на виконання і перевірити правильність роботи програми.
Відповісти на контрольні запитання та оформити звіт.
Контрольні запитання
Що таке масив? Що задає ім’я і розмірність масиву?
Який вигляд має оператор визначення одновимірного масиву?
Коли необов’язково вказувати розмірність масиву?
Що таке динамічний масив? Як його описати? В чому полягає різниця між статичним та динамічним масивами?
Для масиву z[10], що означатимуть вирази: *z, *(z+5)?.
Звіт повинен містити:
Мету, обладнання лабораторної роботи.
Завдання згідно варіанту.
Текст програми.
Аналіз допущених під час роботи помилок.
Відповіді на контрольні запитання
Висновки.
Викладач Смерека А.Г.
Завдання до лабораторної роботи № 7
Варіант 1. В одновимірному масиві, що складається з n дійсних елементів, обчислити:
суму від’ємних елементів масиву;
добуток елементів масиву, що розташовані між максимальним та мінімальним елементами.
Варіант 2. В одновимірному масиві, що складається з n дійсних елементів, обчислити:
суму додатних елементів масиву;
добуток елементів масиву, що розташовані між максимальним по модулю та мінімальним по модулю елементами.
Варіант 3. В одновимірному масиві, що складається з n цілих елементів, обчислити:
добуток елементів масиву з парними номерами;
Суму елементів розташованих між першим і останнім нульовим елементами.
Варіант 4. В одновимірному масиві, що складається з n дійсних елементів, обчислити:
суму елементів масиву з непарними номерами;
суму елементів масиву, що розташовані між першим і останнім від’ємними елементами.
Варіант 5. В одновимірному масиві, що складається з n дійсних елементів, обчислити:
максимальний елемент масиву;
суму елементів масиву, що розташовані до останнього додатного елемента.
Варіант 6. В одновимірному масиві, що складається з n дійсних елементів, обчислити:
мінімальний елемент масиву;
суму елементів масиву, що розташовані між першим і останнім додатними елементами.
Варіант 7. В одновимірному масиві, що складається з n дійсних елементів, обчислити:
номер максимального елементу масиву;
добуток елементів масиву, що розташовані між першим і другим нульовим елементом.
Варіант 8. В одновимірному масиві, що складається з n дійсних елементів, обчислити:
номер мінімального елементу масиву;
суму елементів масиву, що розташовані між першим і другим від’ємними елементами.
Варіант 9. В одновимірному масиві, що складається з n дійсних елементів, обчислити:
максимальний по модулю елемент;
суму елементів масиву, що розташовані між першим і другим додатними елементами.
Варіант 10. В одновимірному масиві, що складається з n цілих елементів, обчислити:
мінімальний по модулю елемент масиву;
суму модулів елементів масиву, розташованих після першого елемента рівного нулю.
Варіант 11. В одновимірному масиві, що складається з n дійсних елементів, обчислити:
номер мінімального по модулю елемента масиву;
суму модулів елементів масиву, що розташовані після першого від’ємного елемента.
Варіант 12. В одновимірному масиві, що складається з n дійсних елементів, обчислити:
номер максимального по модулю елемента масиву;
суму модулів елементів масиву, що розташовані після першого додатного елемента.
Варіант 13. В одновимірному масиві, що складається з n дійсних елементів, обчислити:
кількість елементів масиву, що лежать в діапазоні від А до В;
суму модулів елементів масиву, що розташовані після максимального елемента.
Варіант 14. В одновимірному масиві, що складається з n дійсних елементів, обчислити:
кількість елементів масиву, що дорівнюють 0;
суму модулів елементів масиву, що розташовані після мінімального елементу.
Варіант 15. В одновимірному масиві, що складається з n дійсних елементів, обчислити:
кількість елементів більших С;
добуток елементів масиву, що розташовані після максимального по модулю елемента.
Варіант 16. В одновимірному масиві, що складається з n дійсних елементів, обчислити:
кількість від’ємних елементів;
суму модулів елементів масиву, що розташовані після мінімального по модулю елементу.
Варіант 17. В одновимірному масиві, що складається з n цілих елементів, обчислити:
кількість додатних елементів масиву;
суму елементів масиву, що розташовані після останнього елемента рівного нулю.
Варіант 18. В одновимірному масиві, що складається з n дійсних елементів, обчислити:
кількість елементів менших С;
суму цілих частин елементів масиву, розташованих після останнього від’ємного елемента.
Варіант 19. В одновимірному масиві, що складається з n дійсних елементів, обчислити:
добуток від’ємних елементів масиву;
Суму додатних елементів масиву, розташованих до максимального елементу.
Варіант 20. В одновимірному масиві, що складається з n дійсних елементів, обчислити:
добуток додатних елементів масиву;
суму модулів елементів масиву, що розташовані до мінімального елемента.
ЛАБОРАТОРНА РОБОТА №8. Багатовимірні масиви мови С++
Мета: Засвоїти структуру простої програми на мові С++, набуття навичок при роботі двовимірними масивами
Обладнання: ПК, програмне забезпечення ВоrlandС, методичні вказівки та завдання до лабораторної роботи.
