Heim >Backend-Entwicklung >C#.Net-Tutorial >Detaillierte Erläuterung komplexer Zahlenoperationen in der Sprache C
Hinweis: Der komplexe Typ wurde aus dem c99-Standard eingeführt, die spezifische Implementierung ist jedoch nicht Teil des Standards und wird von jedem Compiler implementiert Die Standards können unterschiedlich sein. Für spezifische Informationen prüfen Sie bitte die Implementierungsstandards der entsprechenden Compiler. Dieser Artikel ist für den gcc-Compiler.
Komplexe Zahlen sind bei mathematischen Operationen sehr wichtig. Beim Schreiben numerischer Operationen oder Algorithmen verwenden wir das Konzept der komplexen Zahlen. Wie werden komplexe Zahlen in der Sprache C/C++ dargestellt? Wir werden sie im Folgenden einzeln vorstellen.
Komplexe Zahlen in der C-Sprache
In der Mathematik kann eine komplexe Zahl als (z=a + bi) definiert werden. C
Die Sprache führte Pluraltypen mit ISO C99
ein. Die Definition erfolgt über complex.h
. Wir können die Typsymbole complex
, __complex__
oder _ComplexI
verwenden, um es darzustellen. In der C-Sprache gibt es drei Pluraltypen, nämlich float complex
, double complex
, long double complex
. Der Unterschied zwischen ihnen besteht darin, dass die Datentypen, die den Realteil und den Imaginärteil komplexer Zahlen darstellen, unterschiedlich sind. complex
Es handelt sich tatsächlich um ein Array. Das Array enthält zwei Elemente, eines repräsentiert den Realteil der komplexen Zahl und eines repräsentiert den Imaginärteil der komplexen Zahl.
Definieren Sie einen Plural
In der Header-Datei complex.h
werden zwei Makros _Complex_I
und I
definiert, um einen Plural zu erstellen.
Macro: const float complex _Complex_I; Macro: const float complex I;
Diese beiden Makros stellen komplexe Zahlen (0+1i) dar, und wir können diese komplexe Einheitszahl verwenden, um jede komplexe Zahl zu erstellen.
#include <stdio.h> #include <complex.h> int main(int argc, char *argv[]) { complex double a = 3.0 + 4.0 * _Complex_I; __complex__ double b = 4.0 + 5.0 * _Complex_I; _Complex double c = 5.0 + 6.0 * _Complex_I; printf("a=%f+%fi\n", creal(a),cimag(a)); printf("b=%f+%fi\n", creal(b), cimag(b)); printf("c=%f+%fi\n", creal(c), cimag(c)); printf("the arg of a is %d", carg(a)); return 0; }rrree
Grundlegende Operationsfunktionen für komplexe Zahlen
In der Headerdatei complex.h
sind einige Funktionen für Grundoperationen für komplexe Zahlen definiert.
函数 | 功能 |
---|---|
creal | 获取复数的实部 |
cimag | 获取复数的虚部 |
conj | 获取复数的共轭 |
carg | 获取,复平面上穿过原点和复数在复平面表示的点,的直线和实数轴之间的夹角 |
cproj | 返回复数在黎曼球面上的投影 |
Numerische Operationen an komplexen Zahlen
Komplexe Zahlentypen können auch wie gewöhnliche numerische Typen ~int, double, long~ durch direkte Verwendung numerischer Operationen ausgeführt werden Symbole. Numerische Operationen.
a=3.000000+4.000000i b=4.000000+5.000000i c=5.000000+6.000000i the arg of a is 176rrree
Vielen Dank an alle fürs Lesen. Habt ihr es gelernt?
Dieser Artikel ist reproduziert von: https://blog.csdn.net/duandianR/article/details/70846638
Empfohlenes Tutorial: „C Language“
Das obige ist der detaillierte Inhalt vonDetaillierte Erläuterung komplexer Zahlenoperationen in der Sprache C. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!