Uploaded by multiplycatnaps

correction bac-blanc20222023 (1)

advertisement
Correction Bac blanc Algorithmique 2022/2023
(El Mourouj, Bir ElKasaa, Boumhel, Borj Cedria et Hammam lif)
Exercice 1 : (2.25 points)
1) F
F
V pour 2ème on acceptera même V
(0.25 * 8) + 0.5
2) F
F
V
3) V
V
F
Exercice 2 : (2.5 points)
1) Cette suite est d’ordre 1 car chaque terme dépend du terme qui le précède 0.5
2) Algorithme de la fonction Terme_N
Fonction Terme_N ( n : entier) : Réel
0.25
Debut
Si n = 1 alors
0.5
Retourner 1
0.5
Sinon
Retourner 1 + 1 / Terme_N ( n-1 )
1
Fin Si
Fin
Exercice 3 : ( 4 points)
1) Algorithme de la fonction Valeur1
Fonction Valeur1 ( ) : Réel
0.25
Début
P3  1
P1
TDOL
SC  1
Signe  1
O
T/N
Répéter
P3,P,Signe
Entier
SP  SC
Sc,Sp
Réel
1,75
Signe  - Signe
P3  P3 * 3
PP+2
SC  SC + (signe * 1/ (P3 * P))
Jusqu’à ABS ( Racine_carrée(12)*SC – Racine_carrée(12)*SP) ≤ 0.0001
Retourner ABS(Racine_carrée(12)*SC)
Fin
2) Algorithme de la fonction Valeur2
Fonction Valeur2 ( N : entier ) : Réel
Début
Nbpi  0
Pour i de 1 à n Faire
X  Aléa ( )
1,5
Y  Aléa ( )
Si X*X + Y*Y ≤ 1 Alors
Nbpi  Nbpi + 1
Fin Si
Fin Pour
Retourner 4 * (Nbpi / N)
Fin
1/3
0.25
TDOL
O
Nbpi, i
X,Y
T/N
Entier
Réel
(0.25) sur les 2 tdol
Exercice 4 : (4 points)
1) Algorithme de la fonction Alph_Décal
Fonction Alph_Décal (C : caractère) : chaine
Début
ChC # 1ère lettre de l’alphabet décalé
R  Ord(C) – 64 # rang caractère
Pour i de 0 à 24 faire # 25 lettres
1.5
Ch  Ch + chr((i+R) mod 26) + 65
Fin Si
Fin Pour
Retourner Ch
Fin
les 2 tdol 0.25
TDOL
O
Ch
R,i
T/N
chaine
entier
2) Algorithme de la fonction Crypt
Fonction Crypt (ch, cle : chaine) : chaine
TDOL
Début
O
Chres""
Chres
icle  -1 # compteur pour cle
icle , i ,lcle, p
lcle  long(cle)
Pour i de 0 à long(ch) – 1 Faire
icle (icle+1) mod lcle
Si majus(ch[i]) dans ["A".. "Z"] alors
2,25
Alpha  Alph_decal(cle[icle])
p  ord(majus(ch[i])) -64 # p  rang
Chres  Chres + Alpha[p-1]
Sinon
Chres  Chres + ch[i]
Fin si
Fin pour
Retourner Chres
Fin
Exercice 5 : (7 points)
 Algorithme du module Mouvements
Procédure Mouvements ( @ M : MAT , N : Entier)
Début
OUVRIR ("Mouvements.txt", F , "r")
Tant que NON(fin_fichier(F) Faire
Lire_ligne( F, ch)
Sensd  CH[1] # ligne ou colonne ( L ou C)
Sensm  CH[2] # H , B, G OU D
p  valeur(CH[2]) # n° ligne ou n° colonne
MOVELIGCOL (M, N, Sensd, Sensm, p)
Fin Tant Que
Fermer(F)
Fin
2/3
T/N
chaine
entier
TDOL
O
F
Ch
Sensd, sensm
p
MOVELIGCOL
T/N
FTEXTE
Chaine
Caractère
Entier
procédure
Algorithme de la procédure MOVELIGCOL
Procédure MOVELIGCOL (@M : MAT, N : entier, LC ,S : caractère , p : entier)
Début
SI LC = "L " alors #permutation circulaire des lettres de la ligne d’indice p
SI = "G" alors
aux  M[p,0]
Pour j de 0 à N-2 faire
M[p, j]  M[p,j+1]
M[p,N-1]  aux
Sinon
aux  M[p,N-1]
Pour j de N-1 à 1 faire (pas = -1)
M[p, j]  M[p,j-1]
M[p,0]  aux
Fin Si
Sinon
# cas colonne
SI S = "H" alors
aux  M[0,p]
Pour i de 0 à N-2 faire
M[i,p]  M[,i+1,p]
TDOL
M[N-1,p]  aux
Sinon
O
T/N
aux  M[N-1,p]
i,j
entier
Pour i de N-1 à 1 faire pas = -1
aux
Caractère
M[i, p]  M[i-1,p]
M[0,p]  aux
Fin Si
Fin Si
Fin
 Algorithme de la fonction Verif_magique
Fonction Verif_Magique ( M : MAT , N : Entier) : booléen
Début
i  -1
Répéter
TDOL
ii+1
j 0
O
T/N
Répéter
i,j
entier
j  j+1
ok
booléen
ok  M[i,j ] = M[i, j-1]
Jusqu’à (ok = Faux) ou (j=N-1)
Jusqu’à (ok = faux) ou ( i=N - 1)
Retourner Ok
Fin
3/3
Related documents
Download