Algorithmes et programmes : exercices de maths en 2de corrigés à télécharger en PDF
Algorithme : algorithmes et programmes : exercices de maths en 2de corrigés en PDF.
Des exercices de maths en 2de portant sur algorithme et programmation afin de réviser en ligne et de développer ses compétences.
Exercice 1 - programme avec le langage Python.
Voici un programme écrit avec le langage Python.
print(« Entrer x : »)
x=int(input())
y=4*x
y=y+1
y=y**2
print(« y= », y)
a) Quel est le type de la variable \(x\) ?
b) Pour chacune des valeurs suivantes de \(x\) saisie en entrée, donner la valeur de \(y\) affichée en sortie.
- \(x = 3\)
- \(x = -1\)
- \(x = 11\)
c) Le programme définit une fonction \(f : x \mapsto y\). Exprimer \(y\) en fonction du nombre entier \(x\).
Voir le corrigé de l’exercice 1
Exercice 2 - décrire le rôle et fonctionnement de l'algorithme.
Voici un algorithme.
Variables : C, C’ sont des chaînes de caractères
\(\ell\) est un nombre entier naturel
Entrée : Saisir C (non vide)
Traitement : Affecter à \(\ell\) la valeur Lgr (C)
Affecter à C’ la chaîne Sch (C,\(\ell\),1)
Sortie : Afficher C^{\prime}
Décrire le fonctionnement et le rôle de cet algorithme.
- Lgr (C) donne pour résultat le nombre de caractères de la chaîne C.
Lgr (« algorithme ») = 10 - Sch (C,\(a\),\(b\)) donne pour résultat la sous-chaîne extraite de C à partir du caractère \(a\) ayant \(b\) caractères.
Sch (« informatique », 3,6) = « format »
Voir le corrigé de l’exercice 2
Exercice 3 - programme et magasin de reprographie.
Un magasin de reprographie applique le tarif suivant :
- \(0{,}15\,€\) l^{\prime}unité jusqu^{\prime}à 50 photocopies ;
- \(0{,}10\,€\) l’unité au-delà.
Romain écrit un programme afin d’automatiser le calcul du prix à payer pour N photocopies réalisées.
print(« Entrer N : »)
N=int(input())
if N<=50:
Prix=… ①
else:
Prix=… ②
print(« Prix= », Prix)
a) Compléter les lignes ① et ② de ce programme.
b) Saisir le programme à l’ordinateur.
c) Contrôler son fonctionnement à l’aide d’exemples.
Voir le corrigé de l’exercice 3
Exercice 4 - algorithme qui affiche la distance.
Louise participe à une course de \(7\,\text{km}\). Elle court à la vitesse de \(15\,\text{km.h}^{-1}\) pendant les 5 premiers kilomètres puis à la vitesse de \(12\,\text{km.h}^{-1}\) jusqu’à l’arrivée.
a) Calculer le temps mis par Louise.
b) À un temps \(t\) (en min), on associe la distance \(d(t)\) (en km) parcourue par Louise pendant cette durée. Écrire un algorithme qui saisit \(t\) puis calcule et affiche \(d(t)\).

