Aller au contenu
Accueil › Exercices de maths › 2de › Exercices de maths 2de : Programmation en Python

Exercices de maths 2de : Programmation en Python

  • par
Rate this post
Exercices de maths 2de : Programmation en Python

26 exercices classés par difficulté (★ facile, ★★ moyen, ★★★ difficile). Cherche d’abord sans regarder le corrigé !

2 Échange de deux variables ★★★

Que fait ce programme ? Donne les valeurs de a et b après chaque ligne, puis l’affichage.

a = 4
b = 9
a = a + b
b = a - b
a = a - b
print(a, b)

3 Quatre affichages ★★★

Qu’affiche ce programme ? Explique la différence entre les lignes 3 et 4.

x = 5
print("x vaut", x)
print("x vaut " + str(x))
print("x * 2")
print(x * 2)

4 Prix toutes taxes comprises ★★★

Écris un programme qui demande un prix hors taxe en euros et affiche le prix TTC avec une TVA de 20 %. Teste-le avec 50 €.

5 Valeurs de conditions ★★★

Pour x = 7, donne la valeur (True ou False) de chaque condition :

  1. x > 5 and x < 10
  2. x <= 3 or x == 7
  3. x != 7
  4. not (x > 9)
  5. x < 7 or x > 7

6 Lire un if else ★★★

Qu’affiche ce programme si l’utilisateur saisit 15 ? 18 ? 40 ?

age = int(input("Age : "))
if age < 18:
    print("Mineur")
else:
    print("Majeur")
print("Merci")

7 Appeler une fonction ★★★

Calcule à la main f(4), f(−2) et f(0) pour la fonction ci-dessous, puis donne l’affichage du programme.

def f(x):
    y = 3 * x - 7
    return y

print(f(4), f(-2), f(0))

8 Deux boucles for ★★★

Qu’affiche ce programme ? Combien de tours fait chaque boucle ?

for i in range(1, 5):
    print(i * i)
for j in range(3):
    print("Top", j)

9 Tarif de piscine ★★★

Une piscine fait payer 3 € aux moins de 12 ans, 4,50 € de 12 à 17 ans inclus et 6,50 € à partir de 18 ans. Écris un programme qui demande l’âge et affiche le tarif, puis teste-le avec 11, 12, 17 et 18.

10 Pair ou impair ★★★

Écris un programme qui demande un entier n et indique s’il est pair ou impair. Précise l’expression qui permet de le tester et vérifie avec 38 et 51.

11 Fonctions du rectangle ★★★

Écris deux fonctions perimetre et aire qui prennent en paramètres la longueur L et la largeur l (en cm) d’un rectangle. Que renvoient perimetre(8, 3) et aire(8, 3) ? Quelle est l’aire d’un rectangle de 12,5 cm sur 4 cm ?

12 Chasse aux erreurs ★★★

Ce programme est censé afficher « dix » si on saisit 10, et « autre » sinon. Il contient quatre erreurs. Trouve-les et recopie le programme corrigé.

n = int(input("Nombre : "))
if n = 10
print("dix")
else
    print("autre")

13 Somme des entiers ★★★

1. Quelle somme calcule ce programme ? Donne l’affichage.

s = 0
for i in range(1, 11):
    s = s + i
print(s)

2. Modifie la boucle pour additionner uniquement les entiers impairs de 1 à 9. Que trouves-tu ?

14 Table de multiplication ★★★

Écris un programme qui affiche la table de multiplication de 7, de 7 × 1 à 7 × 10. Combien de lignes sont affichées ? Quelle est la dernière ?

15 Placement à 5 % ★★★

Un capital de 1 000 € est placé à intérêts composés au taux de 5 % par an. On veut savoir au bout de combien d’années il dépassera 1 200 €.

  1. Écris un programme avec une boucle while.
  2. Quelle valeur approximative est affichée ? Conclus.

16 Vrai ou faux ? ★★★

Dis si chaque affirmation est vraie ou fausse, en justifiant.

  1. L’instruction x = x + 1 est impossible car une valeur ne peut pas être égale à elle-même plus 1.
  2. input(« n ») renvoie un nombre entier si l’utilisateur tape 5.
  3. range(4) fait passer la variable par les valeurs 1, 2, 3, 4.
  4. Dans if / elif / else, plusieurs blocs peuvent être exécutés au même passage.

