Les Allergies
Alimentaires
Posez votre question Signaler

Evaluer expression arithmétique ( JAVA )

youssmak 5Messages postés 3 avril 2008Date d'inscription - Dernière réponse le 21 avril 2008 à 03:14
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
Lire la suite 

Evaluer expression arithmétique ( JAVA ) »

6 réponses
Réponse
+0
moins plus
heu... et quelle est la question au juste?
Sur quoi as tu besoin d'aide? Pas sur les méthodes de la classe, aparemment
youssmak- 3 avril 2008 à 15:50
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 ?
Ajouter un commentaire
Réponse
+0
moins plus
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
youssmak- 3 avril 2008 à 18:11
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.
Ajouter un commentaire
Réponse
+0
moins plus
personne ?
Ajouter un commentaire
Réponse
+0
moins plus
up!
Ajouter un commentaire
Ce document intitulé « Evaluer expression arithmétique ( JAVA ) » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?