datatypes

TP1-PROG-07 - Notions de types#

Introduction#

Jusqu’à présent, nous avons écrit des programmes que l’on exécutait. Pour modifier la valeur d’une variable, nous la changions dans le programme, et nous exécutions à nouveau le programme. Exemple 1

Concaténer de la variable a qui vaut “Bonjour” par la variable b qui vaut ” Caroline” et affichage du résultat dans la variable c:

a = "Bonjour"
b = " Caroline"
c = a + b
print(c)

Pour modifier ce programme avec b = ” Jean”, il fallait modifier le programme :

a = "Bonjour"
b = " Jean"
c = a + b
print(c)

Ce n’est pas très interactif !

Mais l’ordinateur sait nous parler avec la fonction print().

Communiquer avec l’ordinateur#

Pour communiquer avec l’ordinateur, on utilise la fonction input() . Cette fonction place la valeur entrée par l’utilisateur du programme (vous !) dans une variable de type chaîne de caractères:

a = input()
b = input()
c = a + b
print(c)

Déjà plus interactif ! Mais pas très causant. On peut donc placer un texte avant :

a = "Bonjour"
b = input("Entrez votre prénom ")
c = a + b
print(c)

Ici on travaille avec des variable de type chaînes de caractères (des STRINGS) comme “Bonjour” entre guillemets.

Il est possible de simplifier le programme puisque la variable c ne sert à rien :

a = "Bonjour"
b = input("Entrez votre prénom ")
print(a+b)

Exercice 1#

Est-ce que le programme suivant fonctionne (calcule votre fortune dans 365 jours à un taux de 2%) :

compte = input("Valeur de votre compte en banque (en CHF) ")
compte365 = compte + (compte *0.02)
print("Dans un an, vous aurez ",compte365)

Passer d’un type à l’autre : le casting#

Python interdit de manipuler des données de type différentes. Passer d’un type à l’autre : Casting

Il est possible de manipuler des données d’un type vers un autre. C’est le casting :

  • la fonction str() transforme n’importe quelle variable en type chaîne de caractères (string)

  • la fonction int() transforme n’importe quelle variable en type entier (int)

  • la fonction float() transforme n’importe quelle variable en type à virgule flottante (float)

Exercice 2#

Transformer le type du compte pour que le programme fonctionne :

compte = input("Valeur de votre compte en banque (en CHF) ")
compte365 = compte + (compte *0.02)
print("Dans un an, vous aurez ",compte365)

Exercice 3#

Quel est le type de :

a = 10
b = 1.234
c = True
d = "Hello"
e = '1'
couleurs = ['red','blue','green']
f = 2 + 3j

Pour déterminer les types de ces variables, vous pouvez utiliser la fonction type() our alors l’inspecteur d’objets et le listeur de variables sous Thonny (Affichage -> Variables et Affichage > Inspecteur d'objetssélectionnés)

Exercice 4#

Programmez une calculette qui multiplie deux nombres entrés par l’utilisateur avec la fonction input()

Exercice 5#

Est-ce que votre calculette fonctionne avec des chiffres à virgule (float) ? Que faut-il modifier au programme pour qu’il accepte les nombres à virgule ?

Exercice 5b : calculette#

Codez maintenant une calculatrice capable d’exécuter les 4 opérations de base (addition, soustraction, multiplication, division). Attention aux valeurs “interdites” (par exemple : une division par 0).

Voici un algorigramme simplifié :

calculette

Exercice 6 : ma moyenne#

Écrivez un programme Python qui demande à l’utilisateur de saisir trois notes, stocke ces notes dans une liste, calcule la moyenne des notes à l’aide de la liste, puis affiche la moyenne avec deux décimales. Instructions :

  • Demandez à l’utilisateur de saisir les notes d’une discipline depuis le début de l’année.

  • Stockez ces notes dans une liste.

  • Calculez la moyenne des notes en utilisant la liste.

  • Affichez la moyenne avec deux décimales.

Exercice 7 (pour aller plus loin)#

Même donnée que l’exercice 6 mais avec toutes les disciplines. Vous devez obtenir la moyenne de chaque branche et la moyenne générale.

Exercice 8 (pour aller encore plus loin)#

Implémentez l’algorithme dit de “Promotion en 2M” décrit lors du cours d’algorithmique à votre calculateur de moyenne de l’exercice 6.