Тема: Ітераційні алгоритми

Завдання

На лабораторні та самостійні роботи

з курсу "Програмування"

Для для груп БЧСП-1-08 та БЧСКС-1-08

 

Зміст

Завдання з курсу “Програмування”. 2

Вимоги зо звіту з лабораторних робіт. 2

Лабораторна робота № 1. 3

Тема “Алгоритми лінійної структури”. 3

Лабораторна робота № 2. 5

Тема: “Емулятор”. 5

Лабораторна робота № 3. 8

Тема: Ітераційні алгоритми. 8

Лабораторна робота № 4. 10

Тема: Табуляція функцій. 10

Практичне завдання № 5. 12

Тема: Табличне виведення даних. 12

Лабораторна робота № 6. 13

Тема: Обробка одновимірних масивів. 13

Лабораторна робота № 7. 15

Тема: Ітераційні алгоритми. Створення двомірного масиву. 15

Лабораторна робота № 8. 17

Тема: Обробка двовимірних масивів. 17

 


Завдання з курсу “Програмування”

В період вивчення навчальної дисципліни студенти денної форми навчання повинні:

1) Засвоїти теоретичний матеріал курсу.

2) Виконати у 1-му семестрі вивчення дисципліни:

– лабораторні роботи № 1–5;

3) Виконати у 2-му семестрі вивчення дисципліни:

– лабораторні роботи № 6–10.

Вимоги зо звіту з лабораторних робіт

Звіт до кожної лабораторної роботи повинен мати:

1. Титульну сторінку, тему, мету.

2. Індивідуальне завдання (згідно номеру варіанту).

3. Теоретичні відомості (стислі).

4. Опис програми (опис вхідних і вихідних даних, а також допоміжних даних; опис використаних стандартних бібліотек і функцій, опис інтерфейсу).

5. Алгоритм задачі (у вигляді блок-схеми згідно стандартів).

6. Текст програми.

7. Результати роботи програми.

8. Висновки.

Приклад оформлення звіту з лабораторної роботи наведений у файлі С_лаб_Зразок.doc.

 

Лабораторна робота № 1

Тема “Алгоритми лінійної структури”

Мета

Набути навичок в програмуванні алгоритмів лінійної структури для обчислення чисельного виразу.

Теоретичні відомості

Для обчислення чисельних виразів використовують стандартні математичні функції, що знаходяться в бібліотеці math.h або в бібліотеці stdlib.h. Приклад підключення бібліотеки:

#include <math.h>

Найбільш поширені у використанні математичні функції:

Бібліотекаmath.h  
sqrt(double x) Квадратний корінь
sin(x) cos(x) tan(x) Синус Косинус Тангенс
log(x) Натуральний логарифм
log10(x) Десятковий логарифм
abs(x), fabs(x) Абсолютне значення
pow(a,b) аb – значення а піднесене у ступень b (а, b – тип double)
pow10(x) 10x

Завдання

Обчислити формули для заданих значень параметрів.

Варіанти завдань

Формули Параметри
1. x = 1,426 y = -1,22 z = 3,5
2. x = 1,825 y = 18,225 z = -3,298
3. x = 0,335 y = 0,025
4. a = -0,5 b = 1,7 t = 0,44
5. a = 1,5 b = 15,5 x = -2,9
6. a = 16,5 b = 3,4 x = 0,61
7. a = 0,7 b = 0,05 x = 0,5
8. a = 1,1 b = 0,004 x = 0,2
9. m = 2 c = -1 t = 1,2 b = 0,7
10. a = 3,2 b = 17,5 x = -4,8
11. a = 10,2 b = 9,2 x = 2,2 c = 0,5
12. a = 0,3 b = 0,9 x = 0,61
13. a = 0,5 b = 3,1 x = 1,4
14. a = 0,5 b = 2,9 x = 0,3
15. m = 0,7 c = 2,1 x = 1,7 a = 0,5 b = 1,08

 

Лабораторна робота № 2

Тема: “Емулятор”

Мета: набути навичок в програмуванні емуляторів.

Приклад

Необхідно за вказаною функцією намалювати схему, використовуючи елементи І, Ні, Або.

 

Для зображення елементів схем використовують наступні позначення та відповідні їм логічні операції:

Операція Призначення Позначення у мові С++ Позначення на схемі
логічне НІ !
y = x1 + x2 логічне АБО ÷÷
y = x1 x2 логічне І &&

Завдання

У відповідності з варіантом написати програму, що емулює роботу схеми. Вхідні дані ввести безпосередньо встановивши курсор на входи x1, x2, x3, x4 (лише 0 та 1), результат отримати на виході у.

Варіанти завдань

Варіант 1

Варіант 2

Варіант 3

Варіант 4

Варіант 5

Варіант 6

Варіант 7

Варіант 8

Варіант 9

Варіант 10

Варіант 11

Варіант 12

Варіант 13

Варіант 14

Варіант 15

Варіант 16

Варіант 17

Варіант 18

Варіант 19

Варіант 20

Варіант 21

Варіант 22

