Vous êtes sur la page 1sur 2

Mme JIHENE CHIBOUB Classe : 4ème Science

Lycée Carthage Byrsa Date : Vendredi 04/03/2022


Année Scolaire 2021-2022 Devoir de synthèse N° 2
Correction
1) Algorithme Décomposition modulaire (Programme principal)
Début
SaisieN(n)
Remplir_Tab (n,T) TDO Globaux
P0 Objet Type
Supprimer(p,n,T) N, Entier
Crible_Eratostene(n,T) T Tab
Affiche_premier (n,T) SaisieN Procédure
Fin Remplir_Tab , "
Supprimer "
TDNtypes Crible_Eratostene "
Type Affiche_premier "

Tab = tableau de 300 entiers

2) Les Algorithmes des Modules :


Procédure saisieN( @ N : entier )
début
Répéter
Ecrire (" donner l’ entier n : ")
Lire (n)
Jusqu’à (1< N ≤300)
fin

Procédure Remplir_Tab ( n : entier ; @T :Tab)


Début
Pour i de 0 à n-1 Faire TDO Locaux
T[i]i+1 Objet Type
Fin Pour i Entier
Fin

Fonction premier ( v :entier) : boolèen


Début
d2
Pre Vrai
TDO Locaux
Tant Que (d<= v div2) et ( Pre) faire
Objet Type
Si v mod d=0 alors
d Entier
Pre  Faux Pre booléen
FinSI
dd+1
Fin Tant Que
Retourner Pre
Fin

Lycée Carthage Byrsa : Mme Jihene Chiboub Correction Devoir Synthèse2 : 4Science
Procédure Crible_Eratostene(@ n : entier ; @ T : Tab)
Début
Pour i de 0 à (Ent(RacineCarré(n+1) )Faire
Si premier(t[i]) Alors
ji+1
Tant Que j<=n-1 Faire
TDO Locaux
Si t[j] MOD t[i]=0 Alors Objet Type
Supprimer (j,n,t) i,j Entier
FinSI supprimer procédure
jj+1
Fin Tant Que
FinSi
Fin Pour
Procédure supprimer (p : entier ; @ m : entier ; @ T : Tab )
Début
TDO Locaux
Pour i de p à m-2 Faire
Objet Type
T[i]  T[i+1] i Entier
Fin Pour
mm-1
Fin
Procédure Affiche_premier (n : entier ; T : Tab)
TDO Locaux
Début Objet Type
Pour i de 0 à n-1 Faire i Entier
Ecrire ( T[i])
Fin
import numpy as np def supprimer(p,n,t):
from math import * for j in range(p,n-1):
def saisien(): t[j]=t[j+1]
n=int(input(" donner un entier positf ")) n=n-1
while not( 1<n<=300): return t,n
n=int(input(" resaisir un entier positif : "))
return n
def remplir_Tab(n): def Crible_Etratostene(t,n):
t=[0]*n for i in range(int(sqrt(n+1))+1):
for i in range(n): if premier(t[i]):
t[i]=i+1 j=i+1
return t while j<=n-1 :
def premier(m): if t[j] % t[i]==0:
d=2 t,n=supprimer(j,n,t)
pre=True j=j+1
while (d<=m //2) and (pre): return t,n
if m %d==0:
pre=False n=saisien()
d+=1 t=remplir_Tab(n)
return pre p=0
def affiche_premier(t,n): t,n=supprimer(p,n,t)
for i in range(n): t,n=Crible_Etratostene(t,n)
print( t[i],end=" ") affiche_premier(t,n)

Lycée Carthage Byrsa : Mme Jihene Chiboub Correction Devoir Synthèse2 : 4Science

Vous aimerez peut-être aussi