Vous êtes sur la page 1sur 3

4Si/Prog/les algorithmes arithmétiques Prof : Mme Harbaoui Zammal K.

Les algorithmes arithmétiques


I/ Calcul de PGCD (Plus Grand Commun Diviseur)
1-Activité : méthode de différentielle
Écrire l’algorithme et le programme python qui permet de calculer et d’afficher d’une manière itérative et
récursive le PGCD des deux entiers strictement positifs en utilisant la méthode de différence.
Exemple :
PGCD(22,6)= PGCD(22-6,6)= PGCD(16,6)
= PGCD(16-6,6)= PGCD(10,6)
=PGCD(10-6,6)= PGCD(4,6)
=PGCD(4,6-4)= PGCD(4,2)
=PGCD(4-2,2) =PGCD(2,2) =2
2-Activité méthode de la division euclidienne
Écrire l’algorithme et le programme python qui permet de calculer et d’afficher d’une manière itérative et
récursive le PGCD des deux entiers strictement positifs en utilisant la méthode de la division euclidienne.

II/ Calcul de Anp et Cnp


Le Calcul de Anp : C’est le nombre de permutation ordonnée possibles de p éléments parmi n
éléments.D’une manière générale Apn= N !/ (N-P) !=N*(N-1) *(N-2) *(N-3)… *(N-P+1) Avec
1<=P<=N.Écrire l’algorithme et le programme python qui permet de calculer et d’afficher Anp de deux
entiers données N , P avec 1<=P<=N
2- Calcul de Cnp
C’est le nombre de permutation non ordonnées possibles de p éléments parmi n éléments.
D’une manière générale Cnp= Anp/ P! =N ! / P ! * (N-P) ! avec 0<=P<=N
Écrire l’algorithme et le programme python qui permet de calculer et d’afficher Cnp de deux entiers
données N, P avec 0<=P<=N
Activité
Nous voulons utiliser un procédé récursif pour calculer Cpn des deux entiers n, p avec 0<=p<=n.
Cpn = Cpn-1 + Cp-1n-1 pour 0<=p<=n
Cnn = C1n = 1 pour n>=0

III/ Quelques regles de divisibilites


Divisibilité par 3
Un entier N est divisible par 3, si la somme des chiffres qui le composent est divisible par 3.
Écrire l’algorithme et le programme python qui permet de saisir un entier N et d’afficher sur l’écran l’un
des messages suivants : « est divisible par 3 », « n’est pas divisible par 3 » en utilisant la règle de
divisibilité citée ci-dessus.
3-Divisibilité par 4
Un entier N est divisible par 4, si le nombre composé des deux derniers chiffres est divisible par 4.
Écrire l’algorithme et le programme python qui permet de saisir un entier N et d’afficher sur l’écran l’un
des messages suivants : « est divisible par 4 », « n’est pas divisible par 4 » en utilisant la règle de
divisibilité citée ci-dessus.

Page-1/3-
4Si/Prog/les algorithmes arithmétiques Prof : Mme Harbaoui Zammal K.

4-Divisibilité par 5
Un entier N est divisible par 5, si son chiffre des unités est égal à 0 ou 5. Écrire l’algorithme et le
programme python qui permet de saisir un entier N et d’afficher sur l’écran l’un des messages suivants :
« est divisible par 5 », « n’est pas divisible par 5 » en utilisant la règle de divisibilité citée ci-dessus.

IV/ Conversion entre base de numération


1-Définition
Un système de numération est une méthode de comptage fondée sur une base de numération qui est un
entier >=2. Soit N une base de numération le système sera doté de N chiffres allant de 0 à (N-1).
2-Exemples de base de numération
Base 2 : système binaire. Les chiffres utilisés sont 0,1.
Base 8 : système octal. Les chiffres utilisés sont 0..7.
Base 10 : système décimal. Les chiffres utilisés sont 0..9.
Base 16 : système hexadécimal. Les chiffres utilisés sont 0..9,A,B,C,D,E,F.
3-Conversion du décimal en binaire
143 2
1 71 2

1 35 2
D’où (143)10 = (10001111)2
1 17 2

1 8 2

0 4 2

0 2 2

0 1 2
Condition d’arrêt de la division
1 0

Écrire l’algorithme et le programme python qui permet de saisir un entier N et d’afficher sur l’écran sa
conversion en binaire.
4-Conversion de l’octal en décimal
Écrire l’algorithme et le programme python qui permet de saisir un nombre N en octal et d’afficher sur
l’écran sa conversion en décimal.
Soit N=175
1 7 5 (175)8 =1*82 + 7*81 + 5*80 = (125)10
1*8 2 7*8 1 5*8 0

5-Conversion du binaire en l’octal


Soit à convertir (1110101)2 ➔ (165)8
1ère partie 2eme partie 3eme partie
1 1 1 0 1 0 1
1*20 1*22+1*21+0*20 1*22+0*21+1*20
1 6 5
Écrire l’algorithme et le programme python qui permet de saisir un nombre N en binaire et d’afficher sur
l’écran sa conversion en octal.

Page-2/3-
4Si/Prog/les algorithmes arithmétiques Prof : Mme Harbaoui Zammal K.

6-Conversion de l’hexadécimal en binaire


Écrire l’algorithme et le programme python qui permet de saisir un nombre N en hexadécimal et d’afficher
sur l’écran sa conversion en binaire.
Soit N=29AF. 2 9 A F
Nous allons procéder de la manière suivante : 0010 1001 1010 1111
Chaque chiffre sera représenté sur 4 bits car 16=24, il suffit de
convertir chaque chiffre en binaire et de les mettre les uns à la suite des autres : 0010100110101111 en
éliminant les 0 de gauche on obtient 10100110101111.

7-Conversion d’un nombre de B1 en B2


Écrire l’algorithme et le programme python qui permet de saisir un nombre N en B1 et d’afficher sur
l’écran sa conversion en B2 avec (2<=B1<=16) et (2<=B2<=16) .

Page-3/3-

Vous aimerez peut-être aussi