Exercices simples pour Apprendre le Python : Différence entre versions

De TravauxIndse
(Solutions des exercices sur les tests)
(solutions sur les entrées/sorties)
Ligne 56 : Ligne 56 :
  
 
=== solutions sur les entrées/sorties===
 
=== solutions sur les entrées/sorties===
*;Ex1 : 652*987
+
*;652*987
 
: x=652*987
 
: x=652*987
 
: print ("652*=",x)
 
: print ("652*=",x)
*;Ex2 : afficher le résultat de 712/42 en entier puis en réel (2 résultats à afficher )
+
*;afficher le résultat de 712/42 en entier puis en réel (2 résultats à afficher )
 
:print ("712/42=", 712/42 )
 
:print ("712/42=", 712/42 )
 
:print ("712//42=", 712//42 )
 
:print ("712//42=", 712//42 )
*;Ex 3 : demander le nom
+
*;demander le nom
 
:x = input ("quel est votre nom ? ")
 
:x = input ("quel est votre nom ? ")
 
:print ("vous vous appellez ",x )
 
:print ("vous vous appellez ",x )
*;Ex 4 : demander nom et prénom
+
*;demander nom et prénom
 
:p = input ("quel est votre prénom ? ")
 
:p = input ("quel est votre prénom ? ")
 
:n = input ("quel est votre nom ? ")
 
:n = input ("quel est votre nom ? ")
 
:print ("Bonjour ",p," ",n)
 
:print ("Bonjour ",p," ",n)
*;Ex 5 : doubler un nombre demandé
+
*;doubler un nombre demandé
 
:x = input ("saissez un nombre ")
 
:x = input ("saissez un nombre ")
 
:x = int (x)
 
:x = int (x)
 
:x=2*x
 
:x=2*x
 
:print ("le double vaut: ",x)
 
:print ("le double vaut: ",x)
*;Ex 6 : donner l'âge
+
*;donner l'âge
 
:x = input ("saissez votre année de naissance ")
 
:x = input ("saissez votre année de naissance ")
 
:x = int (x)
 
:x = int (x)
 
:x=2023-x
 
:x=2023-x
 
:print ("vous êtes dans l'année de vos ",x," ans")
 
:print ("vous êtes dans l'année de vos ",x," ans")
*;Ex 7 : Heures minutes secondes en secondes
+
*;Heures minutes secondes en secondes
 
:h = input (" entrez un nombre d'heures ")
 
:h = input (" entrez un nombre d'heures ")
 
:h = int (h)
 
:h = int (h)
Ligne 87 : Ligne 87 :
 
:s = int (s)
 
:s = int (s)
 
:print ("cela vaut", (60*h+m)*60+s , "secondes")
 
:print ("cela vaut", (60*h+m)*60+s , "secondes")
*;Ex 8 : secondes en années, mois, jours, heures, minutes, secondes
+
*;secondes en années, mois, jours, heures, minutes, secondes
 
:t = input ("entrez un nombre de secondes ")
 
:t = input ("entrez un nombre de secondes ")
 
:t= int(t)  
 
:t= int(t)  

Version du 22 avril 2023 à 12:06

Exercices de base

Voici pas mal d'exercices, tant que vous trouvez que les exercices sont compliqués, continuez à en faire, et n'hésitez pas à les refaire plusieurs fois. Quand ils deviennent évidents, vous pouvez passer à la suite.

Une proposition de réponse se trouve dans les #Solutions des exercices ci-dessous. Les réponses sont proposées par les élèves, il peut rester des erreurs, n'hésitez pas à corriger, ou à en parler dans la page discussions.

Les entrées/sorties

Rappels :

  • pour afficher quelque chose, il faut utiliser le mot clé print() et bien mettre entre parenthèses ce qu'on veut afficher. Une chaine de caractère nécessite des guillemets doubles : "ceci sera affiché comme du texte"
  • une variable est un nom qui est donné à une zone mémoire. Le nom doit commencer par une lettre, et contenir des lettres (maj ou min, de préférence non accentuées), des chiffres, des tirets (-) ou des soulignés (_).

Exercices proposés :

  1. afficher le résultat de 652*987
  2. afficher le résultat de 712/42 en entier puis en réel (2 résultats à afficher )
  3. demander son nom à l’utilisateur --> afficher le nom entré (« vous vous appelez : ... »)
  4. demander son nom et son prénom à l’utilisateur (exemple : « Quel est votre nom ? Schoubben Quel est votre Prénom ? François) --> afficher “Bonjour + prénom +nom” (exemple : « Bonjour François Schoubben »)
  5. lire un nombre (exemple : 21) --> afficher le double du nombre entré (exemple : 42)
  6. demander l’année de naissance de l'utilisateur (1998) --> afficher son âge dans l’année en cours
  7. transformer des heures minutes secondes en nombre de secondes
    • nom des Variables : h, m, s, secondes
    • Entrées : demandez à l'utilisateur d'introduire 3 nombres que vous placerez dans les variables h (heures), m (minutes) et s (secondes). (Exemple : h = 3, m = 25, s = 49)
    • Sortie : affichez le résultat à l'utilisateur (exemple : 3h 25m 49s correspondent à ((3*60 + 25) * 60) + 49 secondes, et secondes =12349)
    • Remarque : on suppose que l'utilisateur ne se trompera pas et qu'il entrera bien des nombres positifs aux bons endroits
  8. Transformer un nombre de secondes en heures, minutes, secondes
    • Entrée : Demander à l'utilisateur d'introduire un nombre Que vous placerez dans la variable "t" et qui sera un temps en secondes
    • Sortie : Afficher ce temps en années, jours, heures, minutes et secondes

Les tests

  1. négatif : demandez à l'utilisateur d'entrer un nombre et affichez « Vous avez entré un nombre négatif » le cas échéant, rien sinon.
  2. genre : demandez à l'utilisateur d'entrer son nom, son prénom et s'il est un homme (oui ou non). Affichez « Bonjour Madame prénom nom » ou « Bonjour Monsieur prénom nom » en fonction de la réponse.
    1. évolution : Même exercice, mais l'utilisateur peut répondre aux question en minuscule ou en majuscule.
  3. civilité : demandez à l'utilisateur d'entrer son nom, son prénom et sa civilité (Mm pour madame, ml pour mademoiselle ou mo pour monsieur). Affichez « Bonjour Madame prénom nom »,« Bonjour Mademoiselle prénom nom » ou « Bonjour Monsieur prénom nom » en fonction de la réponse.
  4. somme : Écrire un programme qui demande à l'utilisateur d'entrer deux nombres et affiche la somme de ces nombres.
  5. pair : Écrire un programme qui demande à l'utilisateur d'entrer un nombre et affiche si ce nombre est pair ou impair.
  6. négatif ou nul : Écrire un programme qui demande à l'utilisateur d'entrer un nombre et affiche si ce nombre est positif, négatif ou nul.
  7. majeur : Écrire un programme qui demande à l'utilisateur d'entrer son âge et affiche s'il est majeur ou mineur.
  8. voyelle : Écrire un programme qui demande à l'utilisateur d'entrer un caractère et affiche s'il s'agit d'une voyelle ou d'une consonne.
  9. plus grand : Écrire un programme qui demande à l'utilisateur d'entrer deux nombres et affiche le plus grand des deux.
  10. réussite : Écrire un programme qui demande à l'utilisateur d'entrer une note et affiche si cette note est un échec (plus petit que la moitié), une réussite (plus que la moitié) ou une mention (plus des 2/3 des points).

les boucles

  1. bonjourS
    • Entrée : /
    • Sortie : Affichez 30 fois « je me répète un peu, d'accord, mais je tiens à vous dire bonjour ».
    1. évolution : Sortie : Affichez 30 fois « bonjour » suivi du numéro d'affichage (exemple : bonjour 1, bonjour 2, bonjour 3...).
  2. table de 7
    • Entrée : /
    • Sortie : Affichez les 12 premiers éléments de la table de multiplication de 7
  3. table de 42
    • Entrée : /
    • Sortie : Affichez les 120 premiers éléments de la table de multiplication de 42
  4. nombres pairs
    • Entrée : /
    • Sortie : Affichez les 30 premiers numéros pairs

Solutions des exercices

solutions sur les entrées/sorties

  • 652*987
x=652*987
print ("652*=",x)
  • afficher le résultat de 712/42 en entier puis en réel (2 résultats à afficher )
print ("712/42=", 712/42 )
print ("712//42=", 712//42 )
  • demander le nom
x = input ("quel est votre nom ? ")
print ("vous vous appellez ",x )
  • demander nom et prénom
p = input ("quel est votre prénom ? ")
n = input ("quel est votre nom ? ")
print ("Bonjour ",p," ",n)
  • doubler un nombre demandé
x = input ("saissez un nombre ")
x = int (x)
x=2*x
print ("le double vaut: ",x)
  • donner l'âge
x = input ("saissez votre année de naissance ")
x = int (x)
x=2023-x
print ("vous êtes dans l'année de vos ",x," ans")
  • Heures minutes secondes en secondes
h = input (" entrez un nombre d'heures ")
h = int (h)
m = input (" entrez un nombre de minutes ")
m = int (m)
s = input (" entrez un nombre de secondes ")
s = int (s)
print ("cela vaut", (60*h+m)*60+s , "secondes")
  • secondes en années, mois, jours, heures, minutes, secondes
t = input ("entrez un nombre de secondes ")
t= int(t)
a = t// 31536000
t=t-a*31536000
j= t// 86400
t=t-j*86400
h = t// 3600
t=t-h*3600
m = t// 60
t = t-m*60
s = t
print ("cela vaut ",a,"années, ",j,"jours, ",h," heures, ",m," minutes et ",s," secondes"

Solutions des exercices sur les tests

  • négatif ?
x = input (" saisissez un nombre ")
x= int (x)
if x==0:
print (x," est nul")
elif x < 0:
print (x," est négatif")
else:
print (x," est positif")
  • genre ?
g = input ("Etes vous un homme ? ")
g = g.lower()
if g=="oui":
g = ("Monsieur")
else:
g = ("Madamme")
p = input ("quel est votre prénom ? ")
n = input ("quel est votre nom ? ")
print ("Bonjour ",g," ",p," ",n)
  • Civilité
g = input ("Etes vous un homme ? ")
g=g.lower()
if g=="oui":
x = ("Monsieur")
else:
c = input ("Etes vous marié ? ")
c = c.lower()
if c=="oui":
x = ("Madamme")
else :
x = ("Mademoiselle")
p = input ("quel est votre prénom ? ")
n = input ("quel est votre nom ? ")
print ("Bonjour ",x," ",p," ",n)
  • somme
  • pair
  • négatif ou nul
  • majeur
  • voyelle
  • plus grand
  • réussite

Solution des exercices sur les boucles