#!/usr/bin/env python # coding: utf-8 # ### Validez la cellule suivante avant de commencer ce classeur # In[ ]: def interro(message,reponse): r=eval(input(message)) if r==reponse: print("Félicitation, la réponse est correcte") else: print("Erreur : la réponse était ",reponse) # # Algorithmique et Programmation : premiers pas en Python # ## Les variables # Elles sont un moyen de nommer les informations pour une utilisation dans un programme. # - Les variables permettent de stocker des valeurs. # - Chaque variable a un nom. Un exemple de nom de variable que nous utiliserons est monNombre. # - Pour stocker de l'information dans une variable, nous écrivons une commande en utilisant le signe égal (=) dans la manière suivante : # In[ ]: monNombre = 13 print(monNombre+1) # L'instruction suivante est très utile. Elle permet d'ajouter 1 au contenu de la variable a # In[ ]: a=3 a=a+1 print(a) # ### Quelques explications # Sur un plan mathématique, cette égalité n'a pas de sens. En informatique au contraire, # - la machine va commencer par calculer le membre de droite. Ici **a+1** est évalué à 3+1=4 # - Ce résultat est ensuite stocké dans la variable **a**. # # Donc au final, **a** contient bien la valeur 4. # ### Attention aux majuscules ! # # Regardez l'exemple suivant : # In[ ]: a=2 print(A) # la casse (distinction entre majuscules et minuscules) est prise en compte # ### Quelques explications # Le message d'erreur, bien qu'en anglais, est très explicite. Il faut prendre le temps de les étudier afin de comprendre vos erreurs lorsqu'elles surviennent. # # La variable nommée **A** n'est pas définie. En effet, la variable que nous avons créée s'appelle **a** en minuscule. # # En règle générale, on choisit la convention d'utiliser seulement des minuscules dans les noms de variable. ***ne jamais mettre d'espaces ni d'accents***. # ### A vous de jouer # Validez la cellule suivante. Essayez de vous mettre à la place de l'ordinateur pour deviner la valeur de **b**. # # Si vous obtenez une erreur, c'est que **vous n'avez pas validé la première cellule de ce classeur** comme demandé ! Validez cette première cellule puis revalidez la cellule suivante. # In[ ]: a=5 b=3 b=2*b-a interro("Quelle est la valeur de b ?",b) # ## Les différents types de variable # Les variables ne contiennent pas forcément des nombres, elles peuvent aussi abriter du texte, on parle alors de chaine de caractères. # In[ ]: ma_chaine="bonjour" autre_chaine="tout le monde" print(ma_chaine,autre_chaine) # Vous remarquerez au passage que l'instruction **print** peut afficher plusieurs choses à condition de les séparer par des virgules. # # Il y a encore bien d'autres objets que l'on peut mettre dans des variables. En voici quelques exemples, mais il en existe d'autres encore. # - *int* : entiers (ex : -2 ; 5) # - *float* : décimal (ex -2.0 ; 2e6=2000000.0) # - *str* : chaîne de caractère (ex 'Bonjour' ; "Autre exemple" ; "2+3" ; "5") # - *bool* : Booléen : Vrai ou Faux. (ex : 2==3, False, 3<4) # - *list* : Tableau ou liste (ex : [1,'toto', 2.0] ; [[1,2],[3,4]]) # In[ ]: chaine="Je suis une chaîne de caractère" print("chaine est de type",type(chaine)) nombre=3.14 print(nombre, "est de type",type(nombre)) # Comme vous pouvez le voir, contrairement à d'autres langages comme Algobox, Python devine tout seul le type des variables. Il est inutile de lui préciser par avance. Cela est extrèmement pratique ! # # Même si ce n'est pas conseillé, on peut aussi changer de type en cours de route : # In[ ]: a="Je suis une chaîne" print(a) a=12 # et maintenenant je suis un nombre !!! print(a) # ## Instruction Saisir # Avant d'entammer les boucles et les différents algorithmes, nous allons découvrir comment sous Python on réalise la saisie interactive d'une valeur dans une variable. # In[ ]: x=eval(input("Saisir la valeur de x : ")) print("vous avez saisi la valeur",x) # On utilise donc la fonction # > eval(input("Texte affiché à l'utilisateur")) # # L'avantage de cette fonction est que le contenu de la ligne est évalué. Vous pouvez vous amuser à saisir `2+2` !