C Programmeren

Hoe schrijf je een exponent in C?

Hoe schrijf je een exponent in C?
In de C-taal kan de exponentwaarde worden berekend met behulp van de pow() functie. Dit artikel leert hoe u de pow() functie om de machtsverheffing uit te voeren. We zullen ook leren hoe u de bitverschuivende operator om de machtsverheffing uit te voeren. We zullen proberen een door de gebruiker gedefinieerde functie te schrijven om exponenten te berekenen.  Dus laten we beginnen.

Syntaxis

dubbele pow(dubbele baseren, dubbele exp);

De pow() functie is gedefinieerd in wiskunde.h header-bestand.

Argumenten

Deze functie heeft twee argumenten:, baseren en exp, om de waarde van te berekenen baseren verheven tot de macht van exp. Hier baseren en exp beide zijn dubbel.

Retourwaarden

Bij succes, de pow() functie retourneert de waarde van baseren verheven tot de macht van exp.

Als de waarde van exp is 0, de pow() functie retourneert 1.

Als baseren is negatief en exp is niet integraal, de pow() functie retourneert NaN (Niet-A-nummer).

Voorbeelden

//Voorbeeld 1.c
#include
#include
int hoofd()

int resultaat;
resultaat = (int)pow(3,5);
printf("\npow(3,5) => %d", resultaat);
printf("\npow(3,-5) => %lf",pow(3,-5));
printf("\npow(-3,-5) => %lf",pow(-3,-5));
printf("\npow(3,5.1) => %lf",pow(3,5.1));
printf("\npow(-3,5.1) => %lf",pow(-3,5.1));
printf("\npow(-3,-5.1) => %lf\n",pow(-3,-5.1));
retourneer 0;

In voorbeeld1.c, we hebben de uitvoer van de gezien pow() functie. Hier gebruiken we de -ik ben opdrachtregelparameter om te linken in de wiskundebibliotheek. Van regel 10 tot 13 hebben we de output zoals verwacht. Voor lijn 14 en 15 hebben we: -nan(Geen getal) omdat het tweede argument geen integraal is.

Exponent met bitverschuiving Bit

Als we de exponent tot de macht 2 willen berekenen, dan kunnen we dat doen met bitverschuiving bit.

De verschuiving naar links met m is gelijk aan de eerste term en 2 aan de macht m.

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

De verschuiving naar rechts met m is gelijk aan de deling van de eerste term en 2 aan de macht m.

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

Het is alleen werk als m positief is.

//Voorbeeld2.c
#include
int hoofd()

printf("\n 1< %d",1<<3);
printf("\n 5< %d",5<<3);
printf("\n -5< %d",-5<>3 => %d",40>>3);
printf("\n 40>>3 => %d",40>>3);
printf("\n -40>>3 => %d\n",-40>>3);
retourneer 0;

In voorbeeld2.c, we hebben gezien hoe de bitverschuivingsoperator kan worden gebruikt voor de exponent tot de macht 2. Het is erg handig om de complexiteit van de code te verminderen.

Exponent met behulp van door de gebruiker gedefinieerde functie

We kunnen een door de gebruiker gedefinieerde functie schrijven om exponenten te berekenen. In voorbeeld3.c, we zullen een door de gebruiker gedefinieerde functie schrijven exponent (), waarvoor twee argumenten zijn gebaseerd en exp van het type float ant integer.

//Voorbeeld3.c
#include
float exponent (float base, int exp)

float resultaat = 1.0;
zweven ik;
als (exp < 0)

exp = -1 * exp;
voor(i=1;i<=exp;i++)
resultaat = resultaat * basis;
resultaat = 1.0/resultaat;

anders

for(i=1;i %f",exponent(3,0));
printf("\nexponent(3,-5) => %f",exponent(3,-5));
printf("\nexponent(-3,-5) => %f",exponent(-3,-5));
retourneer 0;

Voorbeeld3.c we hebben de uitvoer van de door de gebruiker gedefinieerde functie gezien exponent (). Deze functie werkt als de exponent integraal is. Voor een echte exponent moeten we de gebruiken pow() functie.

Conclusie

In dit artikel hebben we gezien met behulp van de pow() functie en Beetje verschuiven operator hoe exponent kan worden berekend in C-taal. We hebben ook geleerd hoe we onze eigen functie kunnen schrijven om exponenten te berekenen. Nu kunnen we deze technieken zonder enige twijfel gebruiken in ons C-programma.

Hoe de muis- en touchpad-instellingen te wijzigen met Xinput in Linux
De meeste Linux-distributies worden standaard geleverd met de bibliotheek "libinput" om invoergebeurtenissen op een systeem af te handelen. Het kan in...
Wijs uw muisknoppen anders toe voor verschillende software met X-Mouse Button Control
Misschien heeft u een tool nodig waarmee u de bediening van uw muis kunt veranderen bij elke applicatie die u gebruikt. Als dit het geval is, kunt u e...
Microsoft Sculpt Touch draadloze muis Review
Ik las onlangs over de Microsoft Sculpt Touch draadloze muis en besloot hem te kopen. Nadat ik het een tijdje had gebruikt, besloot ik mijn ervaring e...