- •Лабораторна робота №1
- •Теоретичні відомості
- •Завдання для виконання
- •Int main()
- •Int main()
- •Лабораторна робота №2
- •Теоретичні відомості
- •Void main()
- •Int k,m; //опис змінних
- •Void main()
- •Int k,m; //опис змінних
- •Void main()
- •Int k,m; //опис змінних
- •Void main()
- •Int k,m; //опис змінних
- •Void main()
- •Завдання для виконання
- •Лабораторна робота №3
- •Теоретичні відомості
- •Приклади виконання завдання
- •Void main()
- •Void main()
- •Int main()
- •Завдання для виконання
- •Лабораторна робота №4
- •Теоретичні відомості
- •Приклади виконання завдання
- •Void main ( )
- •Void main ( )
- •Завдання для виконання
- •Лабораторна робота №5
- •Теоретичні відомості
- •Void main()
- •Void main()
- •Приклади виконання завдання
- •Void main ( )
- •Void main ( )
- •Завдання для виконання
- •Лабораторна робота №6
- •Теоретичні відомості
- •Приклади виконання завдання
- •Void main ( )
- •Void main ( )
- •Void main ( )
- •Завдання для виконання
- •Лабораторна робота №7
- •Теоретичні відомості
- •Void fact(int k);
- •Void fact(k);
- •Int *I; //Вказівник - змінна на дані типу int
- •Int k, *vk; //Опис змінної - вказівника *vk
- •Приклади виконання завдання лабораторної роботи
- •Int fact(int n)// Функція, що обчислює n!
- •Void dryk(int Cnm) /* Функція, що виводить на екран значення Cnm */
- •Void main ( )
- •Int Factorial(int n) /*Рекурсивна функція,що обчислює n! */
- •Void main()
- •Void Vs(double &V, double &s, double r)
- •Void main ( )
- •Void Vs(double *V, double *s, double r)
- •Void main ( )
- •Void main()
- •Завдання для виконання
- •Лабораторна робота №8
- •Теоретичні відомості
- •Приклади виконання завдання
- •Void main()
- •Void main()
- •Void main()
- •Завдання для виконання
- •Лабораторна робота №9
- •Теоретичні відомості
- •Приклади виконання завдання
- •Void main()
- •If (!feof(f1))
- •Void main()
- •Void main()
- •Void main()
- •Void main ()
- •Void main ()
- •Ifstream in( "vvid" );
- •In.Close();
- •Завдання для виконання
- •Лабораторна робота №10
- •Теоретичні відомості
- •Char st[40]
- •Char st3[100]
- •Char str4[100]
- •Приклади виконання завдання
- •Void main()
- •Void insert (char *str, int p, char c)
- •Void main()
- •Insert(s,n,c);
- •Void main()
- •Завдання для виконання
- •Лабораторна робота 11
- •Теоретичні відомості
- •If(!strcmp(ms[I].Ngr,"m21"))
- •Завдання для виконання
- •Приклади виконання завдання
- •Void main()
- •Лабораторна робота 12
- •Теоретичні відомості
- •Void show_complex() /*вивід комплекснеого числа на екран */
- •Void show_complex();
- •Void complex::show_complex()
- •Void main()
- •Приклади виконання завдання
- •Завдання для виконання
- •Лабораторна робота 13
- •Теоретичні відомості
- •Приклади виконання завдання
- •Void operator --();
- •Void operator --(int);
- •Void show_complex();
- •Завдання для виконання
- •Завдання для самостійного виконання
- •Додаток №2. Базові типи даних
- •Додаток №3. Основні специфікатори формату функції printf
- •Додаток №5. Основні математичні функції бібліотеки math.H
- •Додаток №6.
- •Додаток №7. Можливі специфікатори аргументу mode
- •Додаток №8. Основні функції для роботи із рядковими змінними бібліотеки string.H
- •Додаток №9. Основні функції для роботи із символами бібліотеки ctype.H
- •Література
- •Ткачук Валерій Михайлович
- •Лабораторний практикум
- •76000, М. Івано-Франківськ, вул. С. Бандери, 1
Лабораторна робота №5
Тема роботи: Прості цикли із відомим числом повторів
Мета роботи: Формування навиків в розробці простих циклічних програм із відомим числом повторень для реалізації типових алгоритмів обробки даних.
Для виконання роботи необхідно знати:
поняття циклічного обчислення, призначення та порядок його використання;
оператор циклу for: правила та особливості його використання;
організацію циклічних обчислень за допомогою логічного оператора;
оператор continue та break: призначення та способи використання;
оператор безумовного переходу;
базові алгоритми обробки даних з використанням циклічних обчислень.
Теоретичні відомості
Оператор циклу for забезпечує циклічне (повторне) виконання деякого простого або складеного оператора певне число разів. Синтаксис оператора for є наступним:
for(<ініціалізація>; <умова>; <вираз>)
<оператор>
де:
<ініціалізація> – змінна або вираз, що управляє виконанням циклу;
<умова> – перевірка умови досягнення кінця циклічних обчислень;
<вираз> – міняє значення лічильника циклу і може бути будь яким арифметичним виразом допустимого типу;
<оператор> – тіло циклу – будь який простий чи складений оператор.
У заголовку циклу for одна чи декілька компонент може бути відсутня, але при цьому обов’язково мусять бути збережені всі крапки з комою (;). В ініціалізації початкового значення може стояти або один вираз, а декілька, розділених комою. При перевірці умови на закінчення циклічного обчислення можна використати декілька умов, об’єднаних логічними операціями. <Вираз> також може містити не одну змінну, а декілька, розділені між собою за допомогою коми.
Алгоритм роботи оператора for є наступний:
виконується початкова ініціалізація;
перевіряється умова, і якщо вона false, то виконання циклу завершується, інакше управління передається пункту 3;
виконується тіло циклу - <оператор>;
обчислюється <вираз> та управління передається пункту 2.
For може мати і наступну форму запису (нескінчений цикл):
for ( ; ; ) < оператор >
Для виходу із такого нескінченого циклу обов’язковим є перевірка в тілі циклу виконання певної умови та завершення циклічного обчислення за допомогою break. Він виконує негайний вихід із циклу та передачу управління наступному оператору. Наприклад:
/* Вивід парних чисел на проміжку від 0 до 100 */
#include <stdio.h>
Void main()
{
int i=0;
for(;;)
{
i++;
if (i%2 == 1)
continue;
else
printf("\n %ld", i );
/* Перевірка умови завершення циклічного обчислення */
if (i == 100) break;
}
printf("\n");
}
Для передачі управління (виконання циклу) на наступну ітерацію в межах циклічного обчислення служить оператор continue. Він перериває виконання даної ітерації циклічного обчислення та передає управління наступній ітерації. Наприклад:
/* Вивід парних чисел на проміжку від 0 до 100 */
#include <stdio.h>
Void main()
{
int i;
for(i=1;i<=100;i++)
if (i%2 == 1)
continue;
else
printf("\n %ld", i );
printf("\n");
}
Для безумовної передачі управління використовується оператор переходу goto :
goto < мітка>
Керування передається оператору з даною міткою <мітка>: оператор, а сама мітка в програмі не декларується. В якості мітки може виступати будь-який звичайний ідентифікатор. Область дії мітки обмежується функцією, в якій вона визначена, тому неможливо передати управління у іншу функцію.
