Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

LAB_04

.pdf
Скачиваний:
10
Добавлен:
14.02.2016
Размер:
135.31 Кб
Скачать

ЛАБОРАТОРНА РОБОТА №4

Програмування циклічних алгоритмів

Мета: Закріплення набутих практичних навичок по складанню циклічних программ..

Теоретичні відомості - лекції Приклад 1

Вивести на екран тільки відємні значення функції (з відповідними значеннями аргумента), знайти їх кількість, а також знайти мінімальне значення функцції:

 

 

y = x ln( x) a, a = 3.2;

Аргумент х змінюється від початкового значення 1.5 до кінцево-го 3.3 з кроком 0.2.

Графічний алгоритм наведений на рис.1

Наведемо програмну реалізацію даного алгоритму:

program example1_lab4;

const а=3.2;

{задання константи}

var x,y,min:reаl;

 

k:integer;

 

begin

 

 

x:=1.5;

{ініціалізація параметра циклу}

k:=0;

{ініціалізація лічильника кількості}

min:=1.5*ln(1.5)-а; {ініціалізація мінімального значення}

while x<=3.3 do

begin

 

y:=x*ln(x)-а;

if y<0 then

 

 

bеgin

 

 

writeln('x=',x:6:3,' y=',y:6:3);

 

k:=k+1

{обчислення кількості}

 

end;

 

if y<min then min:=y; {пошук мінімального значення}

x:=x+0.2

{зміна параматра циклу}

еnd;

 

 

writеln('kilkist vidjemnyh znachen k=',k); writеln('min=',min:6:3);

rеаdln еnd.

 

початок

 

a=3.2

 

x=1.5; k=0;

 

min=1.5ln(1.5)-а;

 

 

x<=3.3

 

+

 

y:=x*ln(x)-а

+

 

y<0

вивести x,y

 

k=k+1

 

+

 

y<min

min=y

 

 

x=x+0.2

вивести k,min

кінець

Рисунок 1

Приклад 2.

 

 

1

 

Знайти з точністю до 10 знаків після коми суму знакозмінного ряду

(-1)k −1

.

 

 

 

k =1

k 2

 

 

 

Використати той факт, що різниця між точним значенням знакозмінного ряду (-1)k −1 uk (в якого

 

 

 

k =1

 

N

 

 

 

uk > 0 монотонно прямує до 0) та його частинною сумою (-1)k −1 uk

не перевищує величини uN .

 

k =1

 

 

 

Тобто нарощувати суму до тих пір, поки uN ³ 10−10 .

 

 

 

Точне значення ряду дорівнює

π 2

 

 

 

= 0.8224670334241132182362...

 

 

 

 

12

 

 

 

Графічний алгоритм задачі наведено на рис. 2

Наведемо програмну реалізацію розвязку даної задачі. program example_lab4_2;

var s,eps,u:real; k:integer;

begin

writeln('vvedit tochnist eps');readln(eps);

s:=0;

{ініціалізація суми ряду}

k:=1;

{ініціалізація параметра циклу}

repeat

 

 

u:=1/(k*k);

{обчислення модуля загального члена ряду}

if k mod 2 = 0 {перевірка лічильника на парність}

then s:=s-u

 

else

s:=s+u;

k:=k+1

 

 

until u<=eps;

{перевірка досягнення заданої точності}

writeln('s=',s);

 

readln end.

початок

ввести eps

s=0

k=1

 

 

 

 

u=1/(k*k)

 

 

 

 

+

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

k mod 2=0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

s=s+u

 

 

 

 

 

 

 

s=s-u

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

k=k+1

 

 

 

 

 

 

 

+

 

 

u£eps

 

 

 

 

 

 

 

 

 

 

вивести s

кінець

Рисунок 2

Завдання до виконання Задача 1

1. Вивести на екран значення функції

p =

 

 

2

+ y + 1,

y < 0.6;

 

e x 2 + x , x = y

 

 

 

y - 1,

y ³ 1,

унабуває значення від 0 до 8 з кроком 0.15. Знайти мінімальне значення функції.

2.Знайти найбільше відємне значення функції і відповідне йому значення аргумента:

α =

1 + a x

a = 3.45;

 

,

(b - x) sin3 (x)

 

b = 162. .

Аргумент х змінюється від початкового значення 0.1 з кроком 0.15 до кінцевого 3.1 (радіан).

3. Знайти найменше значення функції і відповідне їй значення аргумента:

y =

a sin( x)

,

a = 138.;

 

b = 1.26.

 

 

