misère de misère (rien contre toi mais contre la facon dont on vous enseigne tout ca...) : "int" c'est "integer" et en info c'est un entier (au passage, les entiers en python3 ne sont pas comme les entiers dans bien d'autres langages car...car quoi?? (que ceux qui sont en spé répondent) )Et nous n'avons pas encore vu le 'int' en réalité, donc je ne sais pas trop à quoi cela correspond...
Besoin d'aide pour un petit programme Python.
Re: Besoin d'aide pour un petit programme Python.
et donc ca donne?
Pas prof.
Prépa, école, M2, thèse (optique/images) ->ingé dans le privé.
Prépa, école, M2, thèse (optique/images) ->ingé dans le privé.
Re: Besoin d'aide pour un petit programme Python.
corderaide : oui mais ca c'est le cas en java aussi ou dans d'autre langages LE changement entre python2 et python3 pour qui fait un peu de numérique en pur python c'est....que le type "long" m'existe plus en python3. En python", on avait les int qui étaient des entiers machine et, si le nombre devenait trop grand, ca castait automatiquement en long. Un "long"c'est un nombre de digit non borné (enfin borné un jour par la mémoire dispo mais pas par une limite de 32 ou 64bits) Voir https://docs.python.org/2/library/stdty ... pesnumeric
En python3, il n'y a plus qu'un type entier appellé "int"...donc une multiplication de deux "int" en python3 est loin de couter la même chose selon que les nombres en questions "rentrent" dans un entier machine ou pas (dans ce cas, python passe à ca https://en.wikipedia.org/wiki/Arbitrary ... arithmetic et ca coute beaucoup plus cher (mais c'est transparent pour l'utilisateur)).
Bref, en python, la question "qu'est ce qu'un entier" est assez fun.
Un float en python c'est, sur toutes les plateformes que je connaisse, "IEEE-754 double precision”. Il n'y a pas de merdouille comme en C entre float et double.
En python3, il n'y a plus qu'un type entier appellé "int"...donc une multiplication de deux "int" en python3 est loin de couter la même chose selon que les nombres en questions "rentrent" dans un entier machine ou pas (dans ce cas, python passe à ca https://en.wikipedia.org/wiki/Arbitrary ... arithmetic et ca coute beaucoup plus cher (mais c'est transparent pour l'utilisateur)).
Bref, en python, la question "qu'est ce qu'un entier" est assez fun.
Un float en python c'est, sur toutes les plateformes que je connaisse, "IEEE-754 double precision”. Il n'y a pas de merdouille comme en C entre float et double.
Pas prof.
Prépa, école, M2, thèse (optique/images) ->ingé dans le privé.
Prépa, école, M2, thèse (optique/images) ->ingé dans le privé.
Re: Besoin d'aide pour un petit programme Python.
ps : cette histoire de taille de nombre est un gag dans les calculs de complexité. Parfois, on trouve des preuves de complexité qui "oublient" le fait qu'une addition ou une multiplication n'a un cout constant que si les nombres tiennent dans des entiers machine. Si l'algo utilise des nombres qui peuvent devenir trop grands pour un entier machine alors + et * ne coutent plus un temps constant mais plus que ca
Pas prof.
Prépa, école, M2, thèse (optique/images) ->ingé dans le privé.
Prépa, école, M2, thèse (optique/images) ->ingé dans le privé.
Re: Besoin d'aide pour un petit programme Python.
Bonjour,
Excusez moi ne pas avoir répondu à toutes vos réponses, mais je ne comprenais pas toutes vos explications...
J'ai réussi mon exercice, sauf que la suite traite de la question suivante: Je dois créer une fonction qui recevant un entier naturel non nul renvoie le produit des chiffres de ce nombre.
J'ai fait cela, mais ça ne fonctionne absolument pas, et je ne vois pas d'autres méthodes. Effectivement, nous n'avons pas réellement de cours là-dessus, et étant débutante, il est difficile de découvrir de soi-même la discipline...
Merci de votre aide !
De plus, j'ai déjà la somme, et je dois lier les deux, pour que lorsque je rentre cet entier il en ressorte directement la somme et le produit ....
Excusez moi ne pas avoir répondu à toutes vos réponses, mais je ne comprenais pas toutes vos explications...
J'ai réussi mon exercice, sauf que la suite traite de la question suivante: Je dois créer une fonction qui recevant un entier naturel non nul renvoie le produit des chiffres de ce nombre.
J'ai fait cela, mais ça ne fonctionne absolument pas, et je ne vois pas d'autres méthodes. Effectivement, nous n'avons pas réellement de cours là-dessus, et étant débutante, il est difficile de découvrir de soi-même la discipline...
Code : Tout sélectionner
def produit_des_chiffres (a):
produit = 1
while a != 0:
produit= produit * a%10
a = a//10
return produit
De plus, j'ai déjà la somme, et je dois lier les deux, pour que lorsque je rentre cet entier il en ressorte directement la somme et le produit ....
Dernière modification par cloclo816 le 23 oct. 2015 16:57, modifié 1 fois.
Re: Besoin d'aide pour un petit programme Python.
Protip : quand t'as un bug dans le genre, un moyen simple de trouver où tu as faux c'est d'afficher les calculs que fait ton programme :
Dans le shell :
On remarque rapidement que le problème c'est que produit * a%10 est interprété comme (produit * a)%10 et non produit * (a%10) comme on le voudrait.
Code : Tout sélectionner
def produit_des_chiffres (a):
produit = 1
while a != 0:
produit= produit * a%10
print("produit=", produit)
a = a//10
print("a=", a)
return produit
Code : Tout sélectionner
In [18]: produit_des_chiffres(1234)
produit= 4
a= 123
produit= 2
a= 12
produit= 4
a= 1
produit= 4
a= 0
Out[18]: 4
Re: Besoin d'aide pour un petit programme Python.
Ah oui je vois, d'accord merci beaucoup, en rajoutant les parenthèses ça fonctionne !
Re: Besoin d'aide pour un petit programme Python.
Une string ce n'est jamais d'un tableau qui contient le code ascii des lettres. (c'est FAUX car c'est de l'UTF8 en python3 mais bon c'est l'idée...c'est un vecteur de lettres.
Pas prof.
Prépa, école, M2, thèse (optique/images) ->ingé dans le privé.
Prépa, école, M2, thèse (optique/images) ->ingé dans le privé.
Re: Besoin d'aide pour un petit programme Python.
JustSayin' : sql c'est pour donner une idée de ce qu'est une base de données.
Pour le code : Souvent, au début de sup, on demande de coder des choses assez triviales qui existe dans le coeur ou dans la lib de python...donc ça ne peut pas être du très bon code python . Du moment qu'on le DIT aux étudiants je ne vois pas le problème. Petit à petit, quand les problèmes se compliquent, le code demandé commence à ressembler à du python.
Pour le code : Souvent, au début de sup, on demande de coder des choses assez triviales qui existe dans le coeur ou dans la lib de python...donc ça ne peut pas être du très bon code python . Du moment qu'on le DIT aux étudiants je ne vois pas le problème. Petit à petit, quand les problèmes se compliquent, le code demandé commence à ressembler à du python.
Pas prof.
Prépa, école, M2, thèse (optique/images) ->ingé dans le privé.
Prépa, école, M2, thèse (optique/images) ->ingé dans le privé.