Professional Documents
Culture Documents
Correction Serie 1
Correction Serie 1
4- Procédure Palindrome-harshad ()
Début
Pour i de 1000 à 9999 faire
s1 f(i,1)
s2 F(i,10)
Si ( i=s2) et (i MOD s1=0) Alors ecrire (i)
FinSi
3
FinPour
Fin
Exercice N°4 (15min)
Pour déterminer le carré d’un entier naturel n, on utilise une méthode dont le principe est le
suivant : Le carré d’un entier naturel n est la somme des n premiers entiers impairs
Exemple :
Pour n=10 : 102 = 1 + 3 + 5 + 7 + 9 + 11 + 13 + 15 + 17 + 19
Travail à faire : établir l’algorithme d’une fonction qui utilise la méthode décrite ci-dessus pour
retourner le carré d’un entier naturel n. Fonction carreN(n :entier) :entier
Début
Fonction carreN(n :entier) :entier
S0 , i1 , nb0
Début
Répéter
S0
s s + i
Pour i de 1 à 2*n-1 faire
i i + 2
Si i MOD2 =1 alors s s +i
nb nb+ 1
FinSi
jusqu’à nb=n
FinPour
Retourner S
Retourner S
Fin
Fin
Exercice N°5 (20min) (pratique) Procédure distinct()
Début
Un entier est dit distinct s’il est composé de
chiffres tous différents. Pour i de 10 à 20000 faire
Exemples : ch convch(i)
N=1273 est dit distinct Repeter
N= 1565 est dit non distinct aux ch[0]
Ecrire un programme python qui permet ch effacer (ch,0,1)
d’afficher tous les nombres distincts compris jusqu’à pos(aux ,ch)≠-1 ou long(ch)=1
dans l’intervalle [10..20000]. Si pos(aux ,ch)=-1 alors ecrire(i) FinSi
Exercice N°6 (20min) (pratique) Finpour
Fin
On dit que le nombre N est réversible dans la def afficher() :
multiplication par M si on peut reverser les for i in range(1,20000):
chiffres du produit de N par M.
Exemple ch=str(i)
Le nombre 2178 est réversible dans la j=int(ch[::-1])
multiplication par 4 car 2178x4 = 8712. k=2
Les chiffres de 8712 et de 2178 sont en s=0
effet réversibles while s< j :
Ecrire un programme python qui permet s=k*i
d’afficher tous entiers réversibles < 20000 k=k+1
if s==j :
print(i,k-1)
4
Exercice N°8 (20min)
Ecrivez un programme qui trouve et affiche à l'écran de combien de manières différentes on peut
écrire un nombre naturel donné comme produit de deux nombres naturels.
Explication Le nombre naturel 60 peut s'écrire comme produit de deux autres nombres naturels
de 6 manières différentes (on ignore les écritures commutatives) :
1 x 60 ; 2 x 30 ; 3 x 20 ; 4 x 15 ; 5 x 12 ; 6 x10. Procédure aficher ( n :entier )
Début
Pour i de 1 à n div 2 faire
Pour j de 1 à n faire
Si (i*j=n) et (j>i) alors
ecrire (i,’’*’’,j,’’=’’,n)
FinSi
FinPour
FinPour
Fin
Exercice N°9 (25min) pratique
On se propose d’écrire un programme python qui permet de déterminer et d’afficher toutes les
représentations sous forme de sommes d’entiers consécutifs d’un entier n donné.
Exemple d’exécution :
Entrer un entier : 45
Les sommes consécutives sont :
45 = 1+2+3+4+5+6+7+8+9
45 = 5+6+7+8+9+10 def afficher(n):
45 = 7+8+9+10+11 for i in range(1,n//2+1):
45 = 14+15+16
s=0
45 = 22+23
j=i
while s<n :
s=s+j
j=j+1
if s==n:
print(n,'=',i,end='')
for k in range(i+1,j):
print('+',k,end='')
print()
5
Archive du bac
Bac 2 (45 min)
Une chaîne est dite existante dans un tableau de chaînes si elle peut être formée à partir de la
concaténation des ièmes caractères des différents éléments de ce tableau.
Exemple :
Pour N = 5 et le tableau T suivant :
T "SALAH" "AMIRA" "BILEL" "ANWAR" "KARIM"
1 2 3 4 5
Pour Ch = "AMINA" le programme affiche : "chaîne existante dans T" car elle est le résultat
de la concaténation des 2èmes caractères des différents éléments de T.
Pour Ch = "SALWA" le programme affiche : "chaîne inexistante dans T" car les caractères de
Ch n’existe pas dans la même position dans les éléments de T.
Pour Ch = "HAMZA" le programme affiche : "chaîne inexistante dans T" concaténation des
ièmes caractères de T ne forme la chaine Ch.
Travail demandé :
Ecrire l’algorithme d’un programme qui permet de saisir un entier N (5≤N≤10) et une chaîne
Ch composée de lettres majuscules et de longueur N, puis de remplir un tableau T par N chaînes
composées de lettres majuscules et de même longueur que Ch et de vérifier l’existence de Ch
dans T comme décrit ci-dessus.
Fin
7