Voir le corrigé de l’exercice 4
Exercice 5 - un algorithme à étudier.
Voici un algorithme.
Variables : \(n\), \(i\), S sont des nombres entiers naturels
Entrée : Saisir \(n\) (\(n \geqslant 1\))
Traitement : Affecter à S la valeur 0
Pour \(i\) allant de 1 à \(n\)
Affecter à S la valeur S + \(i^2\)
Fin Pour
Sortie : Afficher S
a) Exécuter cet algorithme avec la valeur \(n = 5\) en entrée. Quel est le résultat affiché en sortie ?
b) De façon plus générale, expliquer le rôle de cet algorithme.
Voir le corrigé de l’exercice 5
Exercice 6 - un algorithme qui donne l'image par une fonction.
\(f\) est la fonction définie sur \(\mathbb{R}\) par :
\[f(x) = \begin{cases} x^2 & \text{si } x \leqslant 0 \\ x & \text{si } 0 \lt x \leqslant 1 \\ -2x + 3 & \text{si } 1 \lt x \end{cases}\]
Écrire l’algorithme d’une fonction \(f\) qui donne pour résultat \(f(x)\) suivant la valeur de \(x\).
Voir le corrigé de l’exercice 6
Exercice 7 - simuler 100 lancers avec Python.
Suzy a écrit un programme avec le langage Python afin de simuler 100 lancers d’une pièce de monnaie équilibrée et compter le nombre de Pile obtenus.
from random import random
n=0
for i in range(1,101):
#pour i allant de 1 à 100
x=random()
if x<0.5:
n=n+1
print(« n= », n)
a) Expliquer le rôle de chacune des variables du programme.
b) Suzy souhaite effectuer M fois la simulation. Comment doit-elle modifier son programme ?
Note : la fonction random() du langage Python renvoie un nombre aléatoire compris entre 0 et 1. On l’importe du module random.
Voir le corrigé de l’exercice 7
Exercice 8 - donner un programme qui fournit les 100 premiers entiers.
a) N est un nombre entier naturel non nul. Quel est le résultat donné par la fonction diviseurs (N) dont l’algorithme est le suivant ?
Fonction diviseurs (N)
Affecter à \(x\) la valeur 0
Pour \(k\) allant de 1 à N
Si \(k\) divise N alors
Affecter à \(x\) la valeur \(x+1\)
Fin Si
Fin Pour
Résultat \(x\)
b) Écrire un programme qui détermine les nombres entiers de 1 à 100 qui possèdent au moins dix diviseurs.
Voir le corrigé de l’exercice 8
Exercice 9 - un programme écrit en Python.
Voici un programme écrit avec le langage Python.
print(« Entrer x : »)
x=int(input())
y=x**2
y=-y+3*x
y=y+4
print(« y= », y)
a) Quel est le type de la variable \(x\) ?
b) Pour chacune des valeurs suivantes de \(x\) saisie en entrée, donner la valeur de \(y\) affichée en sortie.
- \(x = 1\)
- \(x = -2\)
- \(x = 12\)
c) Le programme définit une fonction \(f : x \mapsto y\). Exprimer \(y\) en fonction du nombre entier \(x\).
Voir le corrigé de l’exercice 9
Exercice 10 - un programme écrit avec le langage Python.
Voici un programme écrit avec le langage Python.
print(« Entrer n : »)
n=int(input())
S=0
for j in range(1,n+1):
S=S+2*j
print(« S= », S)
a) On saisit \(n = 4\), quelle valeur le programme affiche-t-il en sortie ?
b) De façon plus générale, expliquer le calcul effectué par ce programme.
Voir le corrigé de l’exercice 10
Exercice 11 - simuler un lancer de dé et écrire un programme.
Le programme suivant simule 10 lancers d’un dé équilibré dont les faces sont numérotées de 1 à 6.
VARIABLES
S EST_DU_TYPE NOMBRE
k EST_DU_TYPE NOMBRE
x EST_DU_TYPE NOMBRE
DEBUT_ALGORITHME
S PREND_LA_VALEUR 0
POUR k ALLANT_DE 1 A 10
DEBUT_POUR
x PREND_LA_VALEUR ALGOBOX_ALEA_ENT(1,6)
S PREND_LA_VALEUR S+x
FIN_POUR
AFFICHER S
FIN_ALGORITHME
a) Expliquer ce que représente la valeur de la variable S affichée à la fin du programme.
b) Quelle est la valeur la plus grande de S que le programme peut afficher ?
Voir le corrigé de l’exercice 11
Exercice 12 - location d'une voiture et programmer un algorithme.
La location journalière d’une voiture coûte \(50\,€\), plus :
- \(0{,}25\,€\) par km parcouru jusqu’à 100 km ;
- \(0{,}35\,€\) par km au-delà.
Voici un algorithme qui, suivant le nombre \(x\) de kilomètres parcourus dans la journée, détermine et affiche le montant \(m\) de la location.
Variables : \(x\) est un nombre entier naturel
\(m\) est un nombre réel
Entrée : Saisir \(x\)
Traitement : Si \(x \leqslant 100\) alors
Affecter à \(m\) la valeur ……
sinon
Affecter à \(m\) la valeur ……
Fin Si
Sortie : Afficher \(m\)
a) Recopier et compléter cet algorithme.
b) Coder cet algorithme dans un langage de programmation.
c) Tester le programme obtenu avec différentes valeurs de \(x\).
Voir le corrigé de l’exercice 12
Exercice 13 - algorithme qui fournit la distance entre 2 points.
Sur une droite graduée, A et B sont deux points d’abscisses respectives \(a\) et \(b\).
a) Exprimer la distance AB en fonction de \(a\) et \(b\).
b) Écrire l’algorithme d’une fonction distance \((a,\,b)\) qui donne pour résultat la distance AB.
Voir le corrigé de l’exercice 13
Exercice 14 - algorithme qui précise si un triangle est rectangle.
ABC est un triangle dont on connaît les longueurs, en cm, des côtés.

