Enlever des décimales à un nombre en python
Résolu/Fermé
StarlineG
Messages postés
6
Date d'inscription
lundi 22 octobre 2018
Statut
Membre
Dernière intervention
22 octobre 2018
-
22 oct. 2018 à 13:23
StarlineG Messages postés 6 Date d'inscription lundi 22 octobre 2018 Statut Membre Dernière intervention 22 octobre 2018 - 22 oct. 2018 à 21:00
StarlineG Messages postés 6 Date d'inscription lundi 22 octobre 2018 Statut Membre Dernière intervention 22 octobre 2018 - 22 oct. 2018 à 21:00
A voir également:
- Enlever les chiffres après la virgule python
- Enlever pub youtube - Accueil - Streaming
- Citizen code python - Accueil - Outils
- Comment enlever une page sur word - Guide
- Comment activer les chiffres du clavier - Guide
- Application pour écrire les chiffre en lettre - Télécharger - Outils professionnels
3 réponses
[Dal]
Messages postés
6198
Date d'inscription
mercredi 15 septembre 2004
Statut
Contributeur
Dernière intervention
13 décembre 2024
1 096
Modifié le 22 oct. 2018 à 14:45
Modifié le 22 oct. 2018 à 14:45
Salut StarlineG,
Si j'ai bien compris ta question (qui n'est pas vraiment formulée), tu peux convertir le nombre en chaîne et afficher les caractères de la chaîne un par un.
donne :
Dal
Si j'ai bien compris ta question (qui n'est pas vraiment formulée), tu peux convertir le nombre en chaîne et afficher les caractères de la chaîne un par un.
import math st = str(math.pi) for i in range(len(st)): print(st[:i+1]) input("Press Enter to continue...")
donne :
python3 35651885.py
3
Press Enter to continue...
3.
Press Enter to continue...
3.1
Press Enter to continue...
3.14
Press Enter to continue...
3.141
Press Enter to continue...
3.1415
Press Enter to continue...
etc.
Dal
StarlineG
Messages postés
6
Date d'inscription
lundi 22 octobre 2018
Statut
Membre
Dernière intervention
22 octobre 2018
22 oct. 2018 à 17:23
22 oct. 2018 à 17:23
Mince j'avais pas vu mais ma question n'as pas été entièrement écrite sûrement un bug désolé je vous la remet :
Bonjour tout le monde,
je suis en train de créer un programme en python permettant de s'entrainer à réciter le nombre π (pi) (oui je sais sa sert à rien) :
import time
print("Programme permettant de s'entrainer à réciter pi")
time.sleep(2)
décimal = int(input("Combien de décimales voulez vous réciter ? "))
pi = float(input("Saissisez Pi (arrondiser vers le haut la dernière décimal) : "))
π = 3.14159265358979323846264338327950288419716939937510582097494459230781640628620899862803482534211706798214808651328230664709384460955058223172535940812848111745028410270193852110555964462294895493038196442881097566593344612847564823378678316527120190914564856692346034861045432664821339360726024914127372458700660631558817488152092096282925409171536436789259036001133053054882046652138414695194151160943305727036575959195309218611738193261179310511854807446237996274956735188575272489122793818301194912
π = round(π,décimal)
if pi == π :
print("Bravo")
donc voila je voulais savoir comment enlever un certain nombre de décimales sans arrondir le nombre car la fonction round() fait le taf mais elle arrondi le nombre bref quelqu'un sait comment faire ?
Bonjour tout le monde,
je suis en train de créer un programme en python permettant de s'entrainer à réciter le nombre π (pi) (oui je sais sa sert à rien) :
import time
print("Programme permettant de s'entrainer à réciter pi")
time.sleep(2)
décimal = int(input("Combien de décimales voulez vous réciter ? "))
pi = float(input("Saissisez Pi (arrondiser vers le haut la dernière décimal) : "))
π = 3.14159265358979323846264338327950288419716939937510582097494459230781640628620899862803482534211706798214808651328230664709384460955058223172535940812848111745028410270193852110555964462294895493038196442881097566593344612847564823378678316527120190914564856692346034861045432664821339360726024914127372458700660631558817488152092096282925409171536436789259036001133053054882046652138414695194151160943305727036575959195309218611738193261179310511854807446237996274956735188575272489122793818301194912
π = round(π,décimal)
if pi == π :
print("Bravo")
donc voila je voulais savoir comment enlever un certain nombre de décimales sans arrondir le nombre car la fonction round() fait le taf mais elle arrondi le nombre bref quelqu'un sait comment faire ?
[Dal]
Messages postés
6198
Date d'inscription
mercredi 15 septembre 2004
Statut
Contributeur
Dernière intervention
13 décembre 2024
1 096
Modifié le 22 oct. 2018 à 18:20
Modifié le 22 oct. 2018 à 18:20
Le mieux est de comparer des chaînes de caractères, que tu peux découper avec la notation st[i:j], car c'est un objet itérable.
https://docs.python.org/3/library/stdtypes.html#common-sequence-operations
Voilà ce que cela donne :
tu as des exemples là :
https://www.pythoncentral.io/cutting-and-slicing-strings-in-python/
https://docs.python.org/3/library/stdtypes.html#common-sequence-operations
Voilà ce que cela donne :
π = "3.14159265358979323846264338327950288419716939937510582097494459230781640628620899862803482534211706798214808651328230664709384460955058223172535940812848111745028410270193852110555964462294895493038196442881097566593344612847564823378678316527120190914564856692346034861045432664821339360726024914127372458700660631558817488152092096282925409171536436789259036001133053054882046652138414695194151160943305727036575959195309218611738193261179310511854807446237996274956735188575272489122793818301194912" # disons que l'utilisateur veut deviner 4 décimales décimales = 4 # et qu'il tape cette chaîne de caractères pi = "3.1415" # on découpe π en prenant 4 + 2 caractères (on compte # le 3 et le point aussi), que l'on compare à la saisie # de l'utilisateur if pi == π[:décimales+2]: print("Bravo")
tu as des exemples là :
https://www.pythoncentral.io/cutting-and-slicing-strings-in-python/
StarlineG
Messages postés
6
Date d'inscription
lundi 22 octobre 2018
Statut
Membre
Dernière intervention
22 octobre 2018
22 oct. 2018 à 18:36
22 oct. 2018 à 18:36
Super merci dal !
StarlineG
Messages postés
6
Date d'inscription
lundi 22 octobre 2018
Statut
Membre
Dernière intervention
22 octobre 2018
22 oct. 2018 à 18:54
22 oct. 2018 à 18:54
Je viens de m'en rendre compte que d'après mon programme je demande à l'utilisateur de mettre le nombre pi sauf que le problème c'est qu'un nombre avec le type float() ne peut pas faire cela !
StarlineG
Messages postés
6
Date d'inscription
lundi 22 octobre 2018
Statut
Membre
Dernière intervention
22 octobre 2018
22 oct. 2018 à 21:00
22 oct. 2018 à 21:00
Non c'est bon il fallait juste mettre en type str() pi.
22 oct. 2018 à 17:24