Débutant
🧠 Fondamentaux
10 XP
0 personnes ont réussi
Meteo et vetements
Parfois, une seule couche de if/else ne suffit pas. Tu peux imbriquer un if a l'interieur d'un autre if. C'est ce qu'on appelle des conditions imbriquees.
Par exemple : if temperature < 0: if il_neige: print('Mets des bottes') print('Prends un manteau')
Ici, le test sur la neige n'est fait que si la temperature est negative. L'indentation montre clairement quelle condition englobe l'autre.
Écris une fonction conseil_vetement(temperature, pleut) qui renvoie un conseil : temperature < 0 et il pleut : 'manteau et parapluie' temperature < 0 et il ne pleut pas : 'manteau' temperature entre 0 et 15 (inclus) et il pleut : 'veste et parapluie' temperature entre 0 et 15 (inclus) et il ne pleut pas : 'veste' temperature > 15 et il pleut : 'parapluie' temperature > 15 et il ne pleut pas : 't-shirt'
Exemple : conseil_vetement(-5, True) renvoie 'manteau et parapluie' conseil_vetement(20, False) renvoie 't-shirt'
Tests (4/6)
Froid et pluie
assert conseil_vetement(-5, True) == 'manteau et parapluie'
Froid sans pluie
assert conseil_vetement(-5, False) == 'manteau'
Doux et pluie
assert conseil_vetement(10, True) == 'veste et parapluie'
Chaud sans pluie
assert conseil_vetement(20, False) == 't-shirt'
+ 0 tests cachés
Indices (3 disponibles)
Solution officielle
def conseil_vetement(temperature, pleut):
if temperature < 0:
if pleut:
return 'manteau et parapluie'
else:
return 'manteau'
elif temperature <= 15:
if pleut:
return 'veste et parapluie'
else:
return 'veste'
else:
if pleut:
return 'parapluie'
else:
return 't-shirt'