Варіант 23

Варіант 24

Варіант 25

Варіант 26

Варіант 27

Варіант 28

Варіант 29

Варіант 30

Лабораторна робота № 3

Тема: Ітераційні алгоритми

Завдання

Скласти програму для виведення N рядків заданого виду. Приклади наведені для N = 4.

Програма повинна:

1) Використовувати оператори циклу з лічильником;

2) Забезпечити контроль за правильним введенням N, яке повинно бути в межах 3<N<9;

3) Сформувати дзеркальне відображення рядків, приклади яких наведені у варіантах 1 та 2.

 

Варіанти завдань

Приклад для N= 4     Приклад для N= 4
  0*0       *1*
  1*1*1       **2**
  2**2**2       ***3***
3***3***3     ****4****
  2**2**2       ***3***
  1*1*1       **2**
  0*0       *1*
           
  *l*       /*1*\
**121**     //**2**\\
  ***12321***       ///***3***\\\
  ****1234321****       ////****4****\\\\
           
  1*1*1       =*1*=
4**2**4     =*2*2*=
  9***3***9       =*3***3*=
  16****4****16       =*4*****4*=
           
  =*1*=       <<<<****4****>>>>
==**2**==     <<<***3***>>>
  ===***3***===       <<**2**>>
  ====****4****====       <*1*>
           
  1<*1*>1       /1\
2<<**2**>>2       //*2*\\
  3<<<***3***>>>3     ///**3**\\\
  4<<<<****4****>>>>4       ////***4***\\\\
           
  1*****1       1*0*1
2***2     2**1**2
  3*3       3***2***3
        4****3****4
           
  *2*       1*1*1
***4***     4**2**4
  *****6*****       9***3***9
  *******8*******       16****4****16
           
  ////*4*****4*\\\\       /1*1\
///*3***3*\\\     //2***2\\
  //*2*2*\\       ///3*****3\\\
  /*0*\       ////4*******4\\\\
           

 

  4********8********4       *1-1*
3******6******3     **2^2**
  2****4****2       ***3-3***
  1**2**1       ****4^4****
           
  <1>       2*2
/<<2>>\     4***4
  //<<<3>>>\\       8*****8
  ///<<<<4>>>>\\\       16*******16
           
  \1*******1/       <1-1>
\\2*****2//     <*2^2*>
  \\\3***3///       <**3-3**>
  \\\\4*4////       <***4^4***>
           
  (1)       1/*\1
(2*2)     2//-\\2
  (3***3)       3///*\\\3
  (4*****4)       4////-\\\\4
           
  (1)*(2)       \****1****/
(2)*/\*(2)     /***222***\
  (3)**//\\**(3)       \**33333**/
  (4)***///\\\***(4)       /*4444444*\
           
  /1\       \\\\*1<>1*////
//22\\     \\\*12<>21*///
  ///333\\\       \\*123<>321*//
  ////4444\\\\       \*1234<>4321*/
           
  0+1=1+0       *(l+2<3+4)*
1+2+3=3+2+1     **(2+3<4+5)**
  2+4+4+5=5+4+3+2       ***(3+4<5+6)***
  3+4+5+5+7=7+5+6+4+3       ****(4+5<6+7)****
           

 

Лабораторна робота № 4

Тема: Табуляція функцій

Завдання

Скласти програму для табуляції кусочно-аналітичної функції y(x) на інтервалі [a, b] з кроком h.

Знайти мінімальне та максимальне значення функцій на заданому інтервалі.

Вимоги до програми

Програма повинна забезпечувати:

1) введення початкового та кінцевого значень діапазону та кроку табуляції;

2) контроль правільності введених даних (для діапазону a < b, h < | b- a|);

3) можливість перегляду отриманих результатів;

4) діалог з користувачем щодо можливості повторення обчислень або завершення роботи програми.

Варіанти завдань

Функція Умови Значення Інтервал, крок
1. a = –0,5 b = 2 xÎ[0; 3] h = 0,15
2. a = 1,5 xÎ[0,8; 2] h = 0,1
3. a = 2,8 b = –0,3 c = 4 xÎ[1; 2] h = 0,05
4. a = 1,65 xÎ[0,7; 2] h = 0,1
5. a = 2,3 xÎ[0,2; 2,8] h = 0,2
6. a = 2,5 xÎ[1; 5] h = 0,5
7. b = 1,5 xÎ[0,1; 1] h = 0,1
8.   xÎ[2; 5] h = 0,25
9. a = 20,3 xÎ[0,5; 2] h = 0,1
10. t = 2,2 xÎ[0,2; 2] h = 0,2
11. a = 2,6 b = –0,39 xÎ[0; 7] h = 0,5
12. a = 0,9 xÎ[0,8; 2] h = 0,1
13.   a = 2,1 b = 1,8 c = –20,5 xÎ[0; 12] h = 1
14. a = 0,3 n = 10 xÎ[1; 10] h = 1
15. a = 2,5 b = 0,4 xÎ[–1; 1] h = 0,2

 

 

Практичне завдання № 5