- •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. Методичні вказівки
- •Постановка задачі.
- •Література
2. Лабораторна робота 1. «Обчислення арифметичних виразів» (2 год.)
Мета роботи: Одержання навичок роботи з арифметичними типами даних і операціями, складання простих програм.
2.1. Теоретичні відомості
При обчисленні арифметичних виразів необхідно враховувати тип змінних-операндів, що беруть участь в операціях. Нижче дані правила дії над операндами різних типів.
2.2.1. Приведення типів
Якщо у виразу (праворуч від операції присвоювання) беруть участь операнди різних типів, то менш точний тип приводиться до більш точного. Наприклад,
int a1;
float c2=a1/99.;
при обчисленні c2 тип першого операнду a1 приводиться до float, тобто до типу другого операнду – дійсної константи 99.
В операціях присвоювання тип результату (правої частини) приводиться до типу лівого операнду. Наприклад, при виконанні фрагмента:
double a1=2.2, b1=3;
int mult=a1*b1;
змінна mult одержить значення 6, але точне значення повинне бути 6.6.
Результатом виконання операторів:
int m=4, n=5;
double div=m/n;
буде значення div=0, оскільки цілочисельне ділення цілих змінних m і n дасть 0. Щоб одержати правильне значення для змінної div у даному прикладі необхідно виконати явне приведення типів, що записується як вираз
(тип)
перед тієї змінної, котру потрібно явно привести до зазначеного типу. Тому для змінних m і n цілого типу правильним буде запис:
double div = (double)m/n;
Тоді змінна m, до якої застосована операція приведення, розглядається як дійсна величина типу double. Так що ділення здійснюється вже не з цілими, а з дійсними числами, і дає правильний результат: 0.75.
2.2. Постановка задачі
Обчислити значення виразу (див. розд. «Варіанти») при заданому a і різних b. Значення b змінювати при кожному запуску програми. Виконати обчислення при різних дійсних типах даних (float і double). У програмі для обчислення виразу використати проміжні змінні.
Спростити заданий вираз шляхом алгебраїчних перетворень і обчислити точне значення виразу.
Порівняти й пояснити результати, отримані згідно п.1 і п.2.
2.3. Варіанти
№ |
Завдання |
1 |
, при а=1000, b=10-4, 10-5, 10-6 |
2 |
, при а=1000, b=10-4, 10-5, 10-6 |
3 |
, при а=1000, b=10-3, 10-5, 10-7 |
4 |
, при а=1000, b=10-12, 10-14, 10-16 |
5 |
, при а=1000, b=10-3, 10-5, 10-7 |
6 |
, при а=1000, b=10-12, 10-14, 10-16 |
7 |
, при а=1000, b=10-12, 10-14, 10-16 |
8 |
, при а=1000, b=10-2, 10-3, 10-4 |
9 |
, при а=1000, b=10-5, 10-7, 10-9 |
10 |
, при а=1000, b=10-2, 10-3, 10-4 |
11 |
, при а=1000, b=10-5, 10-7, 10-9 |
12 |
, при а=1000, b=10-4, 10-5, 10-6 |
13 |
, при а=1000, b=10-4, 10-5, 10-6 |
14 |
, при а=1000, b=10-3, 10-5, 10-7 |
15 |
, при а=1000, b=10-12, 10-14, 10-16 |
16 |
, при а=1000, b=10-3, 10-5, 10-7 |
17 |
, при а=1000, b=10-12, 10-14, 10-16 |
18 |
, при а=1000, b=10-12, 10-14, 10-16 |
19 |
, при а=1000, b=10-2, 10-3, 10-4 |
20 |
, при а=1000, b=10-5, 10-7, 10-9 |
21 |
, при а=1000, b=10-2, 10-3, 10-4 |
22 |
, при а=1000, b=10-5, 10-7, 10-9 |
23 |
, при а=1000, b=10-3, 10-5, 10-7 |
24 |
, при а=1000, b=10-12, 10-14, 10-16 |
25 |
, при а=1000, b=10-3, 10-5, 10-7 |