a misto teho komplex, by mělo být real, to type komplex by tam asi nemelo byt a tam kde je komplex je real asi
Příspěvky odeslané z IP adresy 82.113.46.–
jo ty funkce by měli být asi takhle si myslim:
FUNCTION CastReal(r1,i1,r2,i2 :real):real;
Begin
CastReal:= (r1*r2)-(i1*i2);
End;
FUNCTION CastImag(r1,i1,r2,i2 :real):real;
Begin
CastImag:= (r1*i2)+(i1*r2);
End;
No musím to odevzdat ve škole, abych dostal zápočet. Já tomu právě moc nerozumim. Mám to jen jeden semestr právě. Snažím se na to přijít, ale nejde mi to. Zadávám to do delphi a zkouším to zpouštět. Jako aby to byl funkční program.
Já v tom moc neumím a musím udělat tenhle poslední program právě. Děkuji, že mi radíš. Chtěl bych tě poprosit, jestli by jsi mi to nezprovoznil..pořád nad tym přemýšlím..hledám po netu..jedinné co jsem dal dohromady je tohle, ale nevim jak to poskladat, nějak deklarovat ty proměnné. :(
type Komplex
Function re(Cislo:Komplex):real;
begin
Re:=Cislo.re;
end;
Function im(Cislo:Komplex):real;
begin
Im:=Cislo.im;
end;
Procedure soucin(A,B:Komplex;var V:Komplex);
begin
V.re:=A.re*B.re-A.im*B.im;
V.im:=A.re*B.im+A.im*B.re;
end;
var c1,c2,c3:Komplex;
begin
readln(c1);
readln(c2);
readln(c3);
if (c1.re>c3.re) and (c2.re>c3.re) then Soucin(c1,c2,soucin_vetsich);
else
if(c1.re>c2.re) and (c3.re>c2.re) then soucin(c1,c3,soucin_vetsich);
else soucin(c2,c3,soucin_vetsich);
if (c1.im<c3.im) and (c2.im<c3.im) then soucin(c1,c2,soucin_mensich);
else
if(c1.im<c2.im) and (c3.im<c2.im) then soucin(c1,c3,soucin_mensich);
else soucin(c2,c3,soucin_mensich);
writeln(V.im,V.re);
end.
Dobrý den, prosím o pomoc s tímto programem:
Sestavte proceduru pro výpočet součinu dvou komplexních čísel a použijte ji pro řešení následující úlohy: jsou dána tři komplexní čísla, vynásobte nejprve ta dvě čísla, která mají největší reálnou část, a potom ta dvě čísla, která mají nejmenší imaginární část.
Udělal jsem proceduru, doufám, že aspoň tu dobře, ale dál si nevím rady.
type Komplex
Procedure Soucin(A,B:Komplex;var C:Komplex);
begin
C.R:=A.R*B.R-A.I*B.I;
C.I:=A.R*B.I+A.I*B.R;
end;
begin
n:=3
for i:=1 to n do
begin