Maison >développement back-end >C++ >Programme C pour générer x élevé à la nième puissance en utilisant une fonction récursive
Calculer la valeur de x élevé à la nième puissance, où x et n sont entrés par l'utilisateur au moment de l'exécution
Générer x élevé à la nième puissance à l'aide d'une fonction récursive en programmation C langage La solution pour la valeur de est la suivante −
La logique pour trouver x élevé à la nième puissance est la suivante −
//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));
Référez-vous à l'algorithme ci-dessous pour générer la valeur de x élevé à la nième puissance en utilisant une fonction récursive.
Étape 1 - Lire une variable entière longue
Étape 2 - Déclarer le prototype de fonction
Étape 3 - Appeler la fonction
Xpown=power(x,n) goto step 5
Étape 4 − Imprimer xpown
Étape 5 − Fonction d'appel
Étape 5.1 − if (n==1)
Étape 5.1.1 − return(x)
Étape 5.2 − Sinon si (n%2 == 0)
Étape 5.2.1 − Return (pow(power(x,n/2),2)); /*Si n est un nombre pair*/
Étape 5.3 − Sinon
Chapitre 5.3. *puissance (x, n-1)); /*Si n est un nombre impair*/
ProgrammeCe qui suit est un programme C qui utilise une fonction récursive pour générer la nième valeur de puissance de 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*/ }Sortie Lorsque le programme ci-dessus est exécuté, il produit le résultat suivant −
Enter the values of X and N: 5 4 X to the power N = 625
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!