« Exercices simples pour Apprendre le Python » : différence entre les versions

De TravauxIndse
Aller à la navigation Aller à la recherche
(→‎Les tests : résolution problème de retours à la ligne)
(→‎les boucles : résolution de retours à la ligne)
Ligne 40 : Ligne 40 :
# bonjourS
# bonjourS
#* Entrée : /
#* Entrée : /
#* Sortie : Affichez 30 fois « je me répète un peu, d'accord, mais je tiens à vous dire
#* Sortie : Affichez 30 fois « je me répète un peu, d'accord, mais je tiens à vous dire bonjour ».
bonjour ».
## évolution : Sortie : Affichez 30 fois « bonjour » suivi du numéro d'affichage (exemple : bonjour 1, bonjour 2, bonjour 3...).
## évolution : Sortie : Affichez 30 fois « bonjour » suivi du numéro d'affichage (exemple : bonjour 1,
bonjour 2, bonjour 3...).
# table de 7
# table de 7
#* Entrée : /
#* Entrée : /
Ligne 53 : Ligne 51 :
#* Entrée : /
#* Entrée : /
#* Sortie : Affichez les 30 premiers numéros pairs
#* Sortie : Affichez les 30 premiers numéros pairs


== Solutions des exercices ==
== Solutions des exercices ==

Version du 22 avril 2023 à 10:53

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 ?
    • Entrée : demandez à l'utilisateur d'entrer un nombre ;
    • Sortie : Affichez « Vous avez entré un nombre négatif » le cas échéant, rien sinon.
  2. genre ?
    • Entrée : demandez à l'utilisateur d'entrer son nom, son prénom et s'il est un homme (oui ou non) ;
    • Sortie : 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é
    • Entrée : demandez à l'utilisateur d'entrer son nom, son prénom et sa civilité (Mm pour madame, ml pour mademoiselle ou mo pour monsieur) ;
    • Sortie : Affichez « Bonjour Madame prénom nom »,« Bonjour Mademoiselle prénom nom » ou « Bonjour Monsieur prénom nom » en fonction de la réponse.

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

  • Ex1
    652*987
x=652*987
print ("652*=",x)
  • Ex2
    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 )
  • Ex 3
    demander le nom
x = input ("quel est votre nom ? ")
print ("vous vous appellez ",x )
  • Ex 4
    demander nom et prénom
p = input ("quel est votre prénom ? ")
n = input ("quel est votre nom ? ")
print ("Bonjour ",p," ",n)
  • Ex 5
    doubler un nombre demandé
x = input ("saissez un nombre ")
x = int (x)
x=2*x
print ("le double vaut: ",x)
  • Ex 6
    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")
  • Ex 7
    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")
  • Ex 8
    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)

Solution des exercices sur les boucles