C 庫 - clog() 函式



C 的complexclog()函式用於計算 z(複數)的復自然(以 e 為底)對數,分支切割沿負實軸。

此函式取決於 z(複數)的型別。如果 z 為“float”型別,我們可以使用clogf()計算複對數,對於 long double 型別,使用clogl(),對於 double 型別,使用clog()

注意:複數 z 的自然對數可以使用其極座標 (r,θ) 表示,其中 r 是 z 的大小(或模數),θ 是幅角(或相位角)。根據這些極座標,自然對數 ln(z) 由下式給出:ln(z)=ln(r)+i(θ+2nπ)

語法

以下是 clog() 函式的 C 庫語法:

double complex clog( double complex z )

引數

此函式接受一個引數:

  • Z - 它表示我們要計算自然對數的複數。

返回值

此函式返回 z(複數)的復自然對數,範圍在沿虛軸的區間 [−iπ, +iπ] 中的條帶內,並在實軸上數學上無界。

示例 1

以下是一個基本的 c 程式,用於演示如何在複數上使用 clog()

#include <stdio.h>
#include <complex.h>

int main() {
   double complex z = 3.0 + 4.0*I; 
   
   // Compute ln(z)
   double complex result = clog(z);
   printf("clog(%f + %fi) = %f + %fi\n", creal(z), cimag(z), creal(result), cimag(result));
   return 0;
}

輸出

以下是輸出:

clog(3.000000 + 4.000000i) = 1.609438 + 0.927295i

示例 2

計算具有負實部的自然對數。

讓我們看另一個例子,我們使用 clog() 計算自然(以 e 為底)對數。

#include <stdio.h>
#include <complex.h>

int main() {
   double complex z = -3.0 + 4.0*I; 
   
   // Compute ln(z)
   double complex result = clog(z);
   printf("clog(%f + %fi) = %f + %fi\n", creal(z), cimag(z), creal(result), cimag(result));
   return 0;
}

輸出

以下是輸出:

clog(-3.000000 + 4.000000i) = 1.609438 + 2.214297i

示例 3

計算具有負實部和負虛部的自然對數

現在,讓我們計算 (-3.0 + -4.0*I) 的自然(以 e 為底)對數。

#include <stdio.h>
#include <complex.h>

int main() {
   double complex z = -3.0 + -4.0*I; 
   
   // Compute ln(z)
   double complex result = clog(z);
   printf("clog(%f + %fi) = %f + %fi\n", creal(z), cimag(z), creal(result), cimag(result));
   return 0;
}

輸出

以下是輸出:

clog(-3.000000 + -4.000000i) = 1.609438 + -2.214297i
c_library_complex_h.htm
廣告

© . All rights reserved.