Écrire l’algorithme d’une fonction H\((a,\,b,\,c)\) qui donne pour résultat la chaîne « Vrai » si le triangle ABC est rectangle en A et la chaîne « Faux » sinon.
Voir le corrigé de l’exercice 14
Exercice 15 - volume d'un cylindre et écrire un algorithme.
Un cylindre a pour hauteur \(h\) cm et pour base un disque de rayon R cm. L’aire, en \(\text{cm}^2\), de sa base est notée S et le volume, en \(\text{cm}^3\), du cylindre est noté V.
a) L’algorithme ci-dessous permet de saisir en entrée R et \(h\) puis calcule S, V et affiche V en sortie.
Variables : R, \(h\), S, V sont des nombres réels
Entrées : Saisir R, \(h\)
Traitement : Affecter à S la valeur ……
Affecter à V la valeur ……
Sortie : Afficher V
Recopier et compléter cet algorithme.
b) Coder cet algorithme dans un langage de programmation.
c) Contrôler le programme avec des exemples.
Voir le corrigé de l’exercice 15
Exercice 16 - préciser le plus petit ensemble du nombre a.
On considère l’algorithme de la fonction nombre ci-dessous qui prend comme argument un nombre \(a\) et qui renvoie \(e\) :
Fonction nombre(a)
b prend la valeur de a²
c prend la valeur la valeur a-b
d prend la valeur 2c
e prend la valeur d - c + b
Renvoyer e
Fin
Préciser le plus petit ensemble auquel appartient nombre(a) pour les arguments de \(a\) suivantes :
\(2\) ; \(-4\) ; \(\sqrt{2}\).
Voir le corrigé de l’exercice 16
Exercice 17 - on exécute le script ci-dessous.

