Перестановки и факториалы Фамилии авторов Яковлева О.Е Егорова Е.Н
Мартышка – Мишка – Козёл – Осёл – 2
3
4 Программирование на языке Паскаль
5
6
7
8 Рекурсивные объекты Рекурсивный объект – это объект, определяемый через один или несколько таких же объектов. У попа была собака, он ее любил. Она съела кусок мяса, он ее убил. В ямку закопал, надпись написал: У попа была собака, он ее любил. Она съела кусок мяса, он ее убил. В ямку закопал, надпись написал: Примеры: Сказка о попе и собаке: У попа была собака, он ее любил. Она съела кусок мяса, он ее убил. В ямку закопал, надпись написал: У попа была собака, он ее любил. Она съела кусок мяса, он ее убил. В ямку закопал, надпись написал: У попа была собака, он ее любил. Она съела кусок мяса, он ее убил. В ямку закопал, надпись написал: У попа была собака, он ее любил. Она съела кусок мяса, он ее убил. В ямку закопал, надпись написал:
9 Факториал
10 Итерационный способ вычисления program n1; var y: real; i,n: integer; begin y:=1; write('Введите число n'); readln(n); for i:=1 to n do y:=y*i; writeln(n,'!=',y:15:0); end. program n1; var y: real; i,n: integer; begin y:=1; write('Введите число n'); readln(n); for i:=1 to n do y:=y*i; writeln(n,'!=',y:15:0); end.
11 Факториал если
12 Каким образом вычисляется факториал при итерационном алгоритме? Каким образом вычисляется факториал при рекурсионном алгоритме? Отличие итерации от рекурсии
13 Function fact (n:integer): real; Begin if n=1 then fact :=1 else fact :=n * fact(n-1); End; Function fact (n:integer): real; Begin if n=1 then fact :=1 else fact :=n * fact(n-1); End;
14 Программа Program n3; Var n: integer; a:real; Function fact(n: integer) : real; Begin If n= 1 then fact := 1 else fact := fact (n-1) * n; End; begin {начало основной программы} writeln (' Введите натуральные числа n и m– '); readln (n,m); a:=fact(n)+fact(m); write('выражение равно= ', a:20:0); еnd.
15
16 1.Чему равно количество перестановок в множестве из n элементов? 2.Сколько алгоритмов вычисления факториала нами изучено? Какие это алгоритмы? 3.В чём различия между ними? 1.Чему равно количество перестановок в множестве из n элементов? 2.Сколько алгоритмов вычисления факториала нами изучено? Какие это алгоритмы? 3.В чём различия между ними? Подведём итоги
17 Домашнее задание Задача 5, а, б, в