17 Compte à rebours ★★★

Que fait ce programme ? Quelles valeurs prend i ? Que changer pour compter de 10 à 1 de 1 en 1 ?

for i in range(10, -1, -2):
    print(i)
print("Decollage !")

18 Fonction booléenne ★★★

1. Quel ensemble de réels x vérifie « x >= -1 and x < 8 » ?

2. Donne l’affichage de ce programme, puis écris une fonction hors_intervalle(x) qui renvoie le contraire.

def dans_intervalle(x):
    return x >= -1 and x < 8

print(dans_intervalle(-1), dans_intervalle(8), dans_intervalle(3.5), dans_intervalle(-4))

19 Tarif de parking ★★★

Un parking facture 1,50 € l’heure pour les deux premières heures, puis 2 € par heure supplémentaire, avec un plafond de 15 € par jour. (On compte des heures entières, de 1 à 24.)

  1. Calcule à la main le prix pour 1 h, 4 h, 10 h et 20 h.
  2. Écris une fonction parking(h) qui renvoie le prix.

20 Croissance d’une population ★★★

Une ville compte 5 000 habitants et sa population augmente de 4 % par an. On cherche en combien d’années elle dépassera 6 000 habitants.

  1. Complète le programme ci-dessous (cases …).
  2. Que renvoie-t-il ? Justifie par un calcul.
pop = 5000
annees = 0
while ... :
    pop = ...
    annees = annees + 1
print(annees)

21 Premier carré supérieur à 500 ★★★

Écris un programme qui détermine le plus petit entier naturel n tel que n² > 500. Quelle valeur trouve-t-il ? Vérifie à la main.

22 Compter les diviseurs ★★★

1. Explique ce que fait la fonction ci-dessous.

def nb_diviseurs(n):
    c = 0
    for d in range(1, n + 1):
        if n % d == 0:
            c = c + 1
    return c

2. Donne l’affichage de nb_diviseurs(12), nb_diviseurs(17) et nb_diviseurs(36) en listant les diviseurs.

3. Comment utiliser cette fonction pour savoir si un entier n ≥ 2 est premier ?

23 Factorielle ★★★

La factorielle d’un entier n, notée n!, est le produit 1 × 2 × … × n (et 0! = 1). Complète la fonction puis donne factorielle(5).

def factorielle(n):
    p = 1
    for k in range(..., ...):
        p = ...
    return p

24 Remboursement d’un prêt ★★★

On emprunte 2 000 €. Chaque mois, la dette augmente de 1 % d’intérêts, puis on rembourse 150 €. On s’arrête quand la dette est nulle ou négative.

  1. Calcule la dette après le 1er mois, puis après le 2e mois.
  2. Écris un programme qui donne le nombre de mois nécessaires. Interprète le résultat.

25 Fonctions qui s’appellent ★★★

On considère le programme ci-dessous.

def carre(x):
    return x * x

def somme_carres(a, b):
    return carre(a) + carre(b)

def est_rectangle(a, b, c):
    return somme_carres(a, b) == carre(c)

print(somme_carres(3, 4))
print(est_rectangle(3, 4, 5))
print(est_rectangle(5, 6, 8))

1. Donne l’affichage en justifiant chaque ligne.

2. Quelle propriété de géométrie cette fonction permet-elle de vérifier ? Le triangle de côtés 5, 6 et 8 est-il rectangle ?

26 Indice de masse corporelle ★★★

L’indice de masse corporelle est IMC = masse (en kg) ÷ taille² (en m). On le classe selon les seuils : moins de 18,5 « maigreur » ; de 18,5 inclus à 25 exclu « normal » ; de 25 inclus à 30 exclu « surpoids » ; 30 et plus « obesite ».

Écris les fonctions imc et classe, puis détermine la catégorie des personnes : (70 kg ; 1,75 m), (50 kg ; 1,80 m), (95 kg ; 1,70 m).

Voir le corrigé des exercices