Royaume du Maroc Université Ibn Tofail– Kénitra Faculté des sciences Dep. Physique Filière : Licence Proffetionnelle [Calcule de puissance en langage JAVA] [Compte rendu] Année universitaire : 2009-2010 02 décembre 2009 2 [Calcule de puissance en langage JAVA] | 02/12/2009 Sommaire 1 INTRODUCTION ............................................................... 2 OBJECTIF......................................................................... 3 OUTILS ET TECHNIQUES.................................................... 3-1 LES OUTILS : ........................................................ 3-1-1 LANGAGE JAVA (JDK): .................................................................. 3-1-2 ECLIPSE IDE: ..................................................................................... 3-2 TECHNIQUES: ............................................................................................ 3-2-1 CLASSE PUISSANCE (TRAITEMENT) : .......................................... Fonction itérative : Fonction récursive : Fonction binaire : 3-2-2 CLASSE MAINFUNCTION (INTERACTION AVEC USER) : .......... 4 CONCLUSION ................................................................... Introduction La théorie de la calculabilité est une branche de la logique mathématique et de l'informatique théorique. Alors que la notion intuitive de fonction calculable est aussi vieille que les mathématiques, la formalisation de ces notions a commencé dans la décennie afin de répondre à des problèmes fondamentaux de logique mathématique, ou Problème de la décision. La calculabilité cherche d'une part à identifier la classe des fonctions qui peuvent être calculées à l'aide d'un algorithme et d'autre part à appliquer ces concepts à des questions 4 [Calcule de puissance en langage JAVA] | 02/12/2009 ‘Présentation du travail’ Objectif fondamentales des mathématiques. Une bonne appréhension de ce qui est calculable et de ce qui ne l'est pas permet de voir les limites des problèmes que peuvent résoudre les ordinateurs. Outils et techniques L’objectif de ce travail que je vais présenter au dessus est d’appliquer la réalité en informatique, en d’autres termes; résoudre la problématique de calcul de puissance en utilisant trois méthodes différentes ayant le même résultat. Les outils : Langage JAVA : Le langage Java est un langage de Eclipse IDE: est un environnement de développement intégré libre extensible, universel et polyvalent, permettant de créer des projets de développement mettant en œuvre n'importe quel langage de programmation. Eclipse IDE est principalement écrit en Java (à l'aide de la bibliothèque graphique SWT, d'IBM), et ce langage, grâce à des bibliothèques spécifiques, est également utilisé pour écrire des extensions. La spécificité d'Eclipse IDE vient du fait de son architecture totalement développée autour de la notion de plugin (en conformité avec la norme OSGi) : toutes les fonctionnalités de cet atelier logiciel sont développées en tant que plug-in. 6 [Calcule de puissance en langage JAVA] | 02/12/2009 programmation informatique orienté objet créé par James Gosling et Patrick Naughton employés de Sun Microsystems avec le soutien de Bill Joy (cofondateur de Sun Microsystems en 1982), présenté officiellement le 23 mai 1995au SunWorld. Le langage Java a la particularité principale que les logiciels écrits avec ce dernier sont très facilement portables sur plusieurs systèmes d’exploitation tels que UNIX, Microsoft Windows,MacOS ou GNU/Linux avec peu ou pas de modifications. C’est la plate-forme qui garantit la portabilité des applications développées en Java. Techniques: Afin de réaliser le calcule de la puissance demandé par JAVA tel qu’il nous donne plusieurs techniques possibles, que je vais expliquer juste après la présentation de la classe en java qui traitera le problème. Classe Puissance (traitement) : Tout d’abord, j’ai crée un classe qui s’appelle Puissance et qui contient deux variables, un réel x et un entier n, et les deux en mode private pour écarter toute menace extérieur bugant le programme…et un constructeur pou initialiser les données membres de la classe, ainsi que de permettre différentes actions (définies par le concepteur de la classe) lors de l'instanciation. Pour nous, l’initialisation de fait en ajoutant deux paramètres encore un float qui représente la valeur qu’on calculera sa puissance et un entier qui représente la puissance. Maintenant, je vais expliquer trois différentes fonctions qui calculeront la puissance. 8 [Calcule de puissance en langage JAVA] | 02/12/2009 En prenant le nom PuissanceRecursive, cette fonction prend en paramètre un float a, un entier de b et déclare un autre float aa qui prend en valeur celle de la variable a (qui en paramètre), puis vérifie si la valeur de n est supérieur a 1, si vrai, elle va affecter a la variable aa le produit de la valeur a, le résultat de la fonction PuissanceRecu rsive (this.PuissanceRecursive).donc cette fonction va s’exécuter autant de fois que n > 1 avec une décrémentation du paramètre b (b-1) Fonction binaire : La dernière méthode fonction binaire, consiste à créer une variable a initialisée par la valeur 1, puis utilise une boucle while testant si n (la puissance déjà pris en paramètre) est toujours positive, et à l’intérieur de cette boucle itérative, en teste est ce que le modulo de n/2 égale à 1 ou non, si oui, on affecte à a le produit de l’ancienne valeur de a et x (aussi pris en paramètre et qui signifie la valeur qu’on désire calculer sa puissance). En suite on devise la valeur de n sur deux et on l’a réaffecte à la même variable, âpres et x reprends la valeur de x². Enfin, on retourne la valeur de a. Classe MainFunction (interaction avec user) : La classe MainFunction est une classe principale que le compilateur JAVA exécute car elle contient ma méthode Apres, crée normalement deux variables, un float qui s’appelle a (pour stocker le nombre) et un entier b (indiquant la puissance), en plus, déclare une méthode myScanner Le morceau de code suivant : demande à l’utilisateur de donner le numéro pour le stocker dans la variable a et la puissance en la stockant dans b, puis déclare une autre 10 [Calcule de puissance en langage JAVA] | 02/12/2009 Qui est prédéfinie dans la classe Scanner du package java.util Conclusion Donc en résumé on appelle fonction un sous-programme qui permet d'effectuer un ensemble d'instruction par simple appel de la fonction dans le corps du programme principal. Les fonctions permettent d'exécuter dans plusieurs parties du programme une série d'instructions, cela permet une simplicité du code et donc une taille de programme minimale.