Académique Documents
Professionnel Documents
Culture Documents
En Python chaque ligne donne une instruction. Pour séparer certains blocs ( fonctions, conditions, Les listes sont mutables. On peut les modifier modifier
boucles etc.) on utilise l’indentation (4 espaces). Les commentaires sont précédés d’un # et ne sont
pas exécutés.
>>> L.pop(0) # renvoyer l'élément 0 et l'effacer de la liste
'a'
>>> L
note = 20 # instruction ['b', 'c'] # la liste a bien été modifiée.
if note == 20: # condition >>> L.append("d") # ajouter un élément à la fin de la liste
print("super note !") # n'est effectué que si x vaut 20 >>> L
print("au revoir") # sera toujours effectué ['b', 'c', 'd']
La syntaxe Python impose de respecter l’indentation. Chaque bloc qui est indenté est précédé du
symbole : c) Les tuples #
Ce sont des séries indexées d’objets. Ils sont notés avec des parenthèses. Les tuples ne sont pas
Opérations de base : #
mutables. C’est comme les listes, mais pas mutable et plus rapide.
Ce sont des tables d’associations entre une clé et une valeur. On les notes entre accolades.
Certaines agissent différemment selon l’objet : 'a' + 'b' == 'ab' Attention, dans les accolades on utilise : .
int : les entiers naturels. Ex: 2 Permettent de réaliser des choix ou de tester des résultats.
float : les nombres à virgule flottantes. Ex: 3.14 s’utilisent dans cet ordre : if, elif (optionnel), else (optionnel)
La syntaxe est :
4. Types complexes # Les comparaisons entre nombres sont : ==, >, <, >=, <=, !=
>>> 4 in [1, 2, 3]
False
>>> "DM" in {"DS": 5, "DM": 1}
a) Les chaînes de caractères. Type str #
True
Ce sont des séries de caractères affichables à l’écran (simplification abusive). En Python 3 ils
sont encodés en utf-8 . On en reparlera. On les note avec des apostrophes ou des guillemets. On peut tester plusieurs conditions grace aux opérateurs booléens and et or
Les chaînes de caractères ne sont pas mutables. Mais on peut opérer dessus ! Il existe deux types de boucles :
Boucle for #
b) Les tableaux ou listes. Type list #
>>> for k in range(0, 3, 1): # k varie de 0 à 2 avec un pas de 1 On retourne une valeur avec return truc_de_sortie
... k # indentation !!!
...
0
1 def carre(x):
2 '''
documentation : détaillé ci-dessous
'''
return x ** 2
On peut parcourir une liste, un tuple, une chaîne ou un dictionnaire (vu plus tard).
Effectuer quelque chose tant qu’une condition est vraie. les paramètres retournés :
'''
Renvoie le carré d'un nombre
Exemple : chaque mois je gagne 100€. Combien de mois avant d’avoir 2.000€ ? @param x: (int ou float)
@return: (int ou float)
>>> carre(2)
4
>>> mois = 0 # sera mon compteur '''
>>> somme = 0 # je vais ajouter mes revenus dans somme
>>> while somme < 2000: # tant que ma somme est plus petite que 2000...
... somme = somme + 100 # je cumule ma somme
... mois = mois + 1 # et je compte
...
>>> mois # remarquez que mois contient la bonne valeur...
Indications de types #
20
def somme_trois_nombres(a, b, c):
Pour l’arrêter, on peut utiliser le mot clé break """
Renvoie la somme des trois nombres.
@param a: (int)
@param b: (int)
@param c: (int)
Fonctions # @return: (int)
"""
return a + b + c
Les fonctions sont des morceaux de code qu’on peut appeler quand on le souhaite. def somme_trois_nombres(a: int, b: int, c: int) -> int:
"""Renvoie la somme des trois nombres."""
return a + b + c
Si elle font autre chose, comme afficher du texte ou modifier la mémoire, on parle d’ effet de bord. utiliser input permet de demander à l’utilisateur d’un programme de taper une valeur.
Ce n’est pas le paramètre d’entrée d’une fonction
utiliser print affiche du texte, ce n’est pas le paramètre de sortie d’une fonction.
Exemples # Paramètre de sortie : return
Par exemple, len est une fonction qui renvoie la longueur d’un itérable.
Les erreurs ou exceptions #
>>> len("abcd")
4
Son paramètre d’entrée est un itérable ( list, tuple, dict, str etc.)
Quand un programme génère une erreur, Python lève une exception.
Sa valeur de retour est un int
À ma connaissance elle n’a pas d’effet de bord. Il affiche alors un message commençant par Traceback et se lisant de bas en haut :
>>> l = [0, 1, 2]
Autre exemple, print est une fonction qui prend une chaîne ou n’importe quel objet qu’on peut écrire
>>> l[4]
à l’écran et qui l’affiche. Elle renvoie None (rien). Traceback (most recent call last):
File "<stdin>", line 1, in <module>
IndexError: list index out of range
Son paramètre d’entrée est une chaîne ou n’importe quel objet affichable
IndentationError : mélange entre espaces et tabulations ou indentation incorrecte 14-1. Énoncés des exercices▲
Ils sont soit simples, soit moins simples (notés ? dans le titre)
ZeroDivisionError : division par 0,
soit plus difficiles (notés ??).
IndexError : aller chercher un élément inexistant dans une liste,
>>> assert 2 == 3 Écrire un programme qui, à partir de la saisie d'un rayon et d'une hauteur, calcule le
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
volume d'un cône droit.
AssertionError
14-2-2. Numéro 2▲
try: ... except Exception as e: ... #
Une boucle while : entrez un prix HT (entrez o pour terminer) et affichez sa valeur
On peut attraper une exception prévisible avec try except . C’est à la limite du programme mais vous TTC.
le rencontrerez souvent dans le code.
14-2-3. Numéro 3▲
C’est un procédé courant, en particulier pour gérer les saisies d’utilisateur.
Une autre boucle while : calculez la somme d'une suite de nombres positifs ou nuls.
Comptez combien il y avait de données et combien étaient supérieures à 100.
14-2-4. Numéro 4▲
L'utilisateur donne un entier positif n� et le programme affiche PAIR s'il est divisible
par 2, IMPAIR sinon.
14-2-5. Numéro 5▲
14-2-6. Numéro 6 ?▲
Sélectionnez
diviseurs propres)
premier
14-2-7. Numéro 7▲
e≈∑i=0n1i!�≈∑�=0�1�!
Pour cela, définissez la fonction factorielle et, dans votre programme principal, saisissez
l'ordre n� et affichez l'approximation correspondante de e�.
14-2-8. Numéro 8▲
chaîne : attgcaatggtggtacatg
Un gardien de phare va aux toilettes cinq fois par jour. Or les WC sont au rez-de-
séquence : ca
chaussée…
Il y a 10.53 % de "ca" dans votre chaîne.
Écrire une procédure (donc sans return) hauteurParcourue qui reçoit deux
paramètres, le nombre de marches du phare et la hauteur de chaque marche (en cm), et 14-2-12. Numéro 12▲
qui affiche :
Il s'agit d'écrire, d'une part, un programme principal et, d'autre part, une fonction
utilisée dans le programme principal.
Pour x marches de y cm, il parcourt z.zz m par semaine. Dans le programme principal :
On n'oubliera pas :
construire la liste en appelant la fonction listAleaInt() ;
14-2-9. Numéro 9▲ Comme précédemment, il s'agit d'écrire, d'une part, un programme principal et, d'autre
part, une fonction utilisée dans le programme principal.
Le tableau prédira les différentes heures possibles pour toutes les vitesses de 100 km/h
à 300 km/h, par pas de 10 km/h, les résultats étant arrondis à la minute inférieure. Fonction renvoyant plusieurs valeurs sous forme d'un tuple.
Écrire une fonction minMaxMoy() qui reçoit une liste d'entiers et qui renvoie le
Écrire une procédure tchacatchac qui reçoit la vitesse du train et qui minimum, le maximum et la moyenne de cette liste. Le programme principal appellera
affiche l'heure du drame ; cette fonction avec la liste : [10, 18, 14, 20, 12, 16].
14-2-11. Numéro 11 ?▲
Saisir un entier entre 1 et 3999 (pourquoi cette limitation ?). L'afficher en nombre
romain.
Un programme principal saisit une chaîne d'ADN valide et une séquence d'ADN valide
(valide signifie qu'elles ne sont pas vides et sont formées exclusivement d'une
combinaison arbitraire de "a", "t", "g" ou "c"). 14-2-16. Numéro 16 ?▲
Écrire une fonction valide qui renvoie vrai si la saisie est valide, faux sinon.
Améliorer le script précédent en utilisant la fonction zip().
Écrire une fonction saisie qui effectue une saisie valide et renvoie la valeur saisie sous
forme d'une chaîne de caractères. 14-2-17. Numéro 17▲
Écrire une fonction proportion qui reçoit deux arguments, la chaîne et la séquence et Un tableau contient n� entiers (2<n<1002<�<100) aléatoires tous compris entre 0
qui retourne la proportion de séquence dans la chaîne (c'est-à-dire son nombre
et 500. Vérifier qu'ils sont tous différents.
d'occurrences).
Le programme principal appelle la fonction saisie pour la chaîne et pour la séquence 14-2-18. Numéro 18▲
et affiche le résultat.
Proposer une autre version plus simple du problème précédent en comparant les
Exemple d'affichage : longueurs des tableaux avant et après traitement ; le traitement consiste à utiliser une
structure de données contenant des éléments uniques.
Sélectionnez
14-2-19. Numéro 19▲
# Import
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
L'utilisateur donne un entier n� entre 2 et 12, le programme donne le nombre de façons
de faire n� en lançant deux dés. ~~~~~~~~
# Définition de fonction
Même problème que le précédent, mais avec n� entre 3 et 18 et trois dés.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
==============================================================
On appelle nombre premier tout entier naturel supérieur à 1 qui possède =====
exactement deux diviseurs, lui-même et l'unité.
if __name__=='__main__' :
On appelle diviseur propre de n, un diviseur quelconque de n, n exclu.
verif(abs(-6/2), 3, comment="\nTeste la fonction 'abs' :")
Un entier naturel est dit parfait s'il est égal à la somme de tous ses
diviseurs propres.
argument.
Les trois autres fonctions vérifient la propriété donnée par leur définition et l'initialisation de deux listes : parfaits et chanceux ;
retourne un booléen. Si par exemple la fonction estPremier vérifie que
son argument est premier, elle retourne True, sinon elle retourne False. une boucle de parcours de l'intervalle [2,1000][2,1000] incluant les tests
nécessaires pour remplir ces listes ;
La partie de test doit comporter quatre appels à la fonction verif permettant de enfin l'affichage de ces listes.
tester somDiv(12), estParfait(6), estPremier(31) et estChanceux(11).
Exercice 1
Sélectionnez
Cacher le codeSélectionnez
# !/usr/bin/env python
#============================================================= # Import
================= ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# fichier : verif.py ~~~~~~~~
# from math import pi
# auteur : Bob Cordeau
Exercice 5
Cacher le codeSélectionnez
Cacher le codeSélectionnez
# -*- coding : utf8 -*-
# Programme principal
s.v.p. :"))
Exercice 3
cpt = 0
Cacher le codeSélectionnez
while n%2 == 0:
========================================================= Exercice 6
somme += x
# -*- coding : utf8 -*- print("Diviseurs propres sans répétition de", n, " :", end='
"""Parité.""" ')
while i <= p :
========================================================= cpt += 1
while n < 1: i += 1
return 200*nbrePermis
Cacher le codeSélectionnez
r = 1
r *= i
if payer == 0:
========================================================= else :
for i in range(n) :
Cacher le codeSélectionnez
exp = exp + 1.0/fact(i)
Exercice 8
# Définition de fonction
Cacher le codeSélectionnez
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
heure = 9 + int(170/v)
print("Pour { :d} marches de { :d} cm, il parcourt { :.2f} .format(v, heure, minute))
=========================================================
Exercice 11
hauteurParcourue(nbMarches, hauteurMarche)
Cacher le codeSélectionnez
Exercice 9
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ret = ret and c in "atgc" print("\tt[0] =", t[0], "\tt[iMin] =", t[iMin])
chaîne <a>."""
Cacher le codeSélectionnez
return 100*a.count(s)/len(a)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# Programme principal def listAleaFloat(n) :
========================================================= "Retourne une liste de <n> flottants aléatoires"
adn = saisie("chaîne") return [random() for i in range(n)]
seq = saisie("séquence")
# Programme principal
print('Il y a { :.2f} % de"{ :s}" dans votre chaîne.' =========================================================
.format(proportion(adn, seq), seq)) n = int(input("Entrez un entier [2 .. 100] :"))
Exercice 12 while not(n >= 2 and n <= 100) :
~~~~~~~~ Exercice 14
if i > max :
iMin = t.index(min(t)) # calcule l'index du minimum de la max = i
liste som += i
return (min, max, som/len(liste)) n -= 10
if n >= 9:
========================================================= n -= 9
s += "V"
l = minMaxMoy(lp) if n >= 4:
Exercice 15 n -= 4
while n >= 1:
Cacher le codeSélectionnez
s += "I"
=========================================================
Cacher le codeSélectionnez
n = int(input('Entrez un entier [1 .. 4000[ : '))
while not(n >= 1 and n < 4000) : """Nombres romains (version 2)."""
# globales
~~~~~~
s += "M" [1000, 900, 500, 400, 100, 90, 50, 40, 10, 9,
n -= 1000 5, 4, 1],
if n >= 900: [ "M", "CM", "D", "CD", "C", "XC", "L", "XL", "X", "IX",
n -= 900 )
if n >= 500:
n -= 500 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
s += "CD" res = []
s += "C" num -= d
if n >= 90:
n -= 90 =========================================================
n -= 50 Exercice 17
if n >= 40:
Cacher le codeSélectionnez
s += "XL"
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
from random import seed, randint """Retourne une liste de <n> entiers aléatoires entre <a>
et <b>."""
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
return [randint(a, b) for i in range(n)] while not(n >= 1 and n <= 100) :
# Programme principal
if len(avant) == len(apres) :
print(avant)
tousDiff = True
Cacher le codeSélectionnez
i = 0
if tousDiff : s = 0
print("\nTous les éléments sont distincts.") for i in range(1, 7) :
else : for j in range(1, 7) :
print("\nAu moins une valeur est répétée.") if i+j == n :
print(t) s += 1
Exercice 18
=========================================================
while I[j] == 6:
s = 0 I[j] = 1
for i in range(1, 7) : j += 1
for k in range(1, 7) :
s += 1 dés.".format(cpt, s, nbd))
Exercice 22
~~~~~~~
# Globale MAX = 8
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
MAX = 8 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
def calcul(d, n) :
s.v.p. :".format(MAX)))
if som == s :
j = 0 s.v.p. :"
print("Il y a { :d} façon(s) de faire { :d} avec { :d} dés." verif(estPremier(31), True)
#============================================================= #=============================================================
================= =================
# #
#============================================================= #=============================================================
================= =================
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
"""Retourne la somme des diviseurs propres de <n>.""" from parfait_chanceux_m import estParfait, estChanceux
som_div = 1
if n % div == 0: =========================================================
if estParfait(n) :
.format(len(chanceux), chanceux))
def estChanceux(n) :
est_chanceux = True
i*i)
return est_chanceux
Révision[modifier | modifier le wikicode]
# Auto-test Dans ce qui suit, nous n'allons pas apprendre de
==============================================================
nouveaux concepts mais simplement utiliser tout ce que
nous connaissons déjà pour réaliser de vrais petits
=====
programmes.
if __name__== '__main__' :
9. a = 5 Note
10. b = 2
11. if (a==5) & (b<2): N >= 80 %
12. print '"&" signifie "et"; on
peut aussi utiliser le mot 80 % > N >= 60 %
"and"'
13. a, b = 2, 4
60 % > N >= 50 %
14. if (a==4) or (b!=4):
15. print 'gagné'
16. elif (a==4) or (b==4): 50 % > N >= 40 %
17. print 'presque gagné'
18. a = 1 N < 40 %
19. if not a:
20. print 'gagné'
21. elif a:
22. print 'perdu' 30. Soit la liste suivante :
['Jean-Michel', 'Marc',
'Vanessa', 'Anne',
23. Reprendre le programme c) avec a = 'Maximilien', 'Alexandre-
0 au lieu de a = 1. Que se passe-t-il ? Benoît', 'Louise']
Conclure ! Ecrivez un script qui affiche chacun
24. Écrire un programme qui, étant de ces noms avec le nombre de
données deux bornes entières a et b, caractères correspondant.
additionne les nombres multiples de 3 31. Écrire une boucle de programme qui
et de 5 compris entre ces bornes. demande à l'utilisateur d'entrer des
Prendre par exemple a = 0, b = 32 ® notes d'élèves. La boucle se
le résultat devrait être alors 0 + 15 + terminera seulement si l'utilisateur
30 = 45. entre une valeur négative. Avec les
Modifier légèrement ce programme notes ainsi entrées, construire
pour qu'il additionne les nombres progressivement une liste. Après
multiples de 3 ou de 5 compris entre chaque entrée d'une nouvelle note (et
les bornes a et b. Avec les bornes 0 donc à chaque itération de la boucle),
et 32, le résultat devrait donc être : 0 afficher le nombre de notes entrées,
+ 3 + 5 + 6 + 9 + 10 + 12 + 15 + 18 + la note la plus élevée, la note la plus
20 + 21 + 24 + 25 + 27 + 30 = 225. basse, la moyenne de toutes les
25. Déterminer si une année (dont le notes.
millésime est introduit par l'utilisateur) 32. Ecrivez un script qui affiche la valeur
est bissextile ou non. (Une année A de la force de gravitation s'exerçant
est bissextile si A est divisible par 4. entre deux masses de 10000 kg ,
Elle ne l'est cependant pas si A est un pour des distances qui augmentent
multiple de 100, à moins que A ne suivant une progression géométrique
soit multiple de 400). de raison 2, à partir de 5 cm (0,05
26. Demander à l'utilisateur son nom et mètre). La force de gravitation est
son sexe (M ou F). En fonction de régie par la formule
ces données, afficher « Cher Exemple d'affichage :
Monsieur » ou « Chère
Mademoiselle » suivi du nom de 33. d = .05 m : la force vaut
l'élève. 2.668 N
27. Demander à l'utilisateur d'entrer trois 34. d = .1 m : la force vaut
longueurs a, b, c. À l'aide de ces trois 0.667 N
longueurs, déterminer s'il est possible 35. d = .2 m : la force vaut
de construire un triangle. Déterminer 0.167 N
ensuite si ce triangle est rectangle,
isocèle, équilatéral ou quelconque.
36. d = .4 m : la force vaut 42. print "L'année", a, ch,
0.0417 N "bissextile."
37. etc. 43.
44. Variante (proposée par Alex
Misbah) :
45. a=input('entrée une année:')
46.
Solution (cliquez) 47. if (a%4==0) and ((a%100!=0) or
(a%400==0)):
48. print a,"est une année
1. Réfléchissez ! bissextile"
2. Réfléchissez ! 49. else:
3. Réfléchissez ! 50. print a,"n'est pas une
année bissextile"
51.
4. # Traitement de nombres entiers 52. Variante (de Mik)
compris entre deux limites 53. a=input('année:')
5. 54. if (a%4==0 and a%100!=0)or(a
6. print "Veuillez entrer la %400==0):
limite inférieure :", 55. print "bi6"
7. a = input() 56. else:
8. print "Veuillez entrer la 57. print "nbi6"
limite supérieure :",
9. b = input()
10. s = 0 # somme 58.
recherchée (nulle au départ) 59. Réfléchissez !
11. # Parcours de la série des
nombres compris entre a et b : 60. from sys import exit #
12. n = a # module contenant des fonctions
nombre en cours de traitement système
13. while n <= b: 61.
14. if n % 3 ==0 and n % 5 ==0: 62. print """
# variante : 'or' au lieu de 63. Veuillez entrer les longueurs
'and' des 3 côtés
15. s = s + n 64. (en séparant ces valeurs à
16. n = n + 1 l'aide de virgules) :"""
17. 65. a, b, c = input()
18. print "La somme recherchée 66. # Il n'est possible de
vaut", s construire un triangle que si
chaque côté
19. 67. # a une longueur inférieure à
la somme des deux autres :
68. if a < (b+c) and b < (a+c) and
20. # Années bissextiles c < (a+b) :
21. 69. print "Ces trois longueurs
22. print "Veuillez entrer l'année déterminent bien un triangle."
à tester :", 70. else:
23. a = input() 71. print "Il est impossible de
24. construire un tel triangle !"
25. if a % 4 != 0: 72. exit() # ainsi
26. # a n'est pas divisible par l'on n'ira pas plus loin.
4 -> année non bissextile 73.
27. bs = 0 74. f = 0
28. else: 75. if a == b and b == c :
29. if a % 400 ==0: 76. print "Ce triangle est
30. # a divisible par 400 - équilatéral."
> année bissextile 77. f = 1
31. bs = 1 78. elif a == b or b == c or c == a
32. elif a % 100 ==0: :
33. # a divisible par 100 - 79. print "Ce triangle est
> année non bissextile isocèle."
34. bs = 0 80. f = 1
35. else: 81. if a*a + b*b == c*c or b*b +
36. # autres cas ou a est c*c == a*a or c*c + a*a == b*b
divisible par 4 -> année :
bissextile 82. print "Ce triangle est
37. bs = 1 rectangle."
38. if bs ==1: 83. f = 1
39. ch = "est" 84. if f == 0 :
40. else: 85. print "Ce triangle est
41. ch = "n'est pas" quelconque."
86. 133. min = 500
87. Variante (de Mik) # valeur supérieure à toute
88. a,b= input('a:'),input('b:') note
89. if b>a: 134. max, tot, i = 0, 0,
90. print '"c":](',b-a,'); 0
(',a+b,')[' 135. nn = len(notes)
91. else: # nombre de notes déjà entrées
92. print '"c":](',a-b,'); 136. while i < nn:
(',a+b,')[' 137. if notes[i] >
93. c=input('c:') max:
94. if a < (b+c) and b < (a+c) and 138. max =
c < (a+b) : notes[i]
95. print 'bien un triangle' 139. if notes[i] <
96. else: min:
97. print 'impossible 140. min =
constrution triangle' notes[i]
98. exit() 141. tot = tot +
99. if a>b and a>c: notes[i]
100. max=a 142. moy = tot/nn
101. x=c*c+b*b 143. i = i + 1
102. elif b>a and b>c: 144. print nn, "notes
103. max=b entrées. Max =", max, "Min =",
104. x=c*c+a*a min, "Moy =", moy
105. elif c>b and c>a:
106. max=c
107. x=a*a+b*b 145.
108. if a==b and b==c : 146.Réfléchissez !
109. print "triangle
équilatéral."
110. elif a==b or b==c or c==a : Exercices[modifier | modifier le wikicode]
111. print "triangle
isocèle." Exercice 1[modifier | modifier le wikicode]
112. elif x==max**2 :
113. print "triangle Écrire un programme qui affiche "Bonjour le monde".
rectangle." Solution
114. else:
115. print "triangle
quelconque."
print ("Bonjour le monde")
116.
117. Réfléchissez ! Exercice 2[modifier | modifier le wikicode]
118. Réfléchissez !
119. Réfléchissez ! Écrire un programme qui permet de saisir le nom de
l'utilisateur et de renvoyer "Bonjour", suivi de ce nom.
120. # Notes de travaux (3 solutions possibles)
scolaires
121. Solution 1
122. notes = [] #
liste à construire nom = input ("Quel est
123. n = 2 # votre nom ? ")
valeur positive quelconque pour print ("Bonjour", nom)
initier la boucle
124. while n >= 0 :
125. print "Entrez la note
suivante, s.v.p. : ",
126. n = float(raw_input()) Solution 2
# conversion de l'entrée en un
nombre réel print ("Bonjour", input
127. if n < 0 : ("Quel est votre nom ? "))
128. print "OK.
Terminé."
129. else:
130. notes.append(n)
# ajout d'une note à la liste Solution 3
131. # Calculs divers
sur les notes déjà entrées : name = input("Quel est
132. # valeurs minimale votre nom ? ")
et maximale + total de toutes print("Bonjour " + name +
les notes. "!")
Exercice 3[modifier | modifier le wikicode]
avez',age,'ans.')
Écrire un programme qui demande à l'utilisateur la
saisie de a et b et affiche la somme de a et de b.
Solution Exercice 5[modifier | modifier le wikicode]
Écrire un programme qui demande à l'utilisateur les
coordonnées de deux points dans le plan et qui calcule
a = input ("Valeur de a :
puis affiche la distance entre ces deux points selon la
")
b = input ("Valeur de b : formule :
")
a= int (a)
b= int (b) Solution
print ("Somme de a+b =
",a+b)
# Ce script gère si
l'anniversaire est passé