Como você escreve um expoente em C?

How Do You Write An Exponent C



Na linguagem C, o valor do expoente pode ser calculado usando o NS () função. Este artigo aprenderá como usar o NS () função para realizar a operação de exponenciação. Também aprenderemos como usar o operador bit-shifting para realizar a operação de exponenciação. Tentaremos escrever uma função definida pelo usuário para calcular expoentes. Então vamos começar.

Sintaxe

Duplo NS ( Duplo base, Duplo exp);







o NS () função é definida em math.h arquivo de cabeçalho.



Argumentos

Esta função leva dois argumentos, base e exp, calcular o valor de base elevado ao poder de exp . Aqui base e exp ambos são duplos.



Valores de retorno

Com sucesso, o NS () função retorna o valor de base elevado ao poder de exp .





Se o valor de exp é 0, o NS () função retorna 1.

Se base é negativo e exp não é integral, o NS () função retorna NaN (Não é um número).



Exemplos

//Example1.c
#incluir
#incluir

inta Principal()
{

intresultado;
resultado= (int) NS (3,5);
printf (' npow (3,5) =>% d ',resultado);
printf (' npow (3, -5) =>% lf ', NS (3, -5));
printf (' npow (-3, -5) =>% lf ', NS (-3, -5));
printf (' npow (3,5.1) =>% lf ', NS (3,5,1));
printf (' npow (-3,5.1) =>% lf ', NS (-3,5,1));
printf (' npow (-3, -5,1) =>% lf n', NS (-3, -5,1));

Retorna 0;
}

Em Example1.c, vimos a saída do NS () função. Aqui usamos o -lm parâmetro de linha de comando a ser vinculado à biblioteca matemática. Das linhas 10 a 13, obtivemos a saída conforme o esperado. Para as linhas 14 e 15, temos -nan (Não é um número) porque o segundo argumento não é integral.

Expoente usando deslocamento de bits

Se quisermos calcular o expoente à potência de 2, podemos fazê-lo usando o deslocamento de bits.

O deslocamento à esquerda em m é equivalente ao primeiro termo e 2 à potência m.

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

O deslocamento à direita por m é equivalente à divisão do primeiro termo e 2 à potência m.

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

Só funciona quando m é positivo.

//Example2.c
#incluir

inta Principal()
{
printf (' n1<%d',1<<3);
printf (' n5<%d',5<<3);
printf (' n-5<%d', -53 => %d', 40 >> 3);
printf ('
n40>>3 => %d', 40 >> 3);
printf ('
n-40>>3 => %d n', -40 >> 3);

return 0;
}

Em Example2.c, vimos como o operador de mudança de bit pode ser usado para o expoente elevado a 2. É muito útil para reduzir a complexidade do código.

Expoente usando função definida pelo usuário

Podemos escrever uma função definida pelo usuário para calcular expoentes. Em Example3.c, vamos escrever uma função definida pelo usuário expoente (), que leva dois argumentos com base e exp do tipo float ant integer.

//Example3.c
#incluir

flutuadorexpoente(flutuadorbase, int exp )
{
flutuadorresultado=1.0;
flutuadoreu;
E se( exp < 0)
{
exp = -1 * exp ;
para(eu=1;eu<= exp ;eu++)
resultado=resultado*base;

resultado= 1.0/resultado;
}
outro
{
para(eu=1;eu%f', expoente (3,0));
printf ('
nexponente(3, -5) => %f', expoente (3, -5));
printf ('
nexponente(-3, -5) => %f', expoente (-3, -5));

return 0;
}

Exemplo3.c vimos a saída da função definida pelo usuário expoente () . Esta função é trabalhada quando o expoente é integral. Para expoente real, temos que usar o NS () função.

Conclusão

Neste artigo, vimos como usar o NS () função e Mudança de bit operador como o expoente pode ser calculado na linguagem C. Também aprendemos como escrever nossa própria função para calcular expoentes. Agora podemos usar essas técnicas em nosso programa C sem nenhuma dúvida.