АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция
|
Обчислення добутку членів послідовності
Розглянемо цей вид алгоритмів на прикладі обчислення значення функції n! (факторіал).
Факторіал– це функція натурального аргументу, значенням якої є добуток чисел від 1 до n.
1!=1; 2!=1*2; 3!=1*2*3; …, n!=1*2*3*4*…*(n – 1)*n.
|
За означенням прийнято, що 0!=1. Хоча, як відомо, нуль не належить до натуральних чисел. Ця рівність була отримана в розділі математики комбінаторика. Відома формула знаходження кількості сполучень: При n=m одержимо звідси виходить, що 0!=1.
Справедлива рекурентна формула: n!=(n – 1)!*n.
Рекурентною називають формулу, що дозволяє на підставі попереднього значення функції одержати поточне значення. Наприклад, 5!=4!*5.
|
Структура алгоритму для обчислення добутку членів послідовності загалом ідентична структурі алгоритму накопичення суми, за винятком того, що:
1.У комірку результату на початку вміщується одиниця.
2.У циклі повинна бути команда присвоювання: р:=р*ЗЧП, де р – комірка для накопичення добутку.
Алгоритм має вигляд:
| Алгоритм мовою Паскаль
| АЛГ Факторіал (ціл N, P)
АРГ N
РЕЗP
ПОЧ цілий і
і:=1; Р:=1
поки i<=N
пц
Р:=Р*і
і:=і+1
кц
ДРУКУВАТИ Р
КІН
| Program Factorial;
var I, N: byte; p:longint;
begin
write (‘ Введіть число, факторіал якого треба знайти ‘);
readln(N);
p:=1;
for i:=1 to N do
p:=p*i
writeln(‘p=’, p);
end.
| 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 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | Поиск по сайту:
|