Fonction exponentielle

Soyez le premier à donner votre avis sur cette source.

Vue 27 683 fois - Téléchargée 643 fois

Description

Calcul d'exponentiel a partir d'une fonction puissance et factorielle

Source / Exemple :


FICHIER D'ENTETE
----------------------------------------------------------------------------------------------------------
//ceration de l'en-tete de expo.h
#include<iostream.h>

float puis(float,int); // declaration de la fonction puissance
int factoriel(int); // declaration de la fonction factorielle
int expo(int,int); //Declaration de la fonction expo

----------------------------------------------------------------------------------------------------------
                                                             MAIN
#include"expo.h"
#include<stdlib.h>	//declaration de la librairie qui permet d'effacer l'ecran ou faire une pause

void main()
{
	//Declaration des variables

	int m, n ,a;
	int cpt;
	float expo,t;
	expo=0;
	cpt=0;
	a=0;

	while (a<2)
	{
	
	system("cls");	//Commande permettant l'effacement de l'ecran
					//system("pause"); Commande pour faire une pause

	cout<<"Veuillez rentrez les valeurs ?"<<endl;
	cout<<"entrer x :"<<endl;
    cin>>m;
	cout<<"entrer n :"<<endl;
	cin>>n;
	
	
	//Boucle pour le calcul de la fonction expo
	while(cpt<=n+1)
	{

		t=(puis(cpt,m)/factoriel(cpt));
		expo=expo+t;
		cpt=cpt+1;
	}
	cout<<"La puissance vaut :"<<puis(cpt,m)<<endl;
	cout<<"Le factoriel vaut :"<<factoriel(cpt)<<endl;
	cout<<"Le resultat est :o) :"<<expo;
	cout<<"Voulez vous continuer ?:"<<endl<<"1: OUI"<<endl<<"2: NON"<<endl;
	cin>>a;
	}

}

----------------------------------------------------------------------------------------------------------
                                                           FCTION PUISSANCE
#include<iostream.h>

//Appele de la fonction puissance
float puis(float m, int n)
{
	int c;
	int resultat;
	
	
	c=1; // compteur utiliser ds la boucle while
	resultat=n;

	if (m>0)
	{ // boucle pour une puissance +
		while (c<m)
		{
			c=c+1; // incrementation compteur
			resultat=resultat*n;
		
		}
		return resultat;
	}

	else
	{ // boucle pour une puissance egale 0 et/ou - 
		if (m==0)
		{
			cout<<"\nle resultat vaut 1\n";//<<endl;
			resultat=1;
            return resultat;
		}
		else if (m<0)
		{
			cout<<"la puissance n existe pas :-(( !! "<<endl;
			
		}
	}
	//return 0;
}

----------------------------------------------------------------------------------------------------------
                                                             FCTION FACTORIELLE
// code source factoriel
int factoriel (int f)
{
	int facto, i;
	facto=1;
	i=1;

	while (i<=f)
	{
		facto=facto*i;
		i=i+1;
	}
	return facto;
}

Codes Sources

A voir également

Ajouter un commentaire

Commentaires

cs_GoldenEye
Messages postés
527
Date d'inscription
vendredi 14 septembre 2001
Statut
Membre
Dernière intervention
6 octobre 2008
2 -
elle est où la fonction expo ?
cs_GoldenEye
Messages postés
527
Date d'inscription
vendredi 14 septembre 2001
Statut
Membre
Dernière intervention
6 octobre 2008
2 -
elle est où la fonction expo ?
cs_steven007
Messages postés
150
Date d'inscription
jeudi 24 janvier 2002
Statut
Membre
Dernière intervention
27 avril 2007
-
a quoi sert le prog?
cs_bouba
Messages postés
518
Date d'inscription
dimanche 2 décembre 2001
Statut
Membre
Dernière intervention
10 novembre 2007
3 -
T'as fonction factorielle est pas mal! Voici une autre façon assez courante de définir une fonction factorielle avec une fonction récursive:
int factoriel(int n)
{
if(n==0) return 1;
else if(n==1) return 1;
else return n*factoriel(n-1);
}

Voilà, bonne prog a tous!
gwen5484
Messages postés
2
Date d'inscription
jeudi 5 mars 2009
Statut
Membre
Dernière intervention
5 mars 2009
-
Je crois qu'une puissance négative se traduit par l'inverse de la puissance positive :
puis(-5, 12) = 1 / puis(5, 12)

A la ligne 95, il faudrait donc mettre " return 1/puis(-m, n); "

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.