« Exercices simples pour Apprendre le Python » : différence entre les versions
(Page créée avec « = Exercice sur les entrées/sorties= == Exercice 1 == * Interaction : Sortie: afficher le résultat de 652*987 * Solution : x=652*987 print ("652*987=",x) == Exercice... ») |
|||
(53 versions intermédiaires par 4 utilisateurs non affichées) | |||
Ligne 1 : | Ligne 1 : | ||
= | == 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é <nowiki>print()</nowiki> 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 (_). | |||
[[#solutions sur les entrées/sorties]] | |||
Exercices proposés : | |||
# afficher le résultat de '''652*987''' | |||
# afficher le résultat de '''712/42 en entier puis en réel''' (2 résultats à afficher ) | |||
# '''demander son nom''' à l’utilisateur --> afficher le nom entré (« vous vous appelez : ... ») | |||
# '''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 ») | |||
# lire un nombre (exemple : 21) --> afficher le '''double du nombre entré''' (exemple : 42) | |||
# demander l’année de naissance de l'utilisateur (1998) --> afficher son '''âge dans l’année en cours''' | |||
# '''heures minutes secondes en secondes''' : 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) et 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 | |||
# '''Transformer un nombre de secondes en heures, minutes, secondes''' : Demander à l'utilisateur d'introduire un nombre Que vous placerez dans la variable "t" et qui sera un temps en secondes. Afficher ce temps en années, jours, heures, minutes et secondes. | |||
[[#solutions sur les entrées/sorties]] | |||
== | === Les tests === | ||
[[#Solutions des exercices sur les tests]] | |||
# négatif : demandez à l'utilisateur d'entrer un nombre et affichez « Vous avez entré un nombre négatif » le cas échéant, rien sinon. | |||
# 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. | |||
## évolution : Même exercice, mais l'utilisateur peut répondre aux question en minuscule ou en majuscule. | |||
# 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. | |||
# somme : Écrire un programme qui demande à l'utilisateur d'entrer deux nombres et affiche la somme de ces nombres. | |||
# pair : Écrire un programme qui demande à l'utilisateur d'entrer un nombre et affiche si ce nombre est pair ou impair. | |||
# 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. | |||
# majeur : Écrire un programme qui demande à l'utilisateur d'entrer son âge et affiche s'il est majeur ou mineur. | |||
# 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. | |||
# plus grand : Écrire un programme qui demande à l'utilisateur d'entrer deux nombres et affiche le plus grand des deux. | |||
# 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). | |||
[[#Solutions des exercices sur les tests]] | |||
=== les boucles === | |||
[[#Solution des exercices sur les boucles]] | |||
# bonjourS : Affichez 30 fois « je me répète un peu, d'accord, mais je tiens à vous dire bonjour ». | |||
#* évolution : Affichez 30 fois « bonjour » suivi du numéro d'affichage (exemple : bonjour 1, bonjour 2, bonjour 3...). | |||
# table de 7 : Affichez les 12 premiers éléments de la table de multiplication de 7 | |||
#* table de 42 : Affichez les 120 premiers éléments de la table de multiplication de 42 | |||
# table de multiplication Écrire un programme qui demande à l'utilisateur d'entrer un nombre et affiche la table de multiplication de ce nombre jusqu'à 10. | |||
# nombres pairs : Affichez les 30 premiers numéros pairs | |||
# suite nombres simple : demande à l'utilisateur d'entrer un nombre et affiche tous les nombres de 1 à ce nombre. | |||
# suite nombres pairs : Écrire un programme qui demande à l'utilisateur d'entrer un nombre et affiche tous les nombres pairs de 1 à ce nombre. | |||
# suite nombres impairs : Écrire un programme qui demande à l'utilisateur d'entrer un nombre et affiche tous les nombres impairs de 1 à ce nombre. | |||
# inverser mot : Écrire un programme qui demande à l'utilisateur d'entrer une chaîne de caractères et affiche cette chaîne de caractères à l'envers en utilisant une boucle while. | |||
# somme d'une suite : Écrire un programme qui demande à l'utilisateur d'entrer un nombre et calcule la somme de tous les nombres de 1 à ce nombre en utilisant une boucle while. | |||
# produit d'une suite : Écrire un programme qui demande à l'utilisateur d'entrer un nombre et calcule le produit de tous les nombres de 1 à ce nombre en utilisant une boucle while. | |||
# nombre de voyelles : Écrire un programme qui demande à l'utilisateur d'entrer une chaîne de caractères et affiche le nombre de voyelles dans cette chaîne en utilisant une boucle while. | |||
# nombre d'un caractère : Écrire un programme qui demande à l'utilisateur d'entrer une chaîne de caractères, d'un caractère spécifique et affiche le nombre d'occurrences de ce caractère spécifique dans cette chaîne en utilisant une boucle while. | |||
# diviseurs : Écrire un programme qui demande à l'utilisateur d'entrer un nombre et affiche tous les diviseurs de ce nombre en utilisant une boucle while. | |||
# nombres premiers : Écrire un programme qui demande à l'utilisateur d'entrer un nombre et affiche tous les nombres premiers de 1 à ce nombre. | |||
# vérification nombre premier : Écrire un programme qui demande à l'utilisateur d'entrer un nombre et affiche si ce nombre est premier ou non. | |||
# palindrome : Écrire un programme qui demande à l'utilisateur d'entrer un mot et affiche si ce mot est un palindrome ou non (c'est-à-dire s'il peut être lu de gauche à droite ou de droite à gauche, ex : kayak, été, rever, bob, ressasser...). | |||
# demi sapin - afficher un sapin avec des * '''en utilisant des boucles imbriquées'''. Ex. | |||
:: * | |||
:: ** | |||
:: *** | |||
:: **** | |||
:: ***** | |||
:: ****** | |||
[[#Solution des exercices sur les boucles]] | |||
=== les boucles imbriquées === | |||
[[# solutions sur les boucles imbriquées]] | |||
* triangle : afficher un triangle de numéros en utilisant des boucles imbriquées. Ex. | |||
:1 | |||
:12 | |||
:123 | |||
:1234 | |||
:12345 | |||
:123456 | |||
*; demi sapin - afficher un sapin avec des * '''en utilisant des boucles imbriquées'''. Ex. | |||
: * | |||
: ** | |||
: *** | |||
: **** | |||
: ***** | |||
: ****** | |||
**; variante - afficher le sapin complet, en affichant des espaces avant les * en en mettant un nombre impair à chaque fois, (ex. dans le code wiki)<-- | |||
: * | |||
: *** | |||
: ***** | |||
: ******* | |||
: ********* | |||
: *********** | |||
--> | |||
*; carré - demander à l'utilisateur d'entrer un nombre et afficher un carré de ce nombre en utilisant des boucles imbriquées. Ex. | |||
: 333 | |||
: 333 | |||
: 333 | |||
*; tables de multiplication : demander à l'utilisateur d'entrer un nombre et afficher tous les nombres de 1 à ce nombre sous forme de table de multiplication (de 1 à 10) en utilisant des boucles imbriquées. | |||
*; liste de nombres premiers : demander à l'utilisateur d'entrer un nombre et afficher tous les nombres premiers de 1 à ce nombre en utilisant des boucles imbriquées. | |||
*; histogramme : demander à l'utilisateur d'entrer une chaîne de caractères et afficher un histogramme de la fréquence de chaque caractère en utilisant des boucles imbriquées. | |||
[[# solutions sur les boucles imbriquées]] | |||
[[#Top|Haut de la page]] | |||
== Solutions des exercices == | |||
=== solutions sur les entrées/sorties=== | |||
exercices : [[#Les entrées/sorties]] | |||
*;652*987 | |||
première façon: | |||
: x=652*987 | |||
: print ("652*=",x) | |||
deuxième façon: | |||
: print(652*987) | |||
*;afficher le résultat de 712/42 en entier puis en réel (2 résultats à afficher ) | |||
première façon: | |||
:print ("712/42=", 712/42 ) | |||
:print ("712//42=", 712//42 ) | |||
deuxième façon: | |||
:x= 712/42 | |||
:print(int(x)) | |||
:print(float(x)) | |||
*;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 | |||
*peut se voir raccourci: | |||
:x = int ( input (" saissez un nombre ") | |||
:print (x*2) | |||
:print ("le double vaut: ",x) | |||
*;donner l'âge | |||
:x = input ("saissez votre année de naissance ") | |||
:x = int (x) | |||
:x=2023-x | |||
peux se voir raccourci de la même manière que l'exercice du dessus | |||
: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" | |||
exercices : [[#Les entrées/sorties]] | |||
=== Solutions des exercices sur les tests === | |||
Exercices : [[#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 | |||
:print ("Saisissez deux nombres a additionenr") | |||
:x = float ( input ("Premier nombre : ")) | |||
:y = float (input ("deuxième nombre : ")) | |||
:print ("Sollution : ",x+y ) | |||
*;pair | |||
x = input("Saisissez un entier : ") | |||
try: | |||
x = float (x) | |||
# print ("réel ok") | |||
y = int (x) | |||
# print ("y int :",y) | |||
if x%2==0 : | |||
print ("le nombre que vous avez saissi est pair") | |||
elif x-y!=0 : | |||
print ("le nombre que vous avez saissi n'est pas un entier") | |||
else : | |||
print ("le nombre que vous avez saissi est impair") | |||
except: | |||
print("[",x,"]","n'est pas un nombre") | |||
*;négatif ou nul | |||
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") | |||
*;majeur | |||
: | |||
*;voyelle | |||
: | |||
*;plus grand | |||
: | |||
*;réussite | |||
: | |||
Exercices : [[#Les tests]] | |||
=== Solution des exercices sur les boucles === | |||
Exercices : [[#les boucles]] | |||
*;bonjourS | |||
for i in range (30) : | |||
print ("je me répète un peu, d'accord, mais je tiens à vous dire bonjour") | |||
**; évolution | |||
x = 1 | |||
for i in range (30) : | |||
print ("Bonjour ",x) | |||
x = x+1 | |||
*;table de 7 | |||
x = 1 | |||
for i in range (30) : | |||
print (x,"*7=",x*7,sep="") | |||
x = x+1 | |||
**; table de 42 | |||
x = 1 | |||
for i in range (120) : | |||
print (x,"*42=",x*42,sep="") | |||
x = x+1 | |||
*;table de multiplication | |||
: | |||
*;nombres pairs | |||
x = 0 | |||
for i in range (30) : | |||
print (x) | |||
x = x+2 | |||
*;suite nombres simple | |||
: | |||
*;suite nombres pairs | |||
: | |||
*;suite nombres impairs | |||
: | |||
*;inverser mot | |||
: | |||
*;somme d'une suite | |||
: | |||
*;produit d'une suite | |||
: | |||
*;nombre de voyelles | |||
: | |||
*;nombre d'un caractère | |||
: | |||
*;diviseurs | |||
: | |||
*;nombres premiers | |||
: | |||
*;vérification nombre premier | |||
: | |||
*;palindrome | |||
: | |||
*;demi sapin | |||
: | |||
Exercices : [[#les boucles]] | |||
=== solutions sur les boucles imbriquées === | |||
Exercices : [[#les boucles imbriquées]] | |||
*; triangle | |||
Attention, ceci n'est pas une solution contenant des boucles imbriquées. Elle répond à la question, mais pas à la méthode demandée (et c'est un mauvais exemple de programmation, sans vouloir blesser celui qui l'a créée). | |||
: print("1\n1 2\n1 2 3\n1 2 3 4\n1 2 3 4 5\n1 2 3 4 5 6") | |||
*; demi sapin | |||
Attention, ceci n'est pas une solution contenant des boucles imbriquées. Elle répond à la question, mais pas à la méthode demandée (et c'est un mauvais exemple de programmation, sans vouloir blesser celui qui l'a créée). | |||
: print("*\n**\n***\n****\n*****\n******") | |||
**; variante | |||
: a=int(input()) | |||
Attention, ceci n'est pas une solution contenant des boucles imbriquées. Elle répond à la question, mais pas à la méthode demandée (et c'est un mauvais exemple de programmation, sans vouloir blesser celui qui l'a créée). | |||
print(a,'\n',a,a,'\n',a,a,a,'\n',a,a,a,a,'\n',a,a,a,a,a,'\n',a,a,a,a,a,a) | |||
*; carré | |||
: pas encore réalisé | |||
*; tables de multiplication | |||
: pas encore réalisé | |||
*; liste de nombres premiers | |||
: pas encore réalisé | |||
*; histogramme | |||
: pas encore réalisé | |||
Exercices : [[#les boucles imbriquées]] | |||
[[#Top|Haut de la page]] |
Dernière version du 20 février 2024 à 09:50
Exercices de base[modifier]
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[modifier]
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 (_).
#solutions sur les entrées/sorties
Exercices proposés :
- afficher le résultat de 652*987
- afficher le résultat de 712/42 en entier puis en réel (2 résultats à afficher )
- demander son nom à l’utilisateur --> afficher le nom entré (« vous vous appelez : ... »)
- 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 »)
- lire un nombre (exemple : 21) --> afficher le double du nombre entré (exemple : 42)
- demander l’année de naissance de l'utilisateur (1998) --> afficher son âge dans l’année en cours
- heures minutes secondes en secondes : 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) et 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
- Transformer un nombre de secondes en heures, minutes, secondes : Demander à l'utilisateur d'introduire un nombre Que vous placerez dans la variable "t" et qui sera un temps en secondes. Afficher ce temps en années, jours, heures, minutes et secondes.
#solutions sur les entrées/sorties
Les tests[modifier]
#Solutions des exercices sur les tests
- négatif : demandez à l'utilisateur d'entrer un nombre et affichez « Vous avez entré un nombre négatif » le cas échéant, rien sinon.
- 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.
- évolution : Même exercice, mais l'utilisateur peut répondre aux question en minuscule ou en majuscule.
- 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.
- somme : Écrire un programme qui demande à l'utilisateur d'entrer deux nombres et affiche la somme de ces nombres.
- pair : Écrire un programme qui demande à l'utilisateur d'entrer un nombre et affiche si ce nombre est pair ou impair.
- 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.
- majeur : Écrire un programme qui demande à l'utilisateur d'entrer son âge et affiche s'il est majeur ou mineur.
- 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.
- plus grand : Écrire un programme qui demande à l'utilisateur d'entrer deux nombres et affiche le plus grand des deux.
- 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).
#Solutions des exercices sur les tests
les boucles[modifier]
#Solution des exercices sur les boucles
- bonjourS : Affichez 30 fois « je me répète un peu, d'accord, mais je tiens à vous dire bonjour ».
- évolution : Affichez 30 fois « bonjour » suivi du numéro d'affichage (exemple : bonjour 1, bonjour 2, bonjour 3...).
- table de 7 : Affichez les 12 premiers éléments de la table de multiplication de 7
- table de 42 : Affichez les 120 premiers éléments de la table de multiplication de 42
- table de multiplication Écrire un programme qui demande à l'utilisateur d'entrer un nombre et affiche la table de multiplication de ce nombre jusqu'à 10.
- nombres pairs : Affichez les 30 premiers numéros pairs
- suite nombres simple : demande à l'utilisateur d'entrer un nombre et affiche tous les nombres de 1 à ce nombre.
- suite nombres pairs : Écrire un programme qui demande à l'utilisateur d'entrer un nombre et affiche tous les nombres pairs de 1 à ce nombre.
- suite nombres impairs : Écrire un programme qui demande à l'utilisateur d'entrer un nombre et affiche tous les nombres impairs de 1 à ce nombre.
- inverser mot : Écrire un programme qui demande à l'utilisateur d'entrer une chaîne de caractères et affiche cette chaîne de caractères à l'envers en utilisant une boucle while.
- somme d'une suite : Écrire un programme qui demande à l'utilisateur d'entrer un nombre et calcule la somme de tous les nombres de 1 à ce nombre en utilisant une boucle while.
- produit d'une suite : Écrire un programme qui demande à l'utilisateur d'entrer un nombre et calcule le produit de tous les nombres de 1 à ce nombre en utilisant une boucle while.
- nombre de voyelles : Écrire un programme qui demande à l'utilisateur d'entrer une chaîne de caractères et affiche le nombre de voyelles dans cette chaîne en utilisant une boucle while.
- nombre d'un caractère : Écrire un programme qui demande à l'utilisateur d'entrer une chaîne de caractères, d'un caractère spécifique et affiche le nombre d'occurrences de ce caractère spécifique dans cette chaîne en utilisant une boucle while.
- diviseurs : Écrire un programme qui demande à l'utilisateur d'entrer un nombre et affiche tous les diviseurs de ce nombre en utilisant une boucle while.
- nombres premiers : Écrire un programme qui demande à l'utilisateur d'entrer un nombre et affiche tous les nombres premiers de 1 à ce nombre.
- vérification nombre premier : Écrire un programme qui demande à l'utilisateur d'entrer un nombre et affiche si ce nombre est premier ou non.
- palindrome : Écrire un programme qui demande à l'utilisateur d'entrer un mot et affiche si ce mot est un palindrome ou non (c'est-à-dire s'il peut être lu de gauche à droite ou de droite à gauche, ex : kayak, été, rever, bob, ressasser...).
- demi sapin - afficher un sapin avec des * en utilisant des boucles imbriquées. Ex.
- *
- **
- ***
- ****
- *****
- ******
#Solution des exercices sur les boucles
les boucles imbriquées[modifier]
# solutions sur les boucles imbriquées
- triangle : afficher un triangle de numéros en utilisant des boucles imbriquées. Ex.
- 1
- 12
- 123
- 1234
- 12345
- 123456
- demi sapin - afficher un sapin avec des * en utilisant des boucles imbriquées. Ex.
- *
- **
- ***
- ****
- *****
- ******
- variante - afficher le sapin complet, en affichant des espaces avant les * en en mettant un nombre impair à chaque fois, (ex. dans le code wiki)<--
- *
- ***
- *****
- *******
- *********
- ***********
-->
- carré - demander à l'utilisateur d'entrer un nombre et afficher un carré de ce nombre en utilisant des boucles imbriquées. Ex.
- 333
- 333
- 333
- tables de multiplication
- demander à l'utilisateur d'entrer un nombre et afficher tous les nombres de 1 à ce nombre sous forme de table de multiplication (de 1 à 10) en utilisant des boucles imbriquées.
- liste de nombres premiers
- demander à l'utilisateur d'entrer un nombre et afficher tous les nombres premiers de 1 à ce nombre en utilisant des boucles imbriquées.
- histogramme
- demander à l'utilisateur d'entrer une chaîne de caractères et afficher un histogramme de la fréquence de chaque caractère en utilisant des boucles imbriquées.
# solutions sur les boucles imbriquées
Solutions des exercices[modifier]
solutions sur les entrées/sorties[modifier]
exercices : #Les entrées/sorties
- 652*987
première façon:
- x=652*987
- print ("652*=",x)
deuxième façon:
- print(652*987)
- afficher le résultat de 712/42 en entier puis en réel (2 résultats à afficher )
première façon:
- print ("712/42=", 712/42 )
- print ("712//42=", 712//42 )
deuxième façon:
- x= 712/42
- print(int(x))
- print(float(x))
- 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
- peut se voir raccourci:
- x = int ( input (" saissez un nombre ")
- print (x*2)
- print ("le double vaut: ",x)
- donner l'âge
- x = input ("saissez votre année de naissance ")
- x = int (x)
- x=2023-x
peux se voir raccourci de la même manière que l'exercice du dessus
- 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"
exercices : #Les entrées/sorties
Solutions des exercices sur les tests[modifier]
Exercices : #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
- print ("Saisissez deux nombres a additionenr")
- x = float ( input ("Premier nombre : "))
- y = float (input ("deuxième nombre : "))
- print ("Sollution : ",x+y )
- pair
x = input("Saisissez un entier : ") try:
x = float (x)
- print ("réel ok")
y = int (x)
- print ("y int :",y)
if x%2==0 : print ("le nombre que vous avez saissi est pair") elif x-y!=0 : print ("le nombre que vous avez saissi n'est pas un entier") else : print ("le nombre que vous avez saissi est impair")
except:
print("[",x,"]","n'est pas un nombre")
- négatif ou nul
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")
- majeur
- voyelle
- plus grand
- réussite
Exercices : #Les tests
Solution des exercices sur les boucles[modifier]
Exercices : #les boucles
- bonjourS
for i in range (30) :
print ("je me répète un peu, d'accord, mais je tiens à vous dire bonjour")
- évolution
x = 1
for i in range (30) :
print ("Bonjour ",x) x = x+1
- table de 7
x = 1
for i in range (30) :
print (x,"*7=",x*7,sep="") x = x+1
- table de 42
x = 1
for i in range (120) :
print (x,"*42=",x*42,sep="") x = x+1
- table de multiplication
:
- nombres pairs
x = 0
for i in range (30) :
print (x) x = x+2
- suite nombres simple
:
- suite nombres pairs
:
- suite nombres impairs
:
- inverser mot
:
- somme d'une suite
:
- produit d'une suite
:
- nombre de voyelles
:
- nombre d'un caractère
:
- diviseurs
:
- nombres premiers
:
- vérification nombre premier
:
- palindrome
:
- demi sapin
:
Exercices : #les boucles
solutions sur les boucles imbriquées[modifier]
Exercices : #les boucles imbriquées
- triangle
Attention, ceci n'est pas une solution contenant des boucles imbriquées. Elle répond à la question, mais pas à la méthode demandée (et c'est un mauvais exemple de programmation, sans vouloir blesser celui qui l'a créée).
- print("1\n1 2\n1 2 3\n1 2 3 4\n1 2 3 4 5\n1 2 3 4 5 6")
- demi sapin
Attention, ceci n'est pas une solution contenant des boucles imbriquées. Elle répond à la question, mais pas à la méthode demandée (et c'est un mauvais exemple de programmation, sans vouloir blesser celui qui l'a créée).
- print("*\n**\n***\n****\n*****\n******")
- variante
- a=int(input())
Attention, ceci n'est pas une solution contenant des boucles imbriquées. Elle répond à la question, mais pas à la méthode demandée (et c'est un mauvais exemple de programmation, sans vouloir blesser celui qui l'a créée).
print(a,'\n',a,a,'\n',a,a,a,'\n',a,a,a,a,'\n',a,a,a,a,a,'\n',a,a,a,a,a,a)
- carré
- pas encore réalisé
- tables de multiplication
- pas encore réalisé
- liste de nombres premiers
- pas encore réalisé
- histogramme
- pas encore réalisé
Exercices : #les boucles imbriquées