Просишь пример? Хорошо вот тебе пример (но только для комплексных чисел, если будут ошибки в работе с ними прошу прощения, я комплексные числа изучал крайне давно и не работал больше с ними)
(a1+i*b1)*(a2+i*b2) = a1*a2+i*b2*a1+i*b1*a2+i*b1*i*b2 = a1*a2+i*b2*a1+i*b1*a2-b1*b2=a1*a2-b1*b2+i*(b1*a2+b2*a1) = a3+i*b3
это пример умножения двух комплексных чисел (разных), в результате чего получается новое комплексное число.
(a+ib)^N есть последовательное произведение N одинаковых комплексных чисел:
(a+ib) * (a+ib) * (a+ib) * ... * (a+ib)
думаю с этим может уже справиться и обыкновенный цикл.
Реализуешь функцию произведения двух комплексных чисел (например ComplexMul)
Код: Выделить всё
type
TComplex = record
a, b: Real;
end;
function ComplexPower(a: TComplex; n: Integer): TComplex;
var
i: Integer;
begin
Result := a;
for i := 2 to n do
Result := ComplexMul(Result, a);
end;
Что ещё надо?
Просишь пример? Хорошо вот тебе пример (но только для комплексных чисел, если будут ошибки в работе с ними прошу прощения, я комплексные числа изучал крайне давно и не работал больше с ними)
(a1+i*b1)*(a2+i*b2) = a1*a2+i*b2*a1+i*b1*a2+i*b1*i*b2 = a1*a2+i*b2*a1+i*b1*a2-b1*b2=a1*a2-b1*b2+i*(b1*a2+b2*a1) = a3+i*b3
это пример умножения двух комплексных чисел (разных), в результате чего получается новое комплексное число.
(a+ib)^N есть последовательное произведение N одинаковых комплексных чисел:
(a+ib) * (a+ib) * (a+ib) * ... * (a+ib)
думаю с этим может уже справиться и обыкновенный цикл.
Реализуешь функцию произведения двух комплексных чисел (например ComplexMul)
[code]
type
TComplex = record
a, b: Real;
end;
function ComplexPower(a: TComplex; n: Integer): TComplex;
var
i: Integer;
begin
Result := a;
for i := 2 to n do
Result := ComplexMul(Result, a);
end;
[/code]
Что ещё надо?