Python - Débutant

Résolu
fantomette007 Messages postés 11 Date d'inscription   Statut Membre Dernière intervention   -  
fantomette007 Messages postés 11 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

J'utilise Notepad++ pour coder et cmd pour exécuter.
Je dois programmer une calculatrice simple et je sèche pour la suite de mon programme.

#Fonction qui calcule la somme de 2 nombres
def addition (nombre1,nombre2):
total = nombre1 + nombre2
return total

#fonction qui soustrait 2 nombres
def soustraction (nombre1,nombre2):
total = nombre1 - nombre2
return total

#Fonction qui multiplie 2 nombres
def multiplication (nombre1,nombre2):
total = nombre1 * nombre2
return total

#Fonction qui divise 2 nombres
def division (nombre1,nombre2):
resultat = nombre1 / nombre2
return resultat


#Programme principal

print "Entrez votre calcul"
calcul=raw_input()
calcul=calcul.split("+")
nombre1=float(calcul[0])
nombre2=float(calcul[1])
somme=addition(nombre1,nombre2)
print somme


Jusque là ça fonctionne pour l'addition mais comment faire pour les autres opérations en sachant que je débute et que je n'ai vu dans mes cours que les tests, les boucles, les chaines et les fonctions.
J'ai essayer pas mal de truc mais c'est la seule façon que j'ai trouvée pour fractionner ma chaine de caractères et la transformer en nombre.
Si quelqu'un à une idée pour la suite de mon programme ou une autre solution ???
Merci d'avance

1 réponse

Char Snipeur Messages postés 9813 Date d'inscription   Statut Contributeur Dernière intervention   1 299
 
Salut.
Si tu ne fait qu'une opération à la fois, tu peux faire des tests :
if calcul.find('+')!=-1 :
//split + calcul de somme
else if calcul.find('-')!= -1 :
//split + calcul de diférence
etc.
voilà l'algorithme, mais comme je ne suis pas très au courant de python, il faut peut être adapter la fonction find et le code retour.
0
fantomette007 Messages postés 11 Date d'inscription   Statut Membre Dernière intervention  
 
Merci pour l'info.

J'ai du traficoter un peu mais ça tourne.

Bonne soirée
0