Académique Documents
Professionnel Documents
Culture Documents
1ère méthode
def premier(x):
nb=0
for i in range(1,x+1):
if x%i==0:
nb=nb+1
test=nb==2
return test
2ème méthode :
def premier(x):
i=2
test=True
if x%i==0:
test=False
else:
i=i+1
return test
def parfait(x):
s=0
for i in range(1,x//2+1):
if x%i==0:
s=s+i
test=s==x
return test
def pgcd(a,b):
while a!=b:
if a>b:
a=a-b
else:
b=b-a
return a
while b!=0:
r=a%b
a=b
b=r
return a
Calcul PPCM
def ppcm(a,b):
if a>b:
max=a
min=b
else:
max=b
min=a
m=max
while max%min!=0:
max=max+m
return max
d=2
ch=’’
while x!=1:
if x%d==0:
ch=ch+str(d)+'*'
x=x//d
else:
d=d+1
ch=ch[:-1]
return ch
Appel :
Ch=facteurs(x)
d=2
n=0
while x!=1:
if x%d==0:
t[n]=d
n=n+1
x=x//d
else:
d=d+1
return t,n
Appel :
t=array([int]*20)
n=int()
t,n=facteurs2(x,t,n)
p=1
for i in range(y):
p=p*x
return p
f=1
for i in range(1,x+1):
f=f*i
return f
ch=str(n)
s=0
for i in range(len(ch)):
s=s+int(ch[i])
return s
2ème méthode :
def somme(n):
s=0
while n!=0:
r=n%10
s=s+r
n=n//10
return s
ch=''
while n!=0:
ch=str(r)+ch
n=n//2
return ch
ch=''
while n!=0:
r=n%16
if r<10:
ch=str(r)+ch
else:
ch=chr(r+55)+ch
n=n//16
return ch
# de la base 2 à la base 10
def verif(ch):
i=0
test=True
if ch[i] in ['0','1']:
i=i+1
else:
test=False
return test
def saisie():
ch=input('donner ch')
ch=input('donner ch')
return ch
p=1
for i in range(y):
p=p*x
return p
def convertir2_10(ch):
n=0
for i in range(len(ch)):
n=n+int(ch[i])*puissance(2,len(ch)-i-1)
return n
#pp
ch=saisie()
print(verif(ch))
n=convertir2_10(ch)
print(n)
def verif(ch):
i=0
test=True
chb='0123456789ABCDEF'
if ch[i] in chb:
i=i+1
else:
test=False
return test
def saisie():
ch=input('donner ch')
ch=input('donner ch')
return ch
p=1
for i in range(y):
p=p*x
return p
def convertir16_10(ch):
n=0
for i in range(len(ch)):
if ch[i].isdecimal():
n=n+int(ch[i])*puissance(16,len(ch)-i-1)
else:
n=n+(ord(ch[i])-55)*puissance(16,len(ch)-i-1)
return n
#pp
ch=saisie()
print(verif(ch))
n=convertir16_10(ch)
print(n)
def verif(ch):
i=0
test=True
if 'A'<=ch[i]<='Z':
i=i+1
else:
test=False
return test
def voyelles(ch):
nb=0
chv='OUIEYA'
for i in range(len(ch)):
if ch[i].upper() in chv:
nb=nb+1
return nb
ch1=''
for i in range(len(ch)-1,-1,-1):
ch1=ch1+ch[i]
return ch1
#tester si une chaîne est palindrome se lit de la même manière de gauche à droite que de droite à
gauge
def palindrome(ch):
i=0
j=len(ch)-1
test=True
if ch[i]==ch[j]:
i=i+1
j=j-1
else:
test=False
return test
def occurrence(c,ch):
nb=0
for i in range(len(ch)):
nb=nb+1
return nb