Главная Обратная связь Поможем написать вашу работу!

Дисциплины:

Архитектура (936)
Биология (6393)
География (744)
История (25)
Компьютеры (1497)
Кулинария (2184)
Культура (3938)
Литература (5778)
Математика (5918)
Медицина (9278)
Механика (2776)
Образование (13883)
Политика (26404)
Правоведение (321)
Психология (56518)
Религия (1833)
Социология (23400)
Спорт (2350)
Строительство (17942)
Технология (5741)
Транспорт (14634)
Физика (1043)
Философия (440)
Финансы (17336)
Химия (4931)
Экология (6055)
Экономика (9200)
Электроника (7621)






Реалізація вкладених циклічних алгоритмів



 

 

Мета роботи:удосконалювання навичок роботи з алгоритмічною конструкцією повторення (циклами) засобами Borland С++; набуття нави- чок розв’язку задач, що потребують застосування вкладених ітераційних процесів.

 

 

Теоретичні основи.

Якщо оператор циклу мстить інші циклічні оператори, то йдеться

про вкладені цикли (цикли у циклі). Ступінь вкладеності при цьому може бути достатньо глибоким, в залежності від складності ітераційного проце- су. Окрім того, цикли одного типу можуть бути вкладеними у цикл іншого типу.

Вкладені цикли працюють наступним чином. Виконується перша іте- рація зовнішнього циклу і якщо у циклі знаходиться оператор вкладеного циклу, то програма передає керування на його виконання. Після завершен- ня усіх ітерацій вкладеного циклу починається наступна ітерація зовніш- нього циклу, під час якої знову передається керування на оператор вкладе- ного циклу і т.д. Алгоритм закінчується після завершення усіх зовнішніх ітерацій.

Приклади вкладених циклів:

 

 

for(i=first; i<=last; i++) for(j=v; j>=w; j--) …;

 

 

while(x<=n)

for(i=last; i>=first; i-=x) …;

 

 

Неприпустимо перетинання окремих циклів.

Якщо для примусового переривання циклу використовується опера- тор переходу break, то переривається той цикл, у якому він викликається. Після переривання внутрішнього циклу керування передається заголовку зовнішнього циклу для перевірки умови його продовження. Аналогічно працює і оператор continue. Його виклик забезпечує виконання нової іте- рації того циклу, в якому цей виклик здійснено.

Як і раніше, під час застосування вкладених циклічних алгоритмів необхідно забезпечувати скінченність ітераційного процесу аби уникнути можливого «зациклення».

Взагалі рекомендується уникати застосування операторів переходу

для передчасного завершення як простих, так і вкладених циклічних про- цесів.


 

 

Приклад завдання 6.1:

Дано натуральне число n. Обчислити суму ряду за формулою:




= 1 + æ 1 ö


+ æ 1 ö


+ ... + æ 1 ö


n
S ç ÷ ç ÷ ç ÷


è 2 ø


è 3 ø


è nø


 

Розв’язок:

/* 6.1 */

#include <stdio.h> main()

{

float s=0,a,p; unsigned int j,i,n; printf("n=");

scanf("%li",&n); for(i=1;i<=n;i++)

{

p=a=1.0/i; for(j=2;j<=i;j++) p*=a; s+=p;

}

printf("s=%7.3f",s); return 0;

}

 

Результати роботи:

 

 

Завдання:

1.Будь-яке натуральне число n (n>7) можна отримати за формулою

n=3а+5b, де а і b – натуральні числа. За заданим n знайти усі а і b.


2.Дано дійсне число a (1 £ a £ 1,25 ) . Обчислити


S = 1 + (1 2)2 + (1 3)3 + K ,


доки S не стане більше за a, не використовуючи бібліотечних функцій.


3.Дано натуральне число n. Обчислити ристовуючи бібліотечних функцій.

4.Дано натуральне число n. Обчислити стовуючи бібліотечних функцій.

5.Дано натуральне число n. Обчислити


S = 1 + (1 2)n + K + (1 n)n , не вико-

 

 

P = (1 2)n (1 3)n K(1 n)n , не викори-

 

 

P = (1 + 1 1)(1 + 1 2)2 K(1 + 1 n)n , не


 

 

використовуючи бібліотечних функцій.