x

+ bx

Аргумент змінюється від початкового значення 0.3 з кроком 0.25 до кінцевого значення 3.3 (радіан). 4. Вивести на екран тільки відємні значення та їх кількість:

z =

a -

 

 

b - x

 

 

,

a = 1352.;

 

 

ln2 (a + 3)

 

 

b = 1105. .

 

 

 

 

Аргумент х змінюється від початкового значення 1.1 з кроком 0.2 до кінцевого 4.1.

5. Знайти найменше додатне значення функції і відповідне йому значення аргумента:

α =

1 + a x

a = 3.45;

 

,

(b - x) sin3 (x)

 

b = 162. .

Аргумент х змінюється від початкового значення 0.5 з кроком 0.15 до кінцевого 3.5 (радіан). 6. Обчислити різницю між максимальним і мінімальним значенням функції:

y =

cos( x

− α )

,

a = 0.28.

 

 

 

x

 

 

 

Аргумент х змінюється від початкового значення 0.1 з кроком 0.32 до кінцевого значення 6.5. 7. Знайти квадрат максимального значення функції:

 

 

 

 

 

π

 

 

1 + sin x +

 

 

 

 

 

16

 

y =

 

 

 

 

 

 

 

 

 

 

 

,

b = 4.85.

 

 

 

 

 

 

 

b

- x

 

 

 

 

 

 

 

 

 

Аргумент х змінюється від початкового значення 16 з кроком -0.25 до кінцевого 10. 8. Вивести на екран всі значення функції і аргумента:

 

 

 

 

 

 

 

 

b < 10.6

z = b

y

- 3

 

 

b + 1,

ay ,

 

y =

 

 

b ³ 10.6; a = 1.25.

 

 

 

 

 

b + a,

Аргумент b змінюється від початкового значення 9.5 з кроком 0.25 до кінцевого 12.75. Знайти мінімальне значення функції.

9.Обчислити значення функції і вивести на екран окремо відємні, а окремо додатні значення функції

івідповідні значення аргументів:

t =

33

 

y

 

,

y = 617.3,

 

 

 

 

ϕ = 0.3.

x cos( x +

ϕ ) + ln( x)

 

 

Аргумент х змінюється від початкового значення 1.2 з кроком 0.15 до кінцевого 4.4. 10. Вивести на екран значення функції, які задовольняють умову у<2.5 i y>1.5:

y =

arctg(a 2

+ x 2 )

x = 3.241.

 

 

 

,

 

x

 

 

 

 

 

 

 

 

 

 

 

 

ae 2

Аргумент а змінюється від початкового значення 1.15 до кінцевого 6.3 з кроком 0.1.

11. Вивести на екран значення, які задовольняють умову у>1.35 i y<2.4 і відповідні значення аргумента. Аргумент х змінюється від 0.42 до 0.86 з кроком 0.04:

y =

a

ax

+ ae x

a = 195.;

 

 

 

,

 

 

 

π

b = 0.895.

 

b sin x +

 

 

 

 

 

 

 

 

 

16

 

12.

Обчислити добуток мінімального і максимального значень функції. Аргумент змінюється від

початкового значення 0.1 до кінцевого 9.1 з кроком 0.75 (радіан):

g =

1

+ c

c = 3.452;

 

 

,

(b - y) sin3 ( y)

 

b = 1673. .

13. Вивести на екран значення функції, які лежать в межах a>b>c, підрахувати їх кількість.

b(x)= b = 5( y - x)

 

y - zx

 

,

y = 28.3;

a = 55.;

1 + (y + x 2 )ln(z)

z = 4.21;

c = 2.8.

Аргумент х змінюється від початкового значення 3.4 з кроком 0.11 до кінцевого 6.6.

14. Обчислити 20 значень функції і відповідних значень аргумента, а також окремо вивести на екран максимальне значення функції:

 

 

 

 

a

 

 

 

 

 

 

 

a + ln2 a + ce 2

 

 

b =

 

 

 

 

 

a = 385. .

 

 

 

 

 

 

,

 

a - c

 

+ 0.15

 

 

 

 

 

 

 

 

 

Аргумент с змінюється від початкового значення 1.35 до кінцевого 4.35 з кроком 0.5. 15. Вивести на екран ті значення функції у і їх кількість, які лежать в межах 2.5>y>-1.5:

y =

x + ϕ

sin( x + ϕ ),

ϕ = 0.21.

 

 

 

 

 

x

 

