- •1. Загальні відомості 7
- •1. Загальні відомості
- •1.1. Структура програми
- •1.2. Типи даних
- •2. Лабораторна робота 1. «Обчислення арифметичних виразів» (2 год.)
- •2.1. Теоретичні відомості
- •2.2.1. Приведення типів
- •2.2. Постановка задачі
- •2.3. Варіанти
- •2.4. Методичні вказівки
- •Постановка задачі.
- •3.1. Теоретичні відомості
- •3.1.1. Умовний оператор if-else
- •3.1.2. Оператор вибору switch
- •3.1.3. Оператори циклу
- •3.1.4. Приклад. Побудова геометричної фігури
- •3.2. Постановка задачі
- •3.3. Варіанти
- •3.4. Методичні вказівки
- •Постановка задачі.
- •4. Лабораторна робота 3. «Обчислення ряду. Форматне введення-виведення даних» (2 год.)
- •4.1. Теоретичні відомості
- •4.1.1. Поняття ряду. Ітераційний процес
- •4.1.2.Форматне виведення даних
- •4.1.3.Форматне введення
- •4.1.4. Приклад. Програма обчислення ряду
- •4.2. Постановка задачі
- •4.3. Варіанти
- •4.4. Методичні вказівки
- •Постановка задачі.
- •5. Лабораторна робота 4. «Функції. Ітераційні процеси» (4 год.)
- •5.1. Теоретичні відомості
- •5.1.1.Ступеневі ряди
- •5.2. Постановка задачі
- •5.3. Варіанти
- •5.4. Методичні вказівки
- •Постановка задачі.
- •6. Лабораторна робота 5. «Масиви й покажчики. Введення й виведення елементів» (2 год.)
- •6.1. Теоретичні відомості
- •6.1.1. Оголошення масиву
- •6.1.2. Масиви й покажчики
- •6.1.3. Записи «покажчик-зсув» і «покажчик-індекс»
- •6.1.4. Пошук найменшого й найбільшого елементів масиву
- •6.2. Постановка задачі
- •6.3. Варіанти
- •Постановка задачі.
- •7.1.2. Масив випадкових чисел
- •7.1.3. Видалення елемента із масиву
- •7.1.4. Вставка елемента в масив
- •7.1.5. Перестановка двох елементів
- •7.1.6. Циклічна перестановка елементів
- •7.2. Постановка задачі
- •7.3. Варіанти
- •Постановка задачі.
- •8.1.2. Передача масиву у функцію
- •8.1.3. Приклад. Функції введення й виведення елементів матриці
- •8.2. Постановка задачі
- •8.3. Варіанти
- •8.4. Методичні вказівки
- •Постановка задачі.
- •9. Лабораторна робота 8. «Сортування масивів» (4 год.)
- •9.1. Теоретичні відомості
- •9.1.1. Метод обміну (бульбашковий)
- •9.1.2. Метод прямого вибору
- •9.1.3. Метод вставок
- •9.1.4. Порівняння ефективності алгоритмів сортування
- •9.1.5. Генерація псевдовипадкових чисел
- •9.2. Постановка задачі
- •9.3. Методичні вказівки
- •Постановка задачі.
- •10. Лабораторна робота 9. «Рядки» (4 рік.)
- •10.1. Теоретичні відомості
- •10.1.1. Функції для роботи із символами
- •10.1.2. Строкові константи
- •10.1.3. Рядки як масиви
- •10.1.4. Передача рядка у функцію
- •10.1.4. Уведення/виведення символів і рядків
- •10.1.4. Функції обробки рядків
- •10.2. Постановка задачі
- •10.3. Варіанти
- •10.4. Методичні вказівки
- •Постановка задачі.
- •Література
Постановка задачі.
Варіант завдання.
Математична модель (формули, за якими обчислюються доданки ряду).
Код програми.
Скріншот вікна з результатами обчислень.
Порівняння й аналіз результатів, висновки.
6. Лабораторна робота 5. «Масиви й покажчики. Введення й виведення елементів» (2 год.)
Ціль роботи: Навчитися описувати, ініціалізувати масиви, уміти роздруковувати вміст масиву, виконувати прості операції над масивами. Одержати навички використання покажчиків для звертання до масиву і його елементів.
6.1. Теоретичні відомості
6.1.1. Оголошення масиву
Зі змінних будь-якого типу можна утворювати масиви. При оголошенні масиву вказується тип даних, ідентифікатор (ім'я) масиву й число елементів масиву у квадратних дужках:
double mas[10] ; // Масив з п'яти елементів типу double
Індекси елементів масиву починаються з 0, індекс останнього елемента на одиницю менше числа елементів у масиві. Усього в масиві mas 10 елементів:
|
|
|
|
|
|
|
|
|
|
0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
Масив можна ініціалізувати списком значень у фігурних дужках:
int b[4] = {1, 2, 3, 4};
Для звертання до елемента масиву вказується ідентифікатор масиву й індекс елемента в квадратних дужках, наприклад, b[2], mas[5].
6.1.2. Масиви й покажчики
Змінна, значенням якої є адреса іншої змінної, називається покажчиком. При оголошенні покажчика перед ідентифікатором записується знак *:
int a, *pa;
– оголошення цілої змінної а й покажчика ра на цілочисельну змінну. Щоб покажчик зв'язати з певною змінною, потрібно покажчику присвоїти адресу цієї змінної (адреса позначається значком амперсанду &):
pa = &a;
У С/С++ ім'я масиву є також покажчиком на масив, що посилається на перший елемент масиву (елемент із індексом 0):
pa
|
|
|
|
|
|
|
|
|
|
Таким чином, адресу першого елемента масиву можна одержати як pa або &a[0]. Значення першого елемента масиву повертається операцією розіменування:
int w = *pa;
– змінній w присвоїли значення змінної, розміщеної за адресою pa, тобто a[0].
6.1.3. Записи «покажчик-зсув» і «покажчик-індекс»
Покажчик масиву посилається на перший елемент. Зміщуючи покажчик, можна звернутися до наступних елементів масиву, наприклад,
W = *(pa+2);
– змінній w присвоюється значення 3-го елемента масиву (у цьому виразі 2 – це зсув покажчика). Наведений запис – це запис "покажчик-зсув". Дужки обов’язкові, оскільки пріоритет операції * вище, ніж пріоритет +. Адреса елемента a[2], тобто &a[2], може бути записана як pa+2.
Усі елементи масиву можна записати за допомогою покажчиків і зсувів, а запис "покажчик-зсув" можна застосовувати до імені масиву як до покажчика, наприклад.
w = *(a+1)
– змінній w присвоєне значення 2-го елемента a[1].
Покажчики можна проіндексувати точно так само, як і масив. Наприклад, вираз
pa[1]
посилається на елемент масиву a[1]. Даний вираз називається записом "покажчик-індекс".
Наведемо приклад виведення елементів масиву з використанням запису «покажчик-зсув»
#include <iostream.h>
int main(){
int v[3]={1,3,5};
int*p1=v;
for(int i=0;i<3;i++)
cout<<*(p1+i)<<"\t";
return 0;
}
Для виведення елементів із використанням запису «покажчик-індекс» в операції cout потрібно записати:
cout << p1[i] << "\t";