Думай...
Вычисление факториала...
Код:
function factorial(n: integer): integer;
begin
if n > 1
then factorial := n * factorial(n-1) // функция вызывает сама себя
else factorial:= 1; // факториал 1 равен 1
end;
procedure TForm1.Button1Click(Sender: TObject);
var
a:integer; // число, факториал которого надо вычислить
f:integer; // значение факториала числа a
begin
k := StrToInt(Edit1.Text);
b:= factorial(a);
label1.caption:='Факториал числа '+Edit1.Text+' равен '+IntToStr(b);
end;
end.
Возведение в степень...
Код:
//Функция быcтрого возведения в степень
function FastPower(a,b: integer): integer;
var i, ai: integer;
begin
ai := a;
for I := Trunc(log2(b)) - 1 downto 0 do
if Bit(b, i) then ai := sqr(ai) * a else ai := sqr(ai);
result := ai;
end;
__________________
В начале был Бит, потом Байт и только потом появилось Слово...
|