Rechercher : dans
Par :

Evaluer expression arithmétique ( JAVA )

Dernière réponse le 21 avr 2008 à 03:14:09 youssmak, le 3 avr 2008 à 00:35:16 
 Signaler ce message aux modérateurs

Bonjour,

Mon fils a un devoir a rendre pour le 04 avril je n'y connai strictement rien en Java et j'aimerais avoir de l'aide ...

En faite on veut programmer un outil en JAVA pour évaluer des expressions arithmétiques...

Tout d'abord l'utilisateur doit entrer au clavier une expression arithmétique du type : 2 + 3 * 4 - 6 à évaluer ( Il est admis que + et - sont de priorité plus faible que * et / ). Une fois cette expression évaluée, elle est affichée et le programme demande a nouveau s'il souhaite recommencer. Le programme s'arrête lorsque l'utilisateur répond par la négative.On veut aussi afficher le contenu de la pile apres chaque opération arithmétique ainsi que la partie de l'expression qui reste à évaluer.

On demande d'utiliser la classe stringTokenizer qui permet d'obtenir les différentes parties d'une chaine de caractères l'une après l'autre.La méthode hasmoretokens indique s'il reste des entités à extraire, elle retourne un booléen; la méthode nexttoken renvoie l'entité suivante;elle retourne une chaine de caractères de type string;

StringTokenizer st = newStringTokenizer("ceci est un test");
while (st.hasMoreTokens(st)){
TextWindow.printLine(st.nextToken());

Ce code fournit l'affichage à l'écran suivant:

Ceci
est
un
test

A propos du type String:

- txt.length() permet de calculer la longueur d'une chaine

- txt.charAt(int index) permet l'accès a un caractère de la chaine.

- comparaison de 2 chaines de caractères : if (s1.equals(s2)) , ou bien : s1.compareTo(s2)

- concaténation : string s3 = s1.concat ( s2);

- extraction : msg = ''nouveau texte''
txt = msg.substring(0, 7);
retourne la chaine nouveau

Configuration: Windows XP
Firefox 2.0.0.13

Meilleures réponses pour « Evaluer expression arithmétique ( JAVA ) » dans :
[Firefox] plugin Java Jre de Sun VoirA) Les différentes variantes Java chez Sun B) Installation sous Mandriva Limited Edition 2005 ETAPE 1 ETAPE 2: Création du lien symbolique C) Installation sous debian lenny D) Installation sous ubuntu hardy heron A) Les différentes...
Installer Java sous Ubuntu VoirPar défaut, Firefox n'est pas fourni avec Java. Voici comment procéder pour l'installer: Ouvrez un terminal (Menu Applications > Accessoires > Terminal) et tapez: sudo aptitude install sun-java6-jre sun-java6-plugin ou sudo aptitude install ...
[Logiciel libre] Installation firefox 2.0+java+flash VoirInstallation firefox 2.0+java+flash en ligne de commande A. INTRODUCTION B. INSTALLATION FIREFOX 1. Création d'environnement 2. Téléchargement et vérification de la signature 3. Installation de Firefox 4. Démarrage de l'application C....
Télécharger Java Runtime Environment VoirJava Runtime Environment (JRE) installe la machine virtuelle Java, permettant de jouer en ligne, de discuter avec des personnes dans le monde entier, de calculer les intérêts de votre prêt immobilier ou de visualiser des images en 3D. Ces...
Java: Les structures conditionnelles VoirQu'est-ce qu'une structure conditionnelle? On appelle structure conditonnelle les instructions qui permettent de tester si une condition est vraie ou non. Ces structures conditionnelles peuvent être associées à des structures qui se répètent...
PHP - Expressions régulières VoirQu'est-ce qu'une expression régulière? Les expressions régulières sont des modèles créés à l'aide de caractères ASCII permettant de manipuler des chaînes de caractères, c'est-à-dire permettant de trouver les portions de la chaîne correspondant au...
Java - Premier programme VoirPremière application avec Java La première chose à faire est de créer un simple fichier texte (sans mise en forme) et de taper les quelques lignes suivantes : // Votre premiere application en Java class FirstApp { public static void main...

1

sendoshi, le 3 avr 2008 à 08:32:58

Heu... et quelle est la question au juste?
Sur quoi as tu besoin d'aide? Pas sur les méthodes de la classe, aparemment

Répondre à sendoshi

2

youssmak, le 3 avr 2008 à 15:50:45

Merci de ta réponse.
j'aimerais savoir d'abord comment écrire sa en java :
L'utilisateur doit entrer au clavier une expression arithmétique du type : 2 + 3 * 4 - 6 à évaluer. Une fois cette expression évaluée, elle est affichée et le programme demande a nouveau s'il souhaite recommencer. Le programme s'arrête lorsque l'utilisateur répond par la négative.

Puis j'aimerais bien avoir de l'aide sur la structure du programme ...
Par quoi commencer ?
j'ai lu aussi qu'on peut utiliser des boucles on en a besoin ici ?

Répondre à youssmak

3

sendoshi, le 3 avr 2008 à 16:01:28

Ben... comme tous les problemes il y a plusieurs manieres de le résoudre.
mais si c'est pour ton fils, je te suggere de l'amener à réfléchir: si il a ça a faire en devoir, il a vu la matière nécéssaire à la réalisation du problème. je te rassure il est plus impressionnant qu'il n'est réellement complexe.

pour la structure, je lui suggererais un objet menu qui annoncerait la couler et recevrait l'entrée clavier puis l'enverait à un objet calcul (ou à la sortie, selon le choix de l'utilisateur). et l'objet calcul qui commencerait parparser la chaine de caractère (la traduire, quoi, à l'aide justement du tokenizer) avant de résoudre l'expression.

Pour les boucles, oui il y a des chances qu'il doive les utiliser.
Maintenant, pour le 4 avril, soit il s'est payé ta tête et l'a reçu depuis un bail, soit son prof est une vache, soit il est vraiment assez avancé que pour le faire tout seul en un rien de temps.

et si c'est pour toi, les conseils sont les mêmes, j'ai du mal avec l'algorithme FLPM, je préfère FLTM ;-p


bon courage Ma science est telle la confiture de fraise fraîche, débouchée un matin de printemps devant un parterre de fleurs à la campagne à quelques lieues à peine de vladivostok: moins j'en ai, et plus je l'étale.

Répondre à sendoshi

4

youssmak, le 3 avr 2008 à 18:11:41

Et comment écrire sa en java :
L'utilisateur doit entrer au clavier une expression arithmétique du type : 2 + 3 * 4 - 6 à évaluer. Une fois cette expression évaluée, elle est affichée et le programme demande a nouveau s'il souhaite recommencer. Le programme s'arrête lorsque l'utilisateur répond par la négative.

Répondre à youssmak

5

youssmak, le 3 avr 2008 à 19:30:07

Personne ?

Répondre à youssmak

6

 youssmak, le 21 avr 2008 à 03:14:09

Up!

Répondre à youssmak