Enseignant Devoir Bac blanc
Mr Mourad NASRI
Matière : Alg & Prog Classe : 4éme SI
Lycée Kasserine
AS 2022/2023 Durée : 3h Date : 11 Mai 2023
Exercice 1 (2 + 1.5 = 3.5 points)
Soit l’algorithme de la fonction Mystere suivant :
Fonction Mystere ( n : entier) : entier
Début
d2
x 0
Répéter
Si n Mod d = 0 alors
x x+d
n n Divd
Si non
d d+1
FinSi
Jusqu’à n=1
Retourner x
Fin
1
Exercice 2 (3 points)
Un nombre est divisible par 7 si, en soustrayant et en additionnant alternativement chaque tranche de
trois chiffres de droite à gauche, le résultat est divisible par 7.
Exemples :
- 67 456 802 est divisible par 7, en effet, la somme alternée de blocs de 3 chiffres est :
802-456+67 = 413 et puisque 413 est divisible par 7 donc 67 456 802 l’est aussi.
- 5 527 579 818 992 est divisible par 7, en effet, la somme alternée de blocs de 3 chiffres est :
992-818+579-527+5 = 231 et puisque 231 est divisible par 7 donc 5 527 579 818 992 l’est
aussi.
NB : si la somme obtenue est composée par plus que 3 chiffres, on refait la même étape
jusqu’à avoir un nombre composé au plus de 3 chiffres.
Travail demandé :
Ecrire un algorithme d’un module Div_7 qui permet de déterminer si un entier n donné est
divisible par 7 ou non en utilisant le principe décrit précédemment.
Exercice 3 (2 points)
Soit x un réel positif et U une suite définie par :
𝟏+𝒙
U0 = 𝟐
𝟏 𝒙
Un = 𝟐 (𝑼𝒏−𝟏 + ) pour tout n > 0
𝑼𝒏−𝟏
𝑼𝒏 −𝑼𝒏−𝟏
Le terme Un est une valeur approchée de la racine carrée de x à epsilon près, si | | < epsilon.
𝑼𝒏−𝟏
Travail demandé :
1- Quel est l’ordre de récurrence de la suite U ? justifiez votre réponse.
2- Ecrire un algorithme d’une fonction RacineU(x) qui retourne une valeur approchée de la racine
carrée d’un réel positif x à 10-4 près en utilisant la suite U définie précédemment.
N.B. l’élève n’est pas appelé à saisir x.
2
Exercice 4 (2+0.75+1.75 = 4.5 points)
La figure ci-contre représente la courbe de la fonction f définie par f(𝐱 ) = x*sin(x2) sur IR.
Etant donné que : < 1 si a < √𝝅
𝒂
∫𝟎 𝒙 ∗ 𝐬𝐢𝐧(𝒙𝟐 )𝒅𝒙 = 1 si a = √𝝅
> 1 si a > √𝝅
On remarque que la surface délimitée
par les deux droites d’équations x =0 et
x = a, l’axe des abscisses et la courbe
f(x), varie selon la valeur de l’abscisse
a du point M (la surface hachurée dans
Hgfjfkuy
la Figure).
Cette surface sera égale à 1 lorsque la
valeur de a est égale à √𝝅.
Travail demandé :
Ci-dessous une partie d’un algorithme de la fonction Surface, qui permet de calculer la surface
hachurée en fonction de l’abscisse a du point M.
N.B : n représente le nombre de subdivisions.
Fonction Surface ( a : réel , n :entier) : réel
Début
S0
……………………………..…….
……………………………...…….
Pour i de 1 à n faire
……………………..…………….
xx+h
Fin pour
Retourner ……………………………
Fin
1- Recopier l’algorithme de la fonction Surface sur votre copie et compléter les vides de par les
quatre instructions convenables à partir de la liste d’instructions suivante :
x 1 h (a+0) / n s s+(f (x)+f (x+h))*h/2 s*h
x0 h (a - 0) / n s s+(f (x)+f (x+h)) / 2 s
Avec f la fonction définie par :
Fonction f (x : reel ) : reel
Debut
Retourner x*sin(x2)
Fin
2- Mettre V dans la case si la réponse est valide et F dans le cas contraire.
La méthode décrite dans la solution est la méthode des :
Trapèzes Rectangles gauche Rectangles droite
3
3- En faisant appel à la fonction Surface, écrire un algorithme d’une fonction Calcul (a, n)
permettant de déterminer une valeur approchée de √𝝅, qui correspond à une valeur de la surface
proche de 1 avec une précision de 10-4.
N.B : On pourra calculer √𝝅 en variant l’abscisse a par pas de 10-4.
Exercice 5 (7 points)
Un nombre décimal n est dit brésilien s’il possède, dans une base B (avec 2<=B<=n-2), une
représentation qui s’écrit sous la forme de g chiffres égaux, c’est-à-dire : n = (kkk……..kk)B
Exemples :
- 7 est un nombre brésilien car 7 = (111)2
- 3124 est un nombre brésilien car 3124 = (44444)5
- 1170 est un nombre brésilien car 1170 = (2222)8
- 9 n’est un nombre brésilien car 9 = (1001)2 = (100)3 = (21)4 = (14)5 = (13)6 = (12)7 et aucune de
ces écritures n’est brésilienne.
On se propose d’écrire un algorithme d’une procédure Gen_Bres qui permet de créer et de remplir un
fichier d’enregistrement nommé ‘’ F_Bresilien.dat’’ par les nombres brésiliens contenus dans un
fichier texte existant nommé ‘’[Link]’’, sachant que chaque ligne du fichier texte ‘’[Link]’’
contient un nombre décimal et chaque enregistrement du fichier ‘’ F_Bresilien.dat’’ comportera les
champs suivant :
N : le nombre décimal
B : une base dans laquelle le nombre N s’ecrit sous la forme de p chiffres égaux avec
2<=B<=16.
Rep : la représentation du nombre décimal N dans la base B.
Travail demandé :
1- Donner une déclaration d’un type pour le fichier d’enregistrement ‘’ F_Bresilien.dat’’ ainsi que
celles des types nécessaires à sa déclaration.
2- Donner, en algorithme, les instructions d’ouverture des deux fichiers ‘’F_Bresilien.dat’’ et
‘’[Link]’’, sachant que le fichier à créer et à remplir ‘’F_Bresilien.dat’’ et le fichier
source ‘’[Link]’’ se trouvent sur la racine du disque D.
3- Ecrire un algorithme de la procédure Gen_Bres, sachant que le fichier ‘’[Link]’’ est déjà
rempli dans le programme appelant.
Premier pas vers la faculté !!
4