Les nombres en Python
Sommaire
- 1- Objectifs
- 2- Description
- 3- types numériques en Python
- 3.1- Les nombres entiers
- 3.2- Les nombres flottants
- 3.3- Le type
complex
(complexe) - 4- Les opérations arithmétiques et de comparaison sur les types numériques (
int, float
) - 4.1- Les opérations
- 4.2- Les comparaisons
- 4.3- Opération puis affectation
- 4.4- Conversion
- 5- Applications
- 5.1.1- Sommaire du cours Python
Les nombres en Python
-
Objectifs
- Connaitre les nombres en Python.
- Etre capable des travailler et manipuler les nombres en Python.
-
Description
- Il y a trois types numériques en Python :
- Le type entier
(int
) permet de représenter n’importe quel nombre entier, peu importe sa taille. - Le type flottant (
float
) permet de représenter des nombres comportant une partie décimale, compris entre 10−308 et 10308. La valeur spéciale math.inf représente l’infini. - Le type complexe (
complex
) permet de représenter des nombres complexes, où le nombre imaginaire se note j. - Python différencie les entiers des nombres à virgule flottante !.
- Cette différentiation est initialement, c’est surtout pour une question de place en mémoire mais, pour un ordinateur, les opérations que l’on effectue sur des nombres à virgule ne sont pas les mêmes que celles sur les entiers, et cette distinction reste encore d’actualité de nos jours.
- L’instruction
x=3
crée une variable de type int initialisée à 3 tandis quey=3.0
crée une variable de type float initialisée à 3.0. -
types numériques en Python
-
Les nombres entiers
- Le type entier se nomme
int
en Python (qui correspond à l’anglais (integer), c’est- à-dire entier). La forme d’un entier est un nombre sans virgule. -
Le type int n’est limité en taille que par la mémoire de la machine (pratiquement la taille d’un entier en Python est illimité)
-
Les nombres flottants
- Les flottants sont les nombres à virgule. Ils se nomment
float
en Python (ce qui signifie "flottant" en anglais). - La syntaxe d’un nombre flottant est celle d’un nombre à virgule (n’oubliez pas de remplacer la virgule par un point). Si ce nombre n’a pas de partie flottante mais que vous voulez qu’il soit considéré par le système comme un flottant, vous pouvez lui ajouter une partie flottante de 0 (exemple 52.0).
-
Un nombre de type
float
doit être écrit avec un point décimal (jamais avec une virgule) -
Le type
complex
(complexe) - Python possède par défaut un type pour manipuler les nombres complexes. La partie imaginaire est indiquée grâce à la lettre « j » ou « J ». La lettre mathématique utilisée habituellement, le « i », n’est pas utilisée en Python car la variable i est souvent utilisée dans les boucles.
-
Les opérations arithmétiques et de comparaison sur les types numériques (
int, float
) -
Les opérations
-
Les comparaisons
-
Opération puis affectation
-
Conversion
-
Les fonctions
int
etfloat
permettent de convertir un nombre quelconque ou une chaîne de caractères respectivement en un entier (arrondi) et en un nombre réel. - Il peut arriver que la conversion en un nombre entier ne soit pas directe. Dans l’exemple qui suit, on cherche à convertir une chaîne de caractères (voir Chaîne de caractères) en entier mais cette chaîne représente un réel. Il faut d’abord la convertir en réel puis en entier, c’est à ce moment que l’arrondi sera effectué.
-
Applications
- En utilisant Python IDLE, Evaluer les expressions suivantes:
- 15 / 2 + 13.5 // 5 <= 8
- 2 ** 2 * 5 % 3.5
- 7 + 3 // 2 == 8 % 2
- Ecrire un programme en python qui demande à l’utilisateur de saisir deux nombres a et b et de lui afficher leur somme
- Ecrire un programme en python qui demande à l’utilisateur de saisir un nombre entier et de lui afficher si ce nombre est pair ou impair
- Soit le code suivant, Les numéros de ligne sont inclus pour référence seulement.
- Quel code devez-vous utiliser à la ligne 03?
- A. print(« Félicitation pour ” + (int(end)-int(start)) + “ années de service!”)
- B. print(“Félicitation pour ” + str(int(end)-int(start)) + “ années de service!”)
- C. print(“Félicitation pour ” + int(end – start) + “ années de service!”)
- D. print(“Félicitation pour ” + str(end – start)) + “ années de service!”)
>>> a = 2 + 3j
>>> type(a)
complex
>>> a
(2+3j)
Opérateur | Syntaxe | Description | Exemple |
---|---|---|---|
Addition | + | Ajoute des valeurs de chaque côté de l’opérateur. | 2 + 2 donne 4 |
Soustraction | – | Soustrait l’opérande droit de l’opérande gauche. | 2.4–6.0 donne –3.6 |
Multiplication | * | Multiplie les valeurs de part et d’autre de l’opérateur | 3*2 donne 6 |
Division | / | Divise l’opérande gauche par l’opérande droit | 5/2.5 donne 2.0 |
Puissance | ** | Effectue un calcul exponentiel (puissance) sur les opérateurs | 3**3 donne 27 |
Division entière | // | La division des opérandes où le résultat est le quotient dans lequel les chiffres après la virgule sont supprimés. Mais si l’un des opérandes est négatif, le résultat est pondéré, c’est-à-dire arrondi à zéro (vers l’infini négatif)- | 10.0//3.0 donne 3.0 9//2 = 4 et 9.0//2.0 = 4.0, -11//3 = -4, -11.0//3 = -4.0 |
Reste de la division entière | % | Divise l’opérande gauche par l’opérande droit et renvoie le reste | 5%2 donne 1 |
Syntaxe Python | Signification | Exemple |
---|---|---|
>= | Strictement inférieur à | 2 < 3 donne True |
>= | Inférieur ou égal à | 2.75 <= 2 donne False |
>= | Strictement supérieur à | 3 > 2 donne True |
>= | Supérieur ou égal à | 2.5 >= 2 donne True |
== | Égal à | 2.5 == 2.5 donne True |
!= | Différent de | 2 != 2 donne False |
Syntaxe Python | Signification | Exemple |
---|---|---|
+= | addition puis affectation | 2 += 3 |
-= | soustraction puis affectation | 2.75 -= 2 |
*= | multiplication puis affectation | 3 *= 2 |
/= | division puis affectation | 2.5 /= 2 |
x = int(3.5)
y = float(3)
z = int("3")
print("x:", type(x), " y:", type(y), " z:", type(z))
# x: <class 'int'> y: <class 'float'> z: <class 'int'>
i = int ("3.5") # provoque une erreur
i = int (float ("3.5")) # fonctionne
-
Réponse
a=input(" Taper la valeur de a")
a=int(a)
n=a%2
if(n==0):
print("Le nombre a est pair")
else:
print("Le nombre a est impair")
01 start = input("Quel âge aviez-vous à votre date de début? ")
02 end = input("Quel âge as-tu aujourd'hui?")
03
Réponse
start = input("Quel âge aviez-vous à votre date de début? ")
end = input("Quel âge as tu aujourd'hui?")
print("Félicitation pour " + str(int(end)-int(start)) + " années de service!")