6. Дано натуральне число n. Знайти всі Піфагорові трійки натуральних чисел, кожне з яких не перевищує n, тобто всі такі трійки натуральних чисел a, b, c, що a2+b2=c2 (a£b£c£n).




7.Дано натуральне число n. Обчислити


S = 1


+ (1 2)n-1 + (1 3)n-2 + K + (1 n) ,


не використовуючи бібліотечних функцій.

8.Дано натуральне число n та дійсне число s. Обчислити значення функ-


ції


y = 1 + sin x + sin x2 + K + sin xn


на відрізку


x Î[0,2p] з кроком s.


9.Дано натуральне число n та дійсне число s. Обчислити значення функ-


ції


y = 1 + cos x + cos2 x + K + cosnx


на відрізку


x Î[0, p] з кроком s.


10.Дано натуральне число n. Простим називається число, що має тільки два дільники – саме число й одиницю. Вивести всі прості числа, що ме- нші за n.

11.Дано натуральне число n. Простим називається число, що має тільки два дільники – саме число й одиницю. Вивести n перших простих чисел.

n 1


12.Дано натуральне число n. Обчислити


å ( ) .


i=1


i2 !


 

13.Дано натуральне число n. Обчислити


n

(
Õ sin 2i +


j 2 ).


i, j=1

14.Два натуральних числа називаються «дружніми», якщо кожне з них до- рівнює сумі дільників іншого за винятком самого числа. Дано натура- льні числа a і b. З’ясувати, чи є задані числа дружніми. Приклади пар дружніх чисел: 220 і 284, 1184 і 1210, 2620 і 2924, 5020 і 5564, …


 

15.Дано натуральне число n. Обчислити å å


j - i + 1 .


n n


i=1 j=i


2i + j


n i i

16. Дано натуральне число n. Обчислити å å .

i=1 j=1i + 2 j

n

17.Дано натуральне число n. Обчислити å ii, не використовуючи бібліоте-

i=1

чних функцій.

18.Дано натуральне число n. Знайти всі двійки натуральних чисел x і y,


якщо такі є, що


n = x3 + y3 .


 

19. Дано натуральне число n. Вивести послідовність використовуючи бібліотечних функцій.




1,(1 2)n ,K,(1 n)n , не


20.Дано натуральне число n. Знайти число від 1 до n, що має якомога бі-

льше дільників.

21.Дано натуральне число n. Знайти число від 1 до n, що має якомога бі- льшу суму дільників.

22.Дано натуральне число n. Знайти всі трійки натуральних чисел x, y і z,


якщо такі є, що


n = x2 + y 2 + z 2 .


 

 

23.Дано натуральне число n. Визначити суму цифр заданого числа без за- стосування операцій цілочислового ділення.

24.Дано натуральне число n. Визначити першу цифру заданого числа без застосування операцій цілочислового ділення.

25.Дано натуральне число. Отримати без застосування операцій цілочис- лового ділення це число, записане у зворотному порядку.

26. -2 y 1, y=0.1, 2.1 x 4.6, x=0.2;

27. -2 y 10, y=1, 2 x 6, x=0.2;

28. 2 y 10, y=1, 2.1 x 4.6, x=0.2;

29. 1 x 4, x=0.3, 0.5 y 1.5, y=0.2;

30. 1 x 4, x=0.3, -0.5 y 1.5, y=0.2;

31. 1 x 4, x=0.3, 0.5 y 1.5, y=0.2;

32. 0 x 2, x=0.2, -1 y 1, y=0.1;

33. 0 x 2, x=0.2, -2 y 2, y=0.4;

34. 0 x 2, x=0.2, -2 y 2, y=0.4;

 

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

1. Що означає термін «вкладені цикли»? Як вони працюють?

2. Яка може бути ступінь вкладеності ітераційного процесу?

3. Чи можуть цикли перетинатись?

4. Чи можуть біти вкладеними цикли різних типів?

5. Як працюють оператори переходу у вкладених циклах?

6. Коли вкладений циклічний процес може «зациклитись»?

7. Чому бажано уникати застосування операторів переходу для перед- часного завершення циклічних процесів?


 

 

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


Просмотров 1448

Эта страница нарушает авторские права




allrefrs.ru - 2021 год. Все права принадлежат их авторам!