지수는 C로 어떻게 작성합니까?

How Do You Write An Exponent C



C 언어에서 지수 값은 다음을 사용하여 계산할 수 있습니다. NS() 기능. 이 기사는 사용법을 배울 것입니다 NS() 지수 연산을 수행하는 함수. 사용법도 배우게 됩니다 비트 시프팅 연산자 지수 연산을 수행합니다. 지수를 계산하는 사용자 정의 함수를 작성하려고 합니다. 시작하겠습니다.

통사론

더블 NS ( 더블 베이스, 더블 특급);







NS NS() 함수는 다음에서 정의됩니다. 수학.h 헤더 파일.



인수

이 함수는 두 개의 인수를 취합니다. 베이스 그리고 특급, 의 값을 계산하기 위해 베이스 의 힘으로 제기 특급 . 여기 베이스 그리고 특급 둘 다 이중입니다.



반환 값

성공 시, NS() 함수는 다음 값을 반환합니다. 베이스 의 힘으로 제기 특급 .





값의 경우 특급 는 0이고 NS() 함수는 1을 반환합니다.

만약에 베이스 음수이고 특급 적분하지 않으며, NS() 함수 반환 (숫자가 아님).



//예제1.c
#포함하다
#포함하다

정수기본()
{

정수결과;
결과= (정수) NS (,5);
인쇄 ('Npow(3,5) => %d',결과);
인쇄 ('Npow(3,-5) => %lf', NS (, -5));
인쇄 ('Npow(-3,-5) => %lf', NS (-, -5));
인쇄 ('Npow(3,5.1) => %lf', NS (,5.1));
인쇄 ('Npow(-3,5.1) => %lf', NS (-,5.1));
인쇄 ('Npow(-3,-5.1) => %lfN', NS (-, -5.1));

반품 0;
}

Example1.c에서 우리는 출력을 보았습니다. NS() 기능. 여기에서 우리는 -lm 수학 라이브러리에 연결할 명령줄 매개변수입니다. 10행에서 13행까지 예상한 대로 출력을 얻었습니다. 14행과 15행의 경우 -난 (숫자가 아님) 두 번째 인수가 정수가 아니기 때문입니다.

비트 시프팅을 사용한 지수

지수를 2의 거듭제곱으로 계산하려면 비트 시프팅을 사용하여 계산할 수 있습니다.

m만큼 왼쪽으로 이동하면 첫 번째 항에 해당하고 2는 m의 거듭제곱에 해당합니다.

N<< m = n*pow(2,m)

m만큼 오른쪽으로 이동하는 것은 첫 번째 항을 m의 거듭제곱으로 나눈 값과 같습니다.

엔>>엠 = n/pow(2,m)

m이 양수일 때만 작동합니다.

//예제2.c
#포함하다

정수기본()
{
인쇄 ('N1<%d',1<<);
인쇄 ('N5<%d',5<<);
인쇄 ('N-5<%d', -5 => %NS', 40 >> 3);
printf('
N40>> => %NS', 40 >> 3);
printf('
N-40>> => %NS', -40 >> 3);

반환 0;
}

Example2.c에서 비트 시프트 연산자를 2의 거듭제곱에 대한 지수로 사용하는 방법을 보았습니다. 코드의 복잡성을 줄이는 데 매우 유용합니다.

사용자 정의 함수를 사용한 지수

지수를 계산하는 사용자 정의 함수를 작성할 수 있습니다. Example3.c에서는 사용자 정의 함수를 작성합니다. 지수(), float ant integer 유형의 exp와 두 개의 인수 기반을 취합니다.

//예제3.c
#포함하다

뜨다멱지수(뜨다베이스, 정수 특급 )
{
뜨다결과=1.0;
뜨다NS;
만약( 특급 < 0)
{
특급 = -1 * 특급 ;
~을위한(NS=1;NS<= 특급 ;NS++)
결과=결과*베이스;

결과= 1.0/결과;
}
또 다른
{
~을위한(NS=1;NS%NS',지수(3,0));
printf('
exponent(, -5) => %NS',지수(3,-5));
printf('
exponent(-, -5) => %NS',지수(-3,-5));

반환 0;
}

Example3.c 우리는 사용자 정의 함수의 출력을 보았습니다. 지수() . 이 함수는 지수가 적분일 때 작동합니다. 실제 지수의 경우 다음을 사용해야 합니다. NS() 기능.

결론

이 기사에서 우리는 사용하는 것을 보았습니다. NS() 기능과 비트 시프팅 연산자 C 언어에서 지수를 계산하는 방법. 또한 지수를 계산하는 함수를 작성하는 방법도 배웠습니다. 이제 우리는 의심의 여지 없이 C 프로그램에서 이러한 기술을 사용할 수 있습니다.