Зворотний зв'язок

ПАСКАЛЬ: ЦИКЛ "ПОКИ" ТА ЙОГО ВИКОРИСТАННЯ

5.* Один із варіантів алгоритму Евкліда обчислення найбільшого спільного дільника чисел a і b (НСД(a,b)) грунтується на обчисленні рекурентної послідовності {p}, де p1=max{a,b}, p2=min{a,b}, pn=pn-2 mod pn-1 при n>2. Шуканим є останнє ненульове значення послідовності. Уточнити алгоритм Евкліда у вигляді функції.

6. Послідовність {xn}, задана співвідношеннями

x1=(a+m-1)/2,

xi=( (m-1)xi-1 + a/x )/m при i > 1,

сходиться до a1/m. Запрограмувати обчислення a1/m при довільному додатному дійсному a з точністю  , тобто за потрібне число приймається перше xn таке, що | xn-xn-1 |< .

4.7. Послідовність сум {sn}, де sn=1+x+x2/2!+…+xn/n!, за умови 0 x<1 "достатньо швидко" сходиться до ex. Запрограмувати обчислення ex при x [0;1) із точністю  , тобто за потрібне число приймається перше sn таке, що | sn-sn-1 |< .

Запрограмувати обчислення ex при довільному x, застосовуючи "формули зведення" – рівності ex=e[x]e{x}, ex=1/e-x, де [x] і {x} позначають цілу й дробову частини x. Обчислити e[x] шляхом множення сталої e=2.7182818 на себе [x] разів.4.8. Послідовність сум {sn}, де sn=1-x2/2!+…+(-1)nx2n/(2n)!, за умови |x|  /4 "достатньо швидко" сходиться до cos(x). Запрограмувати обчислення cos(x) при x [- /4;  /4] з точністю  , тобто за потрібне число приймається перше sn таке, що | sn-sn-1 |< .

Запрограмувати обчислення cos(x) при довільному x, застосовуючи тригонометричні формули зведення.

3. Числа прості й не тільки

Приклад 6. Напишемо функцію визначення, чи є натуральне значення її параметра, більше 1, простим числом.

Як відомо, число n є простим, якщо його додатними дільниками є лише 1 і n. Число 2 просте, а n>2 просте, якщо не ділиться без остачі на жодне з чисел 2, 3, … , n-1. Якщо ж воно ділиться хоча б на одне з них, то є не простим, а складеним. Отже, n – просте тоді й тільки тоді, коли (n=2) або (n>2 і n не ділиться на жодне з чисел 2, 3, … , n-1). Очевидно також, що n – складене, якщо n>2 і ділиться хоча б на одне з чисел 2, 3, … , n-1.

Таким чином, при n>2 треба перевірити подільність n на кожне з чисел k=2, 3, … , n-1.

Результат перевірок можна запам'ятати у вигляді кількості d дільників серед цих чисел. До початку перевірок d=0, тобто жодний дільник ще не знайдений, і з кожним знайденим дільником d збільшується на 1. Тоді умова d=0 є ознакою того, що число просте. Оформимо сказане у вигляді алгоритму:

if n>2 then

begin

d:=0;

для всіх k=2, 3, … , n-1 перевірити, чи ділиться n на k:

якщо ділиться, то d:=d+1

if d>0 then n – складене

else n – просте


Реферати!

У нас ви зможете знайти і ознайомитися з рефератами на будь-яку тему.







Не знайшли потрібний реферат ?

Замовте написання реферату на потрібну Вам тему

Замовити реферат