[Algo] A à la puissance B
Bonjour,
Voila j'ai fait un petit algo pour mettre un nombre A^B.
J'aimerai savoir si cette algo est correct ou non, il me semble que j'ai repris "tous" les cas pour les puissances d'un entier.
Voila l'algo en question (il s'agit d'une fonction)
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56
| Fonction puissance (E: A,B : entier) : entier
Déclaration
I, Pows, Z : entier
Début
Pows = A
Si A ! = 0 et B = 0
Alors Retourner 1
Sinon
Si A = 0 et B > 0
Alors
Retourner 0
Sinon
Si (A = 0 et B = 0) ou (A = 0 et B < 0)
Alors
Retourner "Je ne sais pas quoi mettre car il faut un entier or c'est une forme inderterminée"
Sinon
Si A > 0 et B > 0
Alors
Pour I allant de 1 à B faire
Pows <- Pows*A
Fin Pour
Retourner Pows
Sinon
Si A > 0 et B < 0
Alors
Z = B * -1
Pour I allant de 1 à Z faire
Pows <- Pows/A
Fin Pour
Retourner Pows
Sinon
Si A < 0 et B < 0
Alors
Pour I allant de 1 à -B faire
Pows <- Pows/A
Fin Pour
Retourner Pows
Sinon
Si A < 0 et B > 0
Alors
Pour I allant de 1 à B faire
Pows <- Pows*A
Fin Pour
Retourner Pows
Fin Si
Fin Si
Fin Si
Fin Si
Fin Si
Fin Si
Fin Si
Fin puissance |
Les questions que je me pose sont les suivantes:
Es-ce que l'algo est correcte ?
Es-ce qu'il n'y a pas plus simple pour calculer des puissances d'entier en "intératif" ?
J'ai aussi un problème pour la forme indeterminée que ce que je peux renvoyer car c'est de l'entier or il faudrait retourner une chaîne de caractère.
Il est vrai que je me suis inspiré d'un programme en C pour faire l'algo (je suis une bille en algo :mouarf: et encore plus en math :aie: )
Merci de votre aide :).
Cordialement,
Darkenshin.
.: Edit :.
Correction au niveau de l'initisalition et de la pagination ;)