Zdravím,
s programováním začínáme a já píšu kód do školy pro výpočet impedance, ale háže mě to dvě chyby
1. fi := arccos(cos_fi) * 180 / PI;
2. Pk := sqrt(Ps^2 - Pq^2)
Nevíte prosím, kde a v čem je chyba? Případně mi to opravit.
Děkuji všem za odpověď.
program vypocet;
const
PI = 3.14159;
var
I, U, P, cos_fi, fi, Ps, Pq, Pk, R, Z, X, Zk, L, C: real;
begin
// načtení vstupních hodnot
write('Zadejte proud I [A]: ');
readln(I);
write('Zadejte napětí U [V]: ');
readln(U);
write('Zadejte výkon P [W]: ');
readln(P);
// výpočet kosinu fi a úhlu fi
cos_fi := P / (U * I);
fi := arccos(cos_fi) * 180 / PI;
// výpočet zdánlivého výkonu, jalového výkonu a účinného výkonu
Ps := U * I;
Pq := Ps * sin(fi / 180 * PI);
Pk := sqrt(Ps^2 - Pq^2);
// výpočet impedance, odporu, reaktance a kapacity / indukčnosti
R := U / I;
Z := U / Pk;
X := sqrt(Z^2 - R^2);
Zk := sqrt(R^2 + Z^2);
L := X / (2 * PI * 50);
C := 1 / (X * 2 * PI * 50);
// výstup vypočtených hodnot
writeln('cos(fi) = ', cos_fi:0:2);
writeln('fi = ', fi:0:2, ' stupňů');
writeln('Ps = ', Ps:0:2, ' [VA]');
writeln('Pq = ', Pq:0:2, ' [VAR]');
writeln('Pk = ', Pk:0:2, ' [W]');
writeln('R = ', R:0:2, ' [?]');
writeln('Z = ', Z:0:2, ' [?]');
writeln('X = ', X:0:2, ' [?]');
writeln('Zk = ', Zk:0:2, ' [?]');
writeln('L = ', L:0:2, ' [H]');
writeln('C = ', C:0:2, ' [F]');
// konec programu
readln;
end.