Аргумент с змінюється від початкового значення 4.2 до 8.3 з кроком 0.15. 16. Обчислити значення функції

a = ln(m2 + m),

які задовольняють умову 1.5<a<3.8; m=1,2,3,...,16. 17. Вивести на екран таблицю значень функції

y =

 

 

b cos( x)

 

 

a = 0.85;

 

 

 

 

,

 

 

b = 0.92;

ax 2

+ bx 3

 

 

 

 

sin( x)

 

 

для значень х,

які змінюються від 0.5 до 8.5 включно з кроком 0.05. При цьому, якщо знаменник

менше 10-3 за абсолютним значенням, то покласти у=106.

18. Обчислити мінімальне значення функції

 

 

 

 

 

2

+ y + 1,

y < 0.6;

 

 

 

 

p = e x −2 + x , x = y

 

 

 

 

 

y - 1,

y ³ 1,

унабуває значення від 0 до 8 з кроком 0.15.

19.Знайти кількість додатних значень функції, вивести ці значення на екран і відповідні їм значення аргумента:

α =

1 + a x

a = 3.45;

 

,

(b - x) sin3 (x)

 

b = 162. .

Аргумент х змінюється від початкового значення 0.2 з кроком 0.2 до кінцевого 3.2 (радіан).

20. Вивести на екран усі відємні значення функції і знайти серед них максимальне.

y =

a sin( x)

,

a = 138.;

 

b = 1.26.

 

 

x

+ bx

Аргумент змінюється від початкового значення 1 з кроком 0.2 до кінцевого значення 5(радіан). 21. Знайти максимальне та мінімальне значення функції:

z =

a -

 

 

b - x

 

 

,

a = 1352.;

 

 

ln2 (a + 3)

 

 

b = 1105. .

 

 

 

 

Аргумент х змінюється від початкового значення 1.4 з кроком 0.2 до кінцевого 5.2.

22. Знайти кількість відємних значень функції, вивести їх на екран і відповідні їм значення аргумента:

α =

1 + a x

a = 3.45;

 

,

(b - x) sin3 (x)

 

b = 162. .

Аргумент х змінюється від початкового значення 0.2 з кроком 0.15 до кінцевого 3 (радіан).

23. Знайти кількість додатних значень функції, вивести їх на екран із відповідними значеннями аргументів:

y =

cos( x

− α )

,

a = 0.28.

 

 

 

x

 

 

 

Аргумент х змінюється від початкового значення –5

з кроком 0.5 до кінцевого значення 5.

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

 

 

 

 

 

π

 

 

1 + sin x +

 

 

 

 

 

16

 

y =

 

 

 

 

 

 

 

 

 

 

 

,

b = 4.85.

 

 

 

 

 

 

 

b

- x

 

 

 

 

 

 

 

 

 

Аргумент х змінюється від початкового значення 16 з кроком -0.25 до кінцевого 10. 25. Вивести на екран всі значення функції і аргумента:

 

 

 

 

 

 

 

 

b < 10.6

z = b

y

- 3

 

 

b + 1,

ay ,

 

y =

 

 

b ³ 10.6; a = 1.25.

 

 

 

 

 

b + a,

Аргумент b змінюється від початкового значення 9.5 з кроком 0.25 до кінцевого 12.75. Знайти кількість додатних значень функції.

26. Обчислити значення функції та знайти її максимальне значення:

t =

33

y

 

,

y = 617.3,

 

 

 

ϕ = 0.3.

x cos( x + ϕ ) + ln( x)

 

 

Аргумент х змінюється від початкового значення 1.2 з кроком 0.15 до кінцевого 4.4.

27. Вивести на екран всі значення функції та її аргумента, знайти максимальне значення функції:

y =

arctg(a 2

+ x 2 )

x = 3.241.

 

 

 

,

 

x

 

 

 

 

 

 

ae 2

Аргумент а змінюється від початкового значення 1.5 до кінцевого 6.5 з кроком 0.5.

28. Вивести на екран значення, які задовольняють умову у³1.3 i y£2.2, і відповідні значення аргумента. Аргумент х змінюється від 0.2 до 0.8 з кроком 0.05:

y =

a

ax

+ ae x

 

 

a = 195.;

 

 

 

,

 

 

 

 

 

 

π

 

 

b = 0.895.

 

b sin x +

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

16

 

 

 

 

29.

Вивести

на екран усі відємні

значення

функції та відповідні значення аргументів. Знайти

 

 

 

 

 

 

 

g =

 

1 + c

максимальне відємне значення функції.

 

 

,

 

 

