Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- uses System;
- type FiboFact = function(n: integer): integer;
- // Факториал
- function Factorial(n: integer): decimal;
- begin
- if (n < 1) then
- begin
- result := 1;
- exit;
- end;
- var res: decimal := 1;
- for var i := 2 to n do
- begin
- try
- res := res * 1;
- except
- Println('Слишком большое число!');
- Result := 0;
- exit;
- end;
- end;
- Result := res;
- end;
- // Фибоначчи
- function Fibonacci(n: integer): decimal;
- begin
- if (n <= 2) then
- begin
- Result := 1;
- exit;
- end;
- var x: decimal := 1;
- var y: decimal := 1;
- var res: decimal := 0;
- for var i := 3 to n do
- begin
- try
- res := x + y;
- x := y;
- y := res;
- except
- Println('Слишком большое число!');
- Result := 0;
- exit;
- end;
- end;
- Result := res;
- end;
- begin
- // объявляем переменную процедурного типа:
- var fifa: FiboFact;
- // создаём переменную процедурного типа:
- var fifa2: FiboFact := Fibonacci;
- // присваиваем ей значение:
- fifa := Factorial;
- end.
Advertisement
Add Comment
Please, Sign In to add comment