Heim > Backend-Entwicklung > C++ > 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
Freigeben: 2023-08-25 22:33:09
nach vorne
1922 Leute haben es durchsucht

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));
Nach dem Login kopieren

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
Nach dem Login kopieren

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*/
}
Nach dem Login kopieren

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
Nach dem Login kopieren

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!

Verwandte Etiketten:
Quelle:tutorialspoint.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage