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

 

Тема

Циклічні обчислювальні процеси

Мета

Навчитись обчислювати суми знакозмінних рядів із заданою точністю, використовуючи оператори циклу.

 

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

Цикл - це процес виконання певного набору команд деяку кількість разів. Є три види команд циклів: з лічильником, з передумовою та з післяумовою.

Команда циклу з лічильником (for) має вигляд

for (оператор1; <логічний вираз>; оператор2) {оператори3;}

Дія команди. Команди оператори3 виконуються в циклі, доки значення логічного виразу істинне. Оператор1 задає початкові значення лічильника циклу, оператор 2 задає крок лічильника. Істинний логічний вираз задає умову виходу з циклу.

Команда циклу з передумовою (while) має вигляд

while <логічний вираз> do {оператори;}

Дія команди. Доки значення логічного виразу істинне, виконується оператори. Істинний логічний вираз описує умову продовження процесу виконання команди циклу.

Команда циклу з післяумовою (do-while) має вигляд

do {оператори;} while <логічний вираз>;

Дія команди. Команди виконуються в циклі, доки значення логічного виразу не стане істинним. Істинний логічний вираз задає умову виходу з циклу.

 

Приклад виконання

 

Завдання

Скласти програму для обчислення суми ряду з точністю ε. Під наближеними значеннями суми ряду з точністю ε тут розуміється сума тих доданків, для яких виконується умова  ε .

        x=0.34        E=0.001

 

#include <iostream.h>

#include <math.h>

#include <conio.h>

 

int main()

{

    const float E=0.001;

    float x, a, s, fact;

    int n=1;

    cout<<"Input x:";

    cin>>x;

    fact=2;

    a=-(2*x)/fact;

    while (fabs(a)>E)

    {

    s++=a; n++;

    fact*=(2*n)*(2*n-1);

    a=pow(-1,n)*pow(2*x,n)/fact;

    }

    cout.precision(3);

    cout<<"S="<<s<<"\n";

    coun<<"n="<<n<<"\n";

return 0;

}

 

Завдання

 

 

Скласти програму для обчислення суми ряду з точністю ε. Під наближиними значеннями суми ряду з точністю ε тут розуміється сума тих доданків, для яких виконується умова .

 

Ряд

x

1.

0,001

0,25

2.

0,001

0,65

3.

0,001

0,45

4.

0,001

0,54

5.

0,001

0,41

6.

0,001

1,25

7.

0,001

0,6

8.

0,001

0,58

9.

0,001

-1,34

10

0,001

0,45

11.

0,001

0,8

12.

0,001

0,34

13.

0,001

0,65

14.

0,001

1,12

15.

0,001

0,52

16.

0,001

0,2

17.

0,001

0,3

18.

0,001

0,4

19.

0,001

1,04

20.

0,001

0,46

21.

0,001

0,91

22.

0,001

1,45

23.

0,001

1,67

24.

0,001

-0,44

25.

0,001

0,25

26.

0,001

1,5

27.

0,001

0,9

28.

0,001

0,5

29.

0,001

0,4

30.

0,001

1,72

 

Контрольні запитання

1.      Яке призначення оператора циклу з передумовою?

2.      Чим відрізняється оператори циклу з передумовою від оператора з післяумовою?

3.      Який з операторів може ні разу не виконатися?

4.      Чи можливе зациклювання у циклі з післяумовою чи з передумовою?

5.      Що означає поняття рекурентне співвідношення?

6.      Чим відрізняється оператор циклу з післяумовою від інших операторів циклу?

7.      Коли закінчується процес обчислення суми знакозмінного ряду?