(b - y) sin3 ( y)

c = 3.452;

b = 1673. .

Аргумент змінюється від початкового значення 1.5 до 6.5 з кроком 0.5 (радіан):

30. Вивести на екран значення функції, які лежать в межах a>b>c, підрахувати їх кількість.

b(x)= b = 5( y - x)

 

y - zx

 

,

y = 28.3;

a = 55.;

1 + (y + x 2 )ln(z)

z = 4.21;

c = 2.8.

Аргумент х змінюється від початкового значення 2 з кроком 0.05 до кінцевого 5.

Задача 2

Скласти графічний алгоритм та програму для знаходження суми ряду із заданою точністю, яка вводиться з клавіатури. Де потрібно, x вводити з клавіатури. Номер завдання вибирати згідно формули N mod 10, де N – номер по журналу.

 

π = 1-

1

 

 

 

1

 

 

 

1

 

 

 

 

 

 

 

1

 

 

 

 

 

1.

+

-

 

+ ... =

(-1)k

 

, (s=0?785398163397...)

 

 

 

 

 

 

2k +1

 

4

3

5

7

 

 

 

 

 

 

k =0

 

 

 

 

 

 

π =

 

1

 

 

1

 

 

 

 

 

 

1

 

 

 

1

 

 

 

 

 

2.

 

+

 

+

 

 

 

+ ...

 

 

 

 

(s=0?39269908169872...)

1×3

 

 

 

 

 

 

 

(2k +1)(2k +

 

 

8

 

5 ×7

 

 

 

9

×11

 

k =0

3)

 

 

 

 

 

 

 

 

 

x

2

 

 

 

x

4

 

x

6

 

x

2k

3.

cos x = 1-

 

 

+

 

-

 

+ ... = (-1)k

 

 

(при x=p=3,14159265358979... s=-1)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2!

 

4!

6!

 

k =0

(2k)!

 

 

 

 

 

 

 

x

2

 

 

 

 

x

3

 

 

 

x

4

 

k

 

 

 

 

 

 

4.

ex

= 1+ x +

 

 

+

 

 

 

+

 

 

+ ... =

x

 

(при x=1 s=2,717281828459...)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2!

 

3!

 

4!

 

k =0 k !

 

 

2k +1

 

 

 

 

 

 

 

 

 

 

x

3

 

 

 

 

 

x

5

 

 

 

 

x

7

 

 

 

x

 

5.

arctgx = x

 

+

 

 

 

+ ... = (−1)k

 

 

 

(при x=1 сума ряду дорівнює π=3,14159265358979...)

 

 

 

 

 

 

 

 

2k +1

 

 

(−2)k

 

 

 

3

 

 

 

 

 

 

5

 

 

 

 

 

7

k =0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

6.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(k !)2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

k =0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(−1)k (2k +1)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

6.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

k !

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

k =0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(−1)k +1

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

7.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(2k +1)2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

k =0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2k +1

 

 

 

 

 

 

 

x

3

 

 

 

x

5

 

 

 

 

x

7

 

 

 

 

 

 

x

 

8.

sin x = x

 

 

 

+

 

 

 

 

 

 

 

+ ... = (−1)k

 

 

 

 

 

(при x=π/2=1,57079632679...... s=1)

 

 

 

 

 

 

 

 

 

 

 

 

 

(2k +1)!

 

 

3!

 

 

5!

 

 

7!

 

 

k =0

 

 

 

 

 

(−1)k

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

9.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

k !

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

k =1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(−1)k +1

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

k(k +1)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

k =0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Додаткове. Написати програму, яка перевіряє рівність e = lim

 

1

 

. Точність вводити з

 

 

1

n

n→∞

 

 

1

 

 

 

 

 

 

 

 

n

 

клавіатури. Зауважимо, що точність - різниця між поточним значенням дробу і сталою Ейлера exp(1)

Порядок захисту лабораторної роботи

Для захисту ЛР потрібно:

1)записати написану програму на сервер і показати її викладачу;

2)оформити ЛР на листках А4:

-тема;

-мета;

-графічний алгоритм задачі 1;

-програма 1;

-графічний алгоритм задачі 2;

-програма 2;

-вхідні дані та результат обчислень;

-висновки.

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

1.Поняття циклічного алгоритму.

2.Особливості задання циклів

а) з передумовою, б) з післяумовою

в) із наперед заданою кількістю повторень

3. Графічне зображення циклів

а) з передумовою, б) з післяумовою

в) із наперед заданою кількістю повторень

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]