(prog1.entrees-sorties)= # Les entrées et sorties ## Sortie La fonction ```print()``` permet d'afficher les valeurs passées en arguments, séparées par une virgule. Par exemple, le code suivant écrit 'Hello Georges' sur la console. ```python nom = 'Georges' print('Hello', nom) ``` La fonction print est très utile pour afficher du texte ou le contenu de variables. ```{question} Parmi les instructions suivantes, lesquelles sont correctes au niveau de la syntaxe? (On suppose que les variables a, b, et nom ont été définies.) {f}`print a` {v}`print(a)` {f}`print : b` {v}`print(a, b)` {v}`print('Echec')` {f}`print(Quel est votre nom?)` {f}`print : "Bonjour"` ``` Il existe une syntaxe pratique si on veut afficher du texte entremêlé avec des variables, les f-strings : ```{codeplay} --- exec: true --- aire = 3.15 print(f"Aire du rectangle est {aire}") ``` ````{exercise} Écrivez un programme qui affiche 'Bonjour'. ```{codeplay} --- hints: il ne faut pas oublier les parenthèses et les apostrophes. --- === ``` ```` ## Entrée La fonction ```python input()`` met le programme sur pause, le temps que l'utilisateur saisisse quelques choses au clavier et tape sur entrer. En général, comme on veut réutiliser ce qui a été entré, on stocke cela dans une variable, par exemple : ```python txt = input() ``` ````{exercise} Complétez la première ligne du code suivant pour que le programme : - attende la réponse de l'utilisateur son nom - puis écrit : "Bonjour" avec le nom rentré. ```{codeplay} --- hints: à quoi sert la fonction input()?. --- nom = ### print("Bonjour", nom) ``` ```` En général, on affiche toujours sur la console une question qui dit ce que l'utilisateur doit faire. Pour ce faire, il n'est pas nécessaire d'utiliser un print() : il suffit de mettre la question en argument : par exemple : ```python passe = input("Entrez le mot de passe : ") ``` ````{exercise} Complétez la première ligne du code suivant pour que le programme : - écrive la question "Quel est ton nom ?" - attende la réponse de l'utilisateur son nom - puis écrit : "Bonjour" avec le nom rentré. ```{codeplay} --- hints: il faut ajouter un paramètre à la fonction input(). --- nom = input() print("Bonjour", nom) ``` ```` La valeur renvoyée est toujours une chaine de caractères. Si on voulait saisir un nombre entier (int) ou un nombre à virgule (float), il ne faut pas oublier de convertir la saisie, par exemple : ```python nombre = int(input()) ``` ````{exercise} Le programme suivant demande à l'utilisateur sa taille en mètre et qui souhaite afficher le résultat en centimètres (en le multipliant par 100). Malheureusement, il y a une erreur. Corrige-là en ne modifiant que la première ligne. ```{codeplay} --- hints: | Si on multiplie un str par un nombre, cela répète le str plusieurs fois. Pour transformer un str en entier, on utilise la fonction int(). Les nombres à virgules sont du type float --- taille = input("Quelle est ta taille en mètres? (par exemple 1.76)") print("Taille en centimètre: ", taille * 100) ``` ````