Calculatrice Inverse Polonaise [Résolu]

Signaler
Messages postés
5
Date d'inscription
samedi 16 octobre 2004
Statut
Membre
Dernière intervention
18 novembre 2004
-
Messages postés
7
Date d'inscription
dimanche 28 novembre 2004
Statut
Membre
Dernière intervention
13 avril 2005
-
Bonjour,

Je dois réaliser une calculatrice de ce genre. Est-ce que qqun pourrait me fournir un ou des liens de site où je pourrais trouver des sources pour ce code. En effet, comme je ne sais pas comment démarrer, j'aimerais trouver un exemple pour pouvoir m'en inspirer et voir les fonctions utilisées.

Merci d'avance !

9 réponses

Messages postés
5
Date d'inscription
mercredi 10 novembre 2004
Statut
Membre
Dernière intervention
15 novembre 2004

Soit tu rentres tes nombres un a un et tu stockes dans ton tableau un à un classiquement.
Soit tu utilises les tableaux dynamiques...
Messages postés
2865
Date d'inscription
samedi 2 novembre 2002
Statut
Membre
Dernière intervention
11 mai 2009
10
ben on pourrais ptete t'aider ou te donner des infos, si tu nous disais à koi sert et ce ke c ke un calculatrice polonaise...
Bob...

"La chance accorde ses faveur aux esprits avertis..."
Messages postés
5
Date d'inscription
mercredi 10 novembre 2004
Statut
Membre
Dernière intervention
15 novembre 2004

en quel langage tu dois la réaliser ?

pour cette calculatrice tu devra certainement te servir des piles :

- une pour tes nombres {0--9}

- une pour tes operateur {+,/,*,-}

ensuite une fonction qui evalue l'expression que tu saisira au clavier, et une qui calcule le résultant en dépilant les valeurs.
Messages postés
5
Date d'inscription
samedi 16 octobre 2004
Statut
Membre
Dernière intervention
18 novembre 2004

Je dois la réaliser en C++
Elle aura au maximum 3 nombres entiers entrés, donc au max. 2 opérateurs (uniquement +, -, * ou /)

En fait, j'aimerais stocker toutes mes valeurs dans un seul tableau de type int., mais je ne sais pas comment repérer lorsque la 3ème valeur est entrée si c'est un nombre ou un opérateur. Et si c'est un opérateur comment le transformer en type caractère pour pouvoir l'utiliser.
Messages postés
5
Date d'inscription
mercredi 10 novembre 2004
Statut
Membre
Dernière intervention
15 novembre 2004

si tu connais les piles c'est la meilleure solution.
sinon comme au maximum tu as 2 opérateurs tu ne gére pas les priorités de calculs donc un tableau peut faire l'affaire meme si c'est assez brouillon !!!

Bon le probleme c'est que tu as du caractére avec des entiers(ou flottants pour la division) donc la solution serait de construire un tableau de caractéres et de transformer chaque caractére "nombre" en entier ok ?

cette petite fonction devrait faire l'affaire :)

float val(fchar z) // transforme le caractere en entier
{
float x=0;
x=(z-'0');
return x;
}
Messages postés
5
Date d'inscription
mercredi 10 novembre 2004
Statut
Membre
Dernière intervention
15 novembre 2004

CORRECTION (un f était de surplus ! )

float val(char z) // transforme le caractere en entier
{
float x=0;
x=(z-'0');
return x;
}
Messages postés
5
Date d'inscription
samedi 16 octobre 2004
Statut
Membre
Dernière intervention
18 novembre 2004

Merci pour ton aide mais j'ai encore une question :
en fait je ne connais pas les piles, alors j'aimerais bien travailler avec un tableau si possible

question: si l'utilisateur entre un nombre de 2 chiffres par ex., ce nombre sera donc stocké dans 2 cases du tableaux, alors comment récupérer le nombre si je ne sais pas la longueur du nombre ?
Messages postés
5
Date d'inscription
samedi 16 octobre 2004
Statut
Membre
Dernière intervention
18 novembre 2004

Merci beaucoup pour ton aide, grâce à tes conseils j'ai réussi à faire ma calculatrice !

Merci !
Messages postés
7
Date d'inscription
dimanche 28 novembre 2004
Statut
Membre
Dernière intervention
13 avril 2005

comment faire cet exercice avec des piles?