Lorsqu’on exécute le script ci-contre :
from math import *
def nombre (a):
b=a/2
c=3+b
d=sqrt(c)
return d
a. nombre (3) est-il un entier ?
b. nombre (12) est-il un entier ?
c. nombre (\(-4\)) est-il un entier ?
d. Quel sera l’affichage de nombre (\(-12\)) ?
Voir le corrigé de l’exercice 17
Exercice 18 - l'algorithme de la fonction opération.
On considère l’algorithme de la fonction operation ci-dessous.
Fonction operation(a)
b prend la valeur de -a.
c prend la valeur la valeur b²
d prend la valeur -2c
e prend la valeur d + |a|
Si e ∈ ℤ alors
renvoyer « entier »
Sinon Renvoyer « pas entier. »
Fin du si
Fin
Qu’affiche la fonction operation lorsqu’on lui donne comme argument :
- \(-2\) ?
- \(3\) ?
- \(\sqrt{2}\) ?
Voir le corrigé de l’exercice 18
Exercice 19 - script de la fonction compteur.
On considère le script de la fonction compteur prenant comme argument un nombre strictement compris entre 0 et 1.
from math import *
def compteur(a):
N=0
while a>=0.1:
a=a*a
N=N+1
return N
a. Quelle est la valeur de compteur (0.9) ? compteur (0.1) ?
b. Que représente l’affichage de ce programme ?
Voir le corrigé de l’exercice 19
Exercice 20 - algorithme qui détermine la racine carrée.
Voici un algorithme permettant de déterminer une valeur approchée de \(\sqrt{n}\) pour tout entier naturel non nul à \(p\) près :
| Langage naturel | Script Python |
|---|---|
| Affecter à \(u\) la valeur \(n\) Tant que \(u-\sqrt{n}\gt p\) Affecter à \(u\) la valeur \(\dfrac{1}{2}\left(u+\dfrac{n}{u}\right)\) Fin du tant que Afficher \(u\) |
|
- Appliquer cet algorithme avec \(n=2\) et \(p=0{,}01\) en complétant le tableau suivant en arrondissant les résultats à \(10^{-3}\) près :
\(u\) \(2\) \(1{,}5\) … \(u-\sqrt{2}\) \(0{,}586\) … … Donner l'affichage de l'algorithme.
- Quel est l'affichage de val_app (3,0.0001) ?
- Quel est l'affichage de val_app (7,0.00001) ?
Voir le corrigé de l’exercice 20
Exercice 21 - ordinateur et mot de passe.
Pour rentrer dans une zone de recherche mathématique secrète, Monsieur Galois possède un mot de passe. L'ordinateur demande à M. Galois de taper son mot de passe, en retour après un calcul s'affiche à l'écran un code à quatre chiffres (a, b, c, d).
M. Galois détermine à partir de ce code un nombre compris entre 0 et 9 à l'aide du script ci-dessous :
from math import *
def code(a,b,c,d):
p=1000*a+100*b+10*c+d
s=p
while s>=10:
k=p%(a+b+c+d)
if k<10:
s=k
else:
s=k%10
return s
- L'ordinateur propose 2020 à M. Galois, quel est le nombre \(s\) généré ?
- Même question si l'ordinateur propose 1789 ?
- L'ordinateur peut-il lui proposer le code 0000 ?
Voir le corrigé de l’exercice 21
Exercice 22 - algorithme de la fonction nombre.
On considère l'algorithme de la fonction nombre ci-dessous qui prend comme argument un nombre \(a\) et qui renvoie \(e\) :
| Fonction nombre(a) b prend la valeur de \(a^2\). c prend la valeur la valeur \(a-b\) d prend la valeur \(2c\) e prend la valeur \(d-c+b\). Renvoyer e Fin |
Préciser le plus petit ensemble auquel appartient nombre(a) pour les arguments de \(a\) suivantes :
\(2\,;-4\,;\sqrt{2}\).
Voir le corrigé de l’exercice 22
Exercice 23 - script et nombre entier.
Lorsqu'on exécute le script ci-contre :

