COMPLEX-C Komplexe Zahlen fr PureC Stand 24.1.93 In diesem Ordner befindet sich eine Bibliothek fr PureC, die Funktionen fr komplexe Zahlen bereitstellt. Um damit arbeiten zu k”nnen, mssen CPORTAB.H und COMPLEX.H includiert werden und COMPLEX.O hinzugelinkt werden. Ferner muž natrlich PCFLTLIB.LIB hinzugelinkt werden (wie in TEST.PRJ). Wenn in der PureC-Shell der Warning Level 2 eingestellt ist, erh„lt man eine Reihe von Warnungen der Art "Structure passed by value". Diese Warnungen kann man ignorieren oder einfach Warning Level 1 w„hlen. Der Datentyp fr komplexe Zahlen heižt Tcomplex. Es stehen folgende Funktionen ( z.T. auch als Makros) zur Verfgung : CX_CPY( d, s) ( Makro ) d <-- s CX_RE( z) ( Makro ) liefert Realteil von z CX_IM( z) ( Makro ) liefert Imagin„rteil von z CX_DEF( z, r, i) ( Makro ) Setzt Realteil von z gleich r, Imagin„rteil von z gleich i CX_EQ( z1, z2) ( Makro ) Prft z1 == z2 CX_ADD( s, z1, z2) ( Makro ) s <-- z1 + z2 cx_add( z1, z2) Rckgabe : z1 + z2 CX_SUB( d, z1, z2) ( Makro ) s <-- z1 - z2 cx_sub( z1, z2) Rckgabe : z1 - z2 CX_NEG( z) ( Makro ) z <-- -z CX_MULT( p, z1, z2) ( Makro ) s <-- z1 * z2 cx_mult( z1, z2) Rckgabe : z1 * z2 CX_KONJ( z) ( Makro ) z <-- Konjungierte von z cx_konj( z) Rckgabe : Konjungierte von z CX_BTRGQ( z) ( Makro ) liefert |z|^2 cx_btrgq Rckgabe : |z|^2 CX_BTRG( z) ( Makro ) liefert |z| cx_btrg Rckgabe : |z| CX_SQR( q, z) ( Makro ) q <-- z^2 cx_sqr( z) Rckgabe : z^2 cx_div ( z1, z2) Rckgabe : z1 / z2 cx_sgn ( z) Rckgabe : Signum von z cx_inv ( z) Rckgabe : 1 / z cx_sqrt ( z) Rckgabe : Wurzel von z cx_npow ( z, LONG n) Rckgabe : z^n ( negatives n ist erlaubt ) double cx_arg ( z) Rckgabe : Argument von z cx_poltocart (double b, double a) Rckgabe : z, wenn b (Betrag) a (Argument) eine Darstellung in Polarkoordinaten ist. void cx_riemann (double *x1, double *x2, double *x3, z) Rckgabe : -nichts- In x1,x2,x3 werden die Riemannschen Koordinaten von z zurckge- liefert. cx_criem (double x1, double x2, double x3) Rckgabe : z, wenn x1,x2,x3 eine Darstellung in Riemannschen Koordinaten ist cx_exp ( z) Rckgabe : e^z cx_ln ( z) Rckgabe : ln z cx_sin ( z) Rckgabe : sin z cx_cos ( z) Rckgabe : cos z cx_tan ( z) Rckgabe : tan z cx_sinh ( z) Rckgabe : sinh z cx_cosh ( z) Rckgabe : cosh z cx_tanh ( z) Rckgabe : tanh z cx_arcsin ( z) Rckgabe : arcsin z cx_arccos ( z) Rckgabe : arccos z cx_arctan ( z) Rckgabe : arctan z cx_arsinh ( z) Rckgabe : arsinh z cx_arcosh ( z) Rckgabe : arcosh z cx_artanh ( z) Rckgabe : artanh z TEST.TTP demonstriert die meisten Funktionen ( Quelle: TEST.C). Wenn TEST.TTP in der Form TEST >file aufgerufen wird, wird die Ausgabe in die Datei "file" geschrieben; wird TEST.TTP ohne Parameter aufgerufen, so erfolgt die Ausgabe auf dem Bildschirm. Wie alle PD-Autoren bin auch ich fr Spenden dankbar. Wenn ich eine Spende >= 20.- erhalte, sende ich Ihnen auf Wunsch gerne eine Diskette mit dem Quelltext (Pure-C) von COMPLEX.O . Meine Adresse: Klaus Rindfrey Hgelstr. 12 6109 Mhltal