Académique Documents
Professionnel Documents
Culture Documents
Correction Série Tp2 - Programmation
Correction Série Tp2 - Programmation
for a in range(1,11):
print('\ntable de multiplication de ',a)
for b in range(1,11):
print(a,'*',b,'=',a*b, end= ' ')
#exercice 3:
while True:
n=int(input('donnez un entier'))
if 100 <= n <1000 : break
u= n%10
d=n%100//10
c=n//100
if n== u**3+d**3+c**3:
print(n, 'est cubique')
else:
print(n, ' n\'est pas cubique')
# exercice 4:
n= int(input('donnez un entier'))
s=0
for i in range(1,2*abs(n),2):# passer sur les nombre impaire avec un pas 2
s+=i
print(s)
#version2 : un nombre impaire est ecrit de la forme 2*k+1
s=0
for k in range (n):
s+=2*k+1
print(s)
#exercice 5:
while True:
n=int(input('donnez un entier'))
if n >0 : break
s=1
for i in range(2,n//2+1):
if n%i==0: s+=i
if s==n:
print(n, 'est parfait')
else:
print(n, 'n\'est pas parfait')
#exercice 7
m=2
c=1
for i in range(n):
c=3*c+m
m=2*m+1
print(c,m)
# exercice 8:
from math import *
while True:
n=int(input('donnez un entier'))
if n >3 : break
a,b,c=4,2,1
for i in range(4,n+1):
d=sqrt(2*a+c)+b
a,b,c=b,c,d
print('U',n,'=',d)
#exercice 9:
while True:
a=float(input('donnez un réel'))
if a >0 : break
u=1
while True:
v=1/2*(u+a/u)
if abs(u-v) < 10**(-8) :
break
u=v
print('racine de ',a,'est',v)
# exercice 11:
while True:
a=int(input('donnez un enriet'))
if a >=0 : break
while True:
b=int(input('donnez un entier'))
if b >=0 : break
s=0
while (b!=0):
if b%2:
s+=a
b-=1
else:
a*=2
b//=2
print('le produit de ',a,'et',b,'est egale à',s)
#exercice 12:
#pgcd (a,b) = pgcd(a-b,b) si a>b , pgcd(a,b-a) sinon
while True:
a=int(input('donnez un enriet'))
if a >=0 : break
while True:
b=int(input('donnez un entier'))
if b >=0 : break
while (a*b !=0):
if a> b:
a=a-b
else:
b=b-a
print('le pgcd est',a+b)
# exercice 13:
while True:
a=int(input('donnez un enriet'))
if a >=0 : break
while True:
b=int(input('donnez un entier'))
if b >=0 : break
s=b if a%b else 0
while(a!=1):
a=a//2
b=b+b
print(b,',')
if a%2: s+=b
print(s)
# exercice 14:
while True:
ep=float(input('donnez un entier'))
if ep >0 : break
s=0
x=1
i=0
while (1/x > ep):
s+= (-1)**i /x
x+=2
i+=1
print('pi=', 4*s)
#exercice 15:
# exercice 16:
y=x
z=1
p=n
while( p!=0):
y**=2
if p%2:z=z*y
p//=2
print(z)
# remarque le signe n'est pas traité par cette méthode il faut l'ajouter
#exercice 17:
while True:
n=int(input('donnez un entier'))
if n>0: break
i=0
a=n
while n>9:
i+=1
p=1
while n!=0:
p*=n%10
n//=10
n=p
# exercice 18:
b=15
i=11
while(i<100):
b=b+1
n=b
while (n%2==0):
n//=2
while (n%3==0):
n//=3
while (n%5==0):
n//=5
if n==1 : i+=1
print('le centième nombre méchant est',b)
#exercice 19:
if a< n:
n=a
nn=1
elif n==a:
nn+=1
else:
print('cest une fausse note')