
- •Методичні вказівки
- •5.05010301 – Розробка програмного забезпечення
- •2.1 Основні форми представлення алгоритмів:
- •2.2 Блок-схеми
- •2.3 Основні структури алгоритмів
- •Лінійний алгоритм
- •3. Постановка задачі
- •4. Варіанти
- •5. Методичні вказівки
- •3. Постановка задачі
- •4. Варіанти
- •5. Методичні вказівки
- •Цикли з відомим числом повторень
- •Цикли з невідомим числом повторень
- •Вкладені цикли
- •3. Постановка задачі
- •4. Варіанти
- •5. Методичні вказівки
- •5. Методичні вказівки
- •Приклад
- •5. Методичні вказівки
- •2. Введення даних організувати з клавіатури.
- •3. Висновок результатів для завдання організувати на монітор.
- •Практична робота № 6
- •3. Постановка завдання
- •4. Варіанти
- •5. Методичні вказівки
- •2. Введення даних для завдань а і б організувати з клавіатури.
- •4. Висновок результатів для завдання а організувати у вигляді:
- •7. Контрольні питання
- •Практична робота № 7
- •3. Постановка завдання.
- •5. Методичні вказівки
- •2.3 Цикл типу do — while
- •2.4 Керуючі оператори в циклах
- •3. Постановка завдання.
- •5. Методичні вказівки
- •7. Контрольні питання
- •2.5 Області дії змінних
- •Приклад
- •3. Постановка завдання
- •4. Варіанти
- •5. Методичні вказівки
- •7. Контрольні запитання
- •2.5. Поиск в отсортированном массиве
- •3. Постановка завдання
- •5. Методичні вказівки
- •7. Контрольні питання
- •3. Постановка завдання
- •4. Варіанти завдань
- •5. Методичні вказівки
- •5. Методичні вказівки
- •7. Контрольні питання
- •Практична робота № 13
- •1. Мета роботи:
- •2. Теоретичні відомості
- •3. Постановка завдання
- •1. Використовуючи функції сформувати за допомогою дсч одновимірний масив і вивести його на друк.
- •2. Виконати обробку одновимірного масиву у відповідності з варіантом, використовуючи функції, результат вивести на друк.
- •4. Варіанти
- •5. Методичні вказівки
- •7. Контрольні питання
- •2.3 Швидке сортування
- •Алгоритм
- •Швидкість
- •2.4 Модифіковані методи сортування
- •2.4.1 Метод Шелла
- •2.4.2 Швидке сортування
- •3. Постановна задачі
- •4. Варіанти
- •5. Методичні вказівки
- •Приклад
- •3. Постановка завдання
- •1. Ввести з клавіатури рядок символів і обробити її у відповідності зі своїм варіантом, використовуючи функції.
- •4. Варіанти
- •5. Методичні вказівки
- •7. Контрольні питання
- •5. Методичні вказівки
- •7. Контрольні питання
- •Практична робота № 17
- •1. Мета роботи:
- •2. Теоретичні відомості
- •2.5. Численные методы решения уравнений
- •2.5.1. Метод итераций
- •2.5.2. Метод Ньютона
- •2.5.3. Метод половинного деления
- •3. Постановка завдання
- •1. Написати функцію з замовчує параметрами відповідно до варіанта, продемонструвати різні способи виклику функції: • з параметрами заданими явно, • з опущеними параметрами
- •4. Варіанти
- •5. Методичні вказівки
- •3. Постановка задачі
- •На цьому дереві можна визначити три методи упорядкування:
- •5. Методичні вказівки
- •7. Контрольні питання
- •Практична робота № 20
- •1. Мета роботи:
- •2. Короткі теоретичні відомості
- •3. Постановка завдання
- •4. Варіанти
- •5. Методичні вказівки
- •7. Контрольні питання
2. Введення даних для завдань а і б організувати з клавіатури.
3. При обчисленні виразів підключити бібліотеку <math.h> для обчислення функцій (наприклад, pow (x, y) для обчислення xy).
4. Висновок результатів для завдання а організувати у вигляді:
1. При виконанні завдання Б використовувати змінну логічного типу, а не умовний оператор.
2. При виконанні завдання В використовувати допоміжні змінні для зберігання проміжних значень. наприклад:
c = pow (a, 3); d = 3 * pow (a, 2) * b; e = 3 * a * pow (b, 2); f = pow (b, 3);
6. Зміст звіту
1) Постановка завдання (загальна і конкретного варіанту).
2) Формули, використовувані при рішенні задачі (математична модель).
3) Програми для розв'язання задач на мові C + +.
4) Опис використовуваних в програмі стандартних функцій.
5) Система тестів для перевірки правильності роботи програми і результати виконання тестів.
6) Пояснення результатів роботи програми.
7. Контрольні питання
1. Пояснити зміст поняття оператор.
2. Що розуміється під типом даних?
3. Яка інформація повідомляється компілятору при оголошенні констант?
4. Перерахувати типи даних.
5. Яким чином розрізняються змінні за часом життя?
6. Дати означення виразу.
7. Привести приклади операцій з однаковим пріоритетом.
8. Вказати операції з найвищим та найнижчим пріоритетом.
9. Назвати тип даних, який забезпечує найбільший діапазон представлення чисел.
10. Вказати, як впливає тип операндів арифметичної операції на тип результату цієї операції.
Практична робота № 7
Тема: Створення розгалужених програм
1. Мета завдання:
1) Отримання практичних навичок використання операторів вибору.
2) Отримання практичних навичок вибору і використання операторів циклів.
2. Теоретичні відомості
Оператори управління роботою програми називають керуючими конструкціями програми. До них відносять:
• складові оператори;
• оператори вибору;
• оператори циклів;
• оператори переходу.
2.1. складові оператори
До складових операторам відносять власне складові оператори та блоки. В обох випадках це послідовність операторів, укладена в фігурні дужки. Блок відрізняється від складового оператора наявністю визначень в тілі блоку.
{
n++; // це складений оператор
summa+=n;
}
{
int n=0;
n++; //це блок
summa+=n;
}
2.2. оператори вибору
Оператори вибору - це умовний оператор і перемикач.
Умовний оператор має повну і скорочену форму.
if (вираз-умова) оператор; / / скорочена форма
У якості вираження-умови можуть використовуватися арифметичний вираз, відношення і логічне вираження. Якщо значення виразу-умови відмінно від нуля (тобто істинно), то виконується оператор.
if (x<y&&x<z)min=x;
if (выражение-условие) оператор1; //повна форма
else оператор2;
Якщо значення виразу-умови відмінно від нуля, то виконується оператор1, при нульовому значенні виразу-умови виконується оператор2.
if (d>=0)
{
x1=(-b-sqrt(d))/(2*a);
x2=(-b+sqrt(d))/(2*a);
cout<< “\nx1=”<<x1<<“x2=”<<x2;
}
else cout<<“\nРешения нет”;
2. Перемикач визначає множинний вибір.
switch (выражение)
{
case константа1 : оператор1 ;
case константа2 : оператор2 ;
. . . . . . . . . . .
[default: операторы;]
}
При виконанні оператора switch, обчислюється вираз, записане після switch, воно має бути цілочисловим. Отримане значення послідовно порівнюється з константами, які записані слідом за case. При першому ж співпаданні виконуються оператори, помічені даної міткою. Якщо виконані оператори не містять оператора переходу, то далі виконуються оператори всіх наступних варіантів, поки не з'явиться оператор переходу або не закінчиться перемикач. Якщо значення виразу, записаного після switch, не співпало з жодною константою, то виконуються оператори, які слідують за міткою default. Мітка default може бути відсутнім.
#include <iostream.h>
void main()
{
int i;
cout<<"\nEnter the number";
cin>>i;
switch(i)
{
case 1:cout<<"\nthe number is one";
case 2:cout<<"\n2*2="<<i*i;
case 3: cout<<"\n3*3="<<i*i;break;
case 4: cout<<"\n"<<i<<" is very beautiful!";
default:cout<<"\nThe end of work";
}
}
Результати роботи програми:
При введенні 1 буде виведено:
The number is one
2 * 2 = 1
3 * 3 = 1
2. При введенні 2 буде виведено:
2 * 2 = 4 (добре)
3 * 3 = 4 (добре)
3. При введенні 3 буде виведене:
3 * 3 = 9
4. При введенні 4 буде виведено:
4 is very beautiful!
5. При введенні всіх інших чисел буде виведено:
The end of work
2.3. Оператори переходу
Оператори переходу виконують безумовну передачу управління.
• break - оператор переривання циклу.
{
оператор;
if (<вираженіе_условіе>) break;
оператор;
}
Т. е. оператор break доцільно використовувати, коли умову продовження ітерацій треба перевіряти в середині циклу.
/ / Знайти суму чисел, числа вводяться з клавіатури до тих пір, поки не буде / / введено 100 чисел або 0.
for (s = 0, i = 1; i <100; i + +)
{
cin >> x;
if (x == 0) break; / / якщо ввели 0, то підсумовування закінчується
s + = x;
}
• continue - перехід до наступної ітерації циклу. Він використовується, коли тіло циклу містить розгалуження.
/ / Знайти кількість і суму додатних чисел
for (k = 0, s = 0, x = 1; x! = 0 ;)
{
cin >> x;
if (x <= 0) continue;
k + +; s + = x;
}
• goto <мітка> - передає управління оператору, який містить мітку.
У тілі тієї ж функції повинна бути присутнім конструкція:
<Мітка>: оператор;
Мітка - це звичайний ідентифікатор, областю видимості якого є функція. Оператор goto передає управління оператору, який стоїть після мітки. Використання оператора goto виправдано, якщо необхідно виконати перехід з декількох вкладених циклів або перемикачів вниз по тексту програми або перейти в одне місце функції після виконання різних дій.
Застосування goto порушує принципи структурного і модульного програмування, за якими всі блоки, з яких складається програма, повинні мати тільки один вхід і тільки один вихід.
Не можна передавати управління всередину операторів if, switch і циклів. Не можна переходити всередину блоків, що містять ініціалізацію, на оператори, які стоять після ініціалізації.
• return - оператор повернення з функції. Він завжди завершує виконання функції і передає управління в точку її виклику. Вид оператора:
return [вираз];