from math import *
def nombre (a):
b=a/2
c=3+b
d=sqrt(c)
return d
- nombre (3) est-il un entier ?
- nombre (12) est-il un entier ?
- nombre (\(-4\)) est-il un entier ?
- Quel sera l'affichage de nombre (\(-12\)) ?
Voir le corrigé de l’exercice 23
Exercice 24 - qu'affiche la fonction opération ?.
On considère l'algorithme de la fonction operation ci-dessous.
| Fonction operation(a) b prend la valeur de \(-a\). c prend la valeur \(b^2\) d prend la valeur \(-2c\) e prend la valeur \(d+|a|\) Si \(e\in\mathbb{Z}\) alors renvoyer « entier » Sinon Renvoyer « pas entier. » Fin du si Fin |
Qu'affiche la fonction operation lorsqu'on lui donne comme argument :
- \(-2\) ?
- \(3\) ?
- \(\sqrt{2}\) ?
Voir le corrigé de l’exercice 24
Exercice 25 - que représente l'affichage de ce programme ?.
On considère le script de la fonction compteur prenant comme argument un nombre strictement compris entre 0 et 1.
from math import *
def compteur(a):
N=0
while a>=0.1:
a=a*a
N=N+1
return N
- Quelle est la valeur de compteur (0.9) ? compteur (0.1) ?
- Que représente l'affichage de ce programme ?
Voir le corrigé de l’exercice 25
Exercice 26 - quel est le plus petit ensemble fourni par ce script ?.
On considère le script suivant :
def quisuisje(x):
if x<=-1 :
a=2*x-1
elif x<4 :
a=x/3
else :
a=x**2-3
return a
Quel est le plus petit ensemble auquel appartient quisuisje(\(x\)) lorsque l'on saisit les arguments :
\(-2\) ? \(\sqrt{2}\) ? \(3\sqrt{2}\) ? \(\dfrac{1}{2}\) ? et \(\dfrac{3}{2}\) ?
Voir le corrigé de l’exercice 26
Exercice 27 - le script dichotomie.
On considère le script suivant :
def dichotomie(a,b,n):
while b-a>n:
if (a+b)/2-sqrt(2)>0:
b=(a+b)/2
else:
a=(a+b)/2
return (a,b)
- En recopiant et complétant le tableau suivant, quel est l'affichage de ce script sur les arguments sont (1,2,0.1) ?
\(b-a\) \(a\) \(1\) \(b\) \(2\) - Que représente l'affichage de ce script ?
- Que doit-on modifier si on souhaite un encadrement à \(10^{-3}\) près de \(\sqrt{7}\) ?
Voir le corrigé de l’exercice 27
Exercice 28 - fonction nombre et algorithme.
On considère l'algorithme de la fonction nombre ci-dessous qui prend comme argument un nombre \(a\) et qui renvoie \(e\) :
| Fonction nombre(a) b prend la valeur de \(a^2\). c prend la valeur la valeur \(a-b\) d prend la valeur \(2c\) e prend la valeur \(d-c+b\). Renvoyer e Fin |
Préciser le plus petit ensemble auquel appartient nombre(a) pour les arguments de \(a\) suivantes :
\(2\,;-4\,;\sqrt{2}\).
Voir le corrigé de l’exercice 28
Exercice 29 - quel est l'affichage fourni par ce script ?.
Lorsqu'on exécute le script ci-contre :

from math import *
def nombre (a):
b=a/2
c=3+b
d=sqrt(c)
return d
- nombre (3) est-il un entier ?
- nombre (12) est-il un entier ?
- nombre (\(-4\)) est-il un entier ?
- Quel sera l'affichage de nombre (\(-12\)) ?
Voir le corrigé de l’exercice 29
Exercice 30 - algorithme de la fonction opération.
On considère l'algorithme de la fonction operation ci-dessous.
| Fonction operation(a) b prend la valeur de \(-a\). c prend la valeur \(b^2\) d prend la valeur \(-2c\) e prend la valeur \(d+|a|\) Si \(e\in\mathbb{Z}\) alors renvoyer « entier » Sinon Renvoyer « pas entier. » Fin du si Fin |
Qu'affiche la fonction operation lorsqu'on lui donne comme argument :
- \(-2\) ?
- \(3\) ?
- \(\sqrt{2}\) ?
Voir le corrigé de l’exercice 30
Exercice 31 - argument et fonction compteur.
On considère le script de la fonction compteur prenant comme argument un nombre strictement compris entre 0 et 1.
from math import *
def compteur(a):
N=0
while a>=0.1:
a=a*a
N=N+1
return N
- Quelle est la valeur de compteur (0.9) ? compteur (0.1) ?
- Que représente l'affichage de ce programme ?
Voir le corrigé de l’exercice 31
Algorithme : la bonne méthode
Tout d'abord, fais l'exercice sans regarder la solution. Puis contrôle tes calculs avant de passer à la suite. Ainsi, tu repères vite tes erreurs de méthode. En outre, quelques minutes par jour suffisent pour retenir l'essentiel.
Par exemple, refais un exercice raté deux jours plus tard. Enfin, le programme officiel de mathématiques est détaillé sur le site Éduscol. Également, tu peux continuer avec systèmes de deux équations à deux inconnues : exercices de maths en 2de corrigés en PDF.
Ressources de maths en Seconde
Cours
Tout voirExercices corrigés
Tout voirContrôles
Tout voirQCM
Tout voir
























































