Heim >Backend-Entwicklung >C#.Net-Tutorial >Detaillierte Erläuterung komplexer Zahlenoperationen in der Sprache C

Detaillierte Erläuterung komplexer Zahlenoperationen in der Sprache C

烟雨青岚
烟雨青岚Original
2020-06-19 13:30:076200Durchsuche

Detaillierte Erläuterung komplexer Zahlenoperationen in der Sprache C

Detaillierte Erläuterung komplexer Zahlenoperationen in der C-Sprache

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 176
rrree

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!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn