Heim  >  Artikel  >  Backend-Entwicklung  >  C-Programm zum Generieren von x in der n-ten Potenz mithilfe einer rekursiven Funktion

C-Programm zum Generieren von x in der n-ten Potenz mithilfe einer rekursiven Funktion

PHPz
PHPznach vorne
2023-08-25 22:33:091895Durchsuche

C-Programm zum Generieren von x in der n-ten Potenz mithilfe einer rekursiven Funktion

Problem

Berechnen Sie den Wert von x, erhöht auf die n-te Potenz, wobei sowohl x als auch n vom Benutzer zur Laufzeit eingegeben werden.

Lösung

Generieren Sie x, erhöht auf die n-te Potenz, mithilfe einer rekursiven Funktion in der C-Programmierung Sprache Die Lösung für den Wert von lautet wie folgt: −

Die Logik zum Ermitteln von x in der n-ten Potenz lautet wie folgt: −

//Calling function:
Xpow=power(x,n);
//Called function:
if (n==1)
   return(x);
else if ( n%2 == 0)
   return (pow(power(x,n/2),2)); /*if n is even*/
else
   return (x*power(x, n-1));

Algorithmus

Beziehen Sie sich auf den unten angegebenen Algorithmus, um den Wert von x in der n-ten Potenz zu generieren mit einer rekursiven Funktion.

Schritt 1 – Lange Ganzzahlvariable lesen

Schritt 2 – Funktionsprototyp deklarieren

Schritt 3 – Funktion aufrufen

Xpown=power(x,n) goto step 5

Schritt 4 – xpown drucken

Schritt 5 − Funktion aufrufen

Schritt 5.1 − if (n==1)

Schritt 5.1.1 − return(x)

Schritt 5.2 − Else if (n%2 == 0)

Schritt 5.2.1 − Return (pow(power(x,n/2),2)); /*Wenn n eine gerade Zahl ist*/

Schritt 5.3 − Else

1 Schritt − Return (x *power (x, n-1)); /*Wenn n eine ungerade Zahl ist*/

Programm

Das Folgende ist ein C-Programm, das eine rekursive Funktion verwendet, um den n-ten Potenzwert von x−

#include <stdio.h>
#include <math.h>
void main(){
   long int x, n, xpown;
   long int power(int x, int n);
   printf("Enter the values of X and N: </p><p>");
   scanf("%ld %ld", &x, &n);
   xpown = power (x, n);
   printf("X to the power N = %ld</p><p>",xpown);
}
/*Recursive function to computer the X to power N*/
long int power(int x, int n){
   if (n==1)
      return(x);
   else if ( n%2 == 0)
      return (pow(power(x,n/2),2)); /*if n is even*/
   else
      return (x*power(x, n-1)); /* if n is odd*/
}

zu generieren

Wenn das obige Programm ausgeführt wird, erzeugt es das folgende Ergebnis: -

Enter the values of X and N:
5 4
X to the power N = 625

Das obige ist der detaillierte Inhalt vonC-Programm zum Generieren von x in der n-ten Potenz mithilfe einer rekursiven Funktion. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:tutorialspoint.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen

In Verbindung stehende Artikel

Mehr sehen