Back

Les nombres en Python

Les nombres en Python

  1. Objectifs

    • Connaitre les nombres en Python.
    • Etre capable des travailler et manipuler les nombres en Python.
  2. 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 que y=3.0 crée une variable de type float initialisée à 3.0.




  3. types numériques en Python

    1. 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é)

    2. 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)

    3. 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.
      • >>> a = 2 + 3j
        >>> type(a)
        complex
        >>> a
        (2+3j)
  4. Les opérations arithmétiques et de comparaison sur les types numériques (int, float)

    1. Les opérations
      • 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
    2. Les comparaisons
      • 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
    3. Opération puis affectation
      • 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
    4. Conversion
      • Les fonctions int et float permettent de convertir un nombre quelconque ou une chaîne de caractères respectivement en un entier (arrondi) et en un nombre réel.

        • 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'>
          
      • 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é.
        • i = int ("3.5") # provoque une erreur
          i = int (float ("3.5")) # fonctionne
  5. Applications

    1. En utilisant Python IDLE, Evaluer les expressions suivantes:
      • 15 / 2 + 13.5 // 5 <= 8
      • 2 ** 2 * 5 % 3.5
      • 7 + 3 // 2 == 8 % 2
    2. Ecrire un programme en python qui demande à l’utilisateur de saisir deux nombres a et b et de lui afficher leur somme
    3. 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
      • 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")
    4. Soit le code suivant, Les numéros de ligne sont inclus pour référence seulement.
      • 01 start = input("Quel âge aviez-vous à votre date de début? ")
        02 end = input("Quel âge as-tu aujourd'hui?")
        03
      • 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!”)

        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!")
        






Riadh HAJJI

Abonnez vous à notre chaîne YouTube gratuitement