|
|
|
|
Bonjour,
j'apprend le langage c et je voudrais savoir comment fair un programme qui calcul cosinus(x)
grace aux programmes secondaires factorielle et puissance avec cette formule :
cos(x)= 1-x²/2! + x^4/4! - x^6/6!...
ou encor avec mes fonctions secondaires :
cos(x) = 1- puiss(x,2)/fact(2)+puiss(x,4)/fact(4)-puiss(x,6)/fact6...
avec puiss(x,y)= x^y
j'ai vraiment plus d'idées..
merci d'avance
Configuration: Linux Firefox 3.0.3
Bonsoir Jean_B,
fonction factorielle(entier n): entier entier i = 1 entier résultat = 1 tant que i <= n faire résultat = résultat * i i = i + 1 fin tant que retourner résultat //on n'a besoin que des puissances positives entières, ça simplifie l'algorithme fonction puissance(réel x, entier y) : réel entier itérateur = 1 réel résultat = 1 tant que itérateur <= y faire résultat = résultat * x itérateur = itérateur + 1 fin tant que retourner résultat Cordialement, rtfm and jfgi |
Merci
|
Rebonsoir,
float Cosinus(float x){
float Pi = 3.141592654;
int ordre = 100; //l'ordre que tu avais dans ton algorithme
float cos = 0;
for (int i = 0; i < ordre; i++) {
cos = cos + Puissance(-1, i) * Puissance(x, 2 * i) / Factorielle(2 * i);
}
return cos;
Je ne pense pas qu'il soit nécessaire de restreindre l'intervalle à ]-2Pi, 2Pi[, le développement limité doit être valide quelque soit x (je n'ai pas fait de maths depuis un moment donc il est possible que je me trompe). Cordialement, rtfm and jfgi |
Rere bonsoir,
|
C'est bon j'ai réussi j'ai changé la maniere de précision et sa fonctionne :
|