Vous êtes sur la page 1sur 3

4ème année Scientifiques Module 1 : Pc et programmation

Correction Série les chaînes


NB : une solution modulaire est exigée
Exercice1
#ex1 #Méthode 2
def verif (ch): def poids2(ch):
i=0
while (i<=len(ch)- alpha="ABCDEFGHIJKLMNOPQRSTUVWX
1)and("A"<=ch[i].upper()<="Z"): YZ"
i=i+1 voy="AEOUYI"
return i==len (ch) poi=0
for i in range (len(ch)):
def saisir(): if voy.find(ch[i].upper())!=-1:
ch=input("donner une chaine\n")
while not(ch!="")and verif (ch): poi=poi+(i*(alpha.find(ch[i].upper())+1))
ch=input("donner une chaine\n") return poi
return ch
#méthode 1 #programme principal
def poids1(ch): ch=saisir()
poi=0 p=poids1(ch)
for i in range (len(ch)): print("poids1=",p)
if ch[i].upper()in["A","E","O","U","Y","I"]: p=poids2(ch)
poi=poi+i*(ord(ch[i].upper())-64) print("poids2=",p)
return poi
Exercice2
#ex2 if ch[i]==c:
def verif(ch): nb=nb+1
i=0 return nb
l=len(ch) def affiche(ch):
while (i<=l-1) and (('a'<=ch[i]<='z') or ch2=""
(ch[i]==' ')): for i in range (len(ch)):
i+=1 if (ch[i]!=' ') and (ch2.find(ch[i]) ==-1):
return i==l ch2=ch2+ch[i]
def saisir(): print("le caractère ",ch[i]," figure
while 1 : ",occurrence(ch[i],ch)," fois dans la chaine
ch=input('saisir une chaine formée par ch")
des lettres alphabétiques miniscules\n')
if 3<=len(ch)<=20 and verif(ch) :
break
return ch #-------- PP -------
def occurrence(c,ch): ch=saisir()
nb=0 affiche(ch)
for i in range (len(ch)):
Exercice3 Cryptologie avec la méthode Jules César
#ex 3 crypter par la méthode jules def crypter(mot):
cesar motcry=""
def saisir(): for c in range(len(mot)):
mot=input('saisir une chaîne\n') if ('A'<= mot[c].upper() <='W'):
while mot =='': motcry = motcry +
mot=input('saisir une chaine\n') chr(ord(mot[c])+3)
return mot elif ('X'<= mot[c].upper() <='Z'):
1
4ème année Scientifiques Module 1 : Pc et programmation

motcry = motcry + else:


chr(ord(mot[c])-23) motcry = motcry + mot[c]
elif ('0'<= mot[c] <='6'): return motcry
motcry = motcry + #-------- PP -------
chr(ord(mot[c])+3) mot=saisir()
elif ('7'<= mot[c] <='9'): motcry=crypter(mot)
motcry = motcry + print('la chaîne cryptée ',motcry)
chr(ord(mot[c])-7)

Exercice4
#ex4 for j in range(len(ch)):
from numpy import array if ch[j].upper()in {"A","E","I","O","U","Y"}:
def saisir(): occ=occ+1
n=int(input("Saisir N:\n")) return occ
while not(2<=n<=20): def afficher(n,t):
n=int(input("Saisir N:\n")) for i in range (n):
return n print(t[i],end = '/')
def verif(ch): def monovocalisme(n,t):
i=0 print("Les mots monovocalismes sans
occurence sont:")
while (i<=len(ch)-1) and
('A'<=ch[i].upper()<='Z'): for i in range(n):
i+=1 if occurence(t[i])==1 :
return i==len(ch) print(t[i])
def remplir(n,t): #-------- PP -------
for i in range(n): n=saisir()
t[i]=input(f"une chaine N° {i}\n") t=array([str]*n) # initialisation du tableau
while not ((3<=len(t[i])<=15) and remplir(n,t)
verif(t[i])) :
afficher(n,t)
t[i]=input(f"une chaine N°{i}\n")
print()
def occurence(ch):
monovocalisme(n,t)
occ=0

2
4ème année Scientifiques Module 1 : Pc et programmation

Exercice 5
#ex5 print(t)
from numpy import array print()
def saisir(): def existe (ch,t,n):
n=int(input('n=\n')) r=''
while not (5<=n<=10) : j=0
n=int(input('n=\n')) while r!=ch and j<=n-1:
return n r=''
def verif(ch): for i in range(n):
i=0 r=r+t[i][j]
l=len(ch) j=j+1
while (i<=l-1) and ('A'<=ch[i]<='Z'): return r==ch
i+=1 #pp
return i==l n=saisir()
def lirech(n): t=array([str]*n)
ch=input('saisir une chaîne\n') ch=lirech(n)
while (verif(ch)==False) or (len(ch) !=n): print('remplissage du tableau\n')
ch=input('saisir une chaine\n') remplir(n,t)
return ch if existe(ch,t,n):
def remplir(n,t): print(ch,' existe dans t ')
for i in range(n): else:
print('chaîne N°',i,'\n') print(ch, " n'existe pas dans t ")
t[i]=lirech(n)

Vous aimerez peut-être aussi