Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1380 connectés 

  FORUM HardWare.fr
  Programmation
  Python

  problemes de division en Python

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

problemes de division en Python

n°2172744
Loupsio
Posté le 26-01-2013 à 20:32:55  profilanswer
 

Bonjour à tous
j'apprend le langage python sans professeur et j'aurais une question a propos du symbole "%"
si j'ai bien compris il s'agit du "mod" sous pascal? c'est a dire le reste de la division(ce que je comprend par "le premier chiffre après la virgule"
 
j'utilise Python3 et lorsque je fais 25%2 il me donne 1 (ce qui devrait être 5 puisque 25 par 2 donne 12.5)
et lorsque je fais 50%4 il me donne 2 (alors qu 'il s'agit mathématiquement de la même chose que 25 par 2)
cependant les chiffres ronds me donnent bien "0"
pourquoi dont ces chiffres pour les nombres a virgule?
 
Autre petit question,
Lorsque je fais 10/3
la réponse est 3.33333335
d’où vient ce 5? il s'agit normalement de "3" a l'infini

mood
Publicité
Posté le 26-01-2013 à 20:32:55  profilanswer
 

n°2172759
roondar
Posté le 27-01-2013 à 00:07:29  profilanswer
 

Il va falloir réviser tes cours de maths :
 
http://fr.wikipedia.org/wiki/Reste
 
Pour la division c'est bizarre :  
J'obtiens 3 si je je fais 10/3.

n°2172760
Terminapor
I'll see you rise.
Posté le 27-01-2013 à 00:08:14  profilanswer
 

Non, mod revoit le reste de la division euclidienne, pas le 1er chiffre.


---------------
Perhaps you don't deserve to breathe
n°2172784
gilou
Modérateur
Modzilla
Posté le 27-01-2013 à 11:36:24  profilanswer
 

Loupsio a écrit :

Bonjour à tous
j'apprend le langage python sans professeur et j'aurais une question a propos du symbole "%"
si j'ai bien compris il s'agit du "mod" sous pascal? c'est a dire le reste de la division(ce que je comprend par "le premier chiffre après la virgule"

Donc tu comprends mal.
Le reste d'une division, ce n'est pas ça.
A+,
 


---------------
There's more than what can be linked! --    Iyashikei Anime Forever!    --  AngularJS c'est un framework d'engulé!  --
n°2172796
Loupsio
Posté le 27-01-2013 à 14:47:56  profilanswer
 

Ah! au temps pour moi  :)  
effectivement si dès le départ je me trompais, ça pouvait pas le faire
Sinon pour la division,je trouve ça effectivement bizarre, le 5 (il me fait la même pour 60/4... bon je pense pas que ça change grand chose pour moi au final  
Merci beaucoup de vos réponses

n°2172850
gilou
Modérateur
Modzilla
Posté le 28-01-2013 à 12:16:27  profilanswer
 

Tu peux donc maintenant retenir la formule:
Si a et b sont deux entiers, b non nul, alors a/b et a%b sont les deux entiers (uniques) tels que:  
a = b * (a/b) + (a%b) et 0 <= (a/b) ,  0 <= |a%b| < |b|
a/b est le quotient de la division euclidienne, et a%b est le reste de cette division.
 
10 = 3*3 + 1 et 0 <= 1 < 3 donc 10/3 = 3 et 10%3 = 1
 
La division euclidienne, c'est une division qui ne sort pas du cadre des nombres entiers, donc pas de notion de virgule ou de notion de chiffres après la virgule (qu'on peut retrouver en considérant la fraction (a%b)/b, soit, dans l'exemple donné, 1/3 ce qui est en notation avec la virgule, 0.333...)
 
A+,


Message édité par gilou le 28-01-2013 à 14:06:12

---------------
There's more than what can be linked! --    Iyashikei Anime Forever!    --  AngularJS c'est un framework d'engulé!  --

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Python

  problemes de division en Python

 

Sujets relatifs
Problèmes tableauxAide pour compiler et décompiler du Python 2.7
ghostScript et PythonAjax : problème (niveau Iut/Bts)
python scripterPython et uncompyle2 - Problèmes techniques - aide
Chat en pythonFormater un fichier xml en python
Python utilisation variable globale 
Plus de sujets relatifs à : problemes de division en Python


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR