Besoin de coder un compilateur de calcul.
Fermé
MEZIANE002
-
25 mai 2022 à 20:04
yg_be Messages postés 22730 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 26 avril 2024 - 26 mai 2022 à 13:15
yg_be Messages postés 22730 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 26 avril 2024 - 26 mai 2022 à 13:15
A voir également:
- Besoin de coder un compilateur de calcul.
- Telecharger code blocks avec compilateur - Télécharger - Langages
- Calcul moyenne excel - Guide
- Formule de calcul excel - Guide
- Code ascii de a - Guide
- Code de déverrouillage oublié - Guide
2 réponses
yg_be
Messages postés
22730
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
26 avril 2024
1 477
26 mai 2022 à 12:55
26 mai 2022 à 12:55
bonjour,
peux-tu spécifier le langage quand tu utilises les balises de code, comme expliqué ici?
as-tu une question à propos de ton code?
peux-tu spécifier le langage quand tu utilises les balises de code, comme expliqué ici?
as-tu une question à propos de ton code?
yg_be
Messages postés
22730
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
26 avril 2024
1 477
Modifié le 26 mai 2022 à 13:18
Modifié le 26 mai 2022 à 13:18
Ton utilisation de exec() et de ton dico do est un peu particulière.
Moi je suggère plutôt de mettre des fonctions dans le dico do, ainsi:
Pour l'opération "+", j'ai mis une fonction classique, tandis que j'ai mis des fonctions lambda pour les autres opérations. Comme cela tu as un exemple des deux méthodes.
Moi je suggère plutôt de mettre des fonctions dans le dico do, ainsi:
def opsum(a,b): return a+b do = { "+" : opsum, "-" : lambda a, b: a-b, "/" : lambda a, b: a-b, "*" : lambda a, b: a*b, "^" : lambda a, b: a**b, "%" : lambda a, b: a%b, "=" : lambda a, b: a == b } def calc(ope,a,b): if ope in do: return do[ope](a,b) print(calc("+",5,8))
Pour l'opération "+", j'ai mis une fonction classique, tandis que j'ai mis des fonctions lambda pour les autres opérations. Comme cela tu as un exemple des deux méthodes.