Vous êtes sur la page 1sur 9

Les algorithmes arithmétiques

1) Calcul du PGCD :
Activité1 :
Pour calculer le PGCD de deux entiers positifs a et b on utilise la méthode de la division
euclidienne exprimée comme suivant :
a si b=0
PGCD(a,b) =
PGCD(b,a mod b) sinon

a) Calculer manuellement le PGCD(15,27) en utilisant la méthode donnée ci-dessus :


………………………………………... ………………………………………...
………………………………………... ………………………………………...
………………………………………... ………………………………………...

b) Ecrire de deux façons l’algorithme d’un module intitulé Pgcd_Euc qui permet de
calculer le PGCD de deux entiers positifs a et b en utilisant la méthode de la division
euclidienne

Solution itérative Solution récursive

Activité2 :
Pour calculer le PGCD de deux entiers positifs a et b on utilise la méthode de la différence
exprimée comme suivant :

a ( ou b) si a=b
PGCD(a,b) = PGCD(a-b,b) si a>b
PGCD(a,b-a) sinon

Réalisé par Mme DHAMEN Hami Page 1


a) Calculer manuellement le PGCD(130,40) en utilisant la méthode donnée ci-dessus :
………………………………………... ………………………………………...
………………………………………... ………………………………………...
………………………………………... ………………………………………...
b) Ecrire de deux façons l’algorithme d’un module intitulé Pgcd_Dif qui permet de
calculer le PGCD de deux entiers positifs a et b en utilisant la méthode de la différence

Solution itérative Solution récursive

Application :
a) Ecrire l’algorithme d’un module intitulé Pgcd_3 qui permet de calculer le PGCD de
trois entiers positifs a, b et c
…………………………………………………………………
…………………………………………………………………
…………………………………………………………………

b) Ecrire l’algorithme d’un module intitulé PPCM qui permet de calculer le PPCM de
deux entiers positifs a et b
…………………………………………………………………
…………………………………………………………………
…………………………………………………………………

Réalisé par Mme DHAMEN Hami Page 2


2) Calcul de Anp :
Activité1 :
Ecrire dans chaque cas ci-dessous l’algorithme d’un module qui calcule le Anp de deux
entiers n et p ( 1≤p≤n)

a) Anp = n(n-1)(n-2)……….*(n-p+1)
…………………………………………………………………
…………………………………………………………………
…………………………………………………………………
…………………………………………………………………
…………………………………………………………………
…………………………………………………………………
…………………………………………………………………
…………………………………………………………………
b) Anp = n !/ (n-p) !
…………………………………………………………………
…………………………………………………………………
…………………………………………………………………
3) Calcul de Cnp :
Activité1 :
Ecrire dans chaque cas ci-dessous l’algorithme d’un module qui calcule le Cnp de deux
entiers n et p ( 0≤p≤n)
a) Cnp = Anp / p !
…………………………………………………………………
…………………………………………………………………
…………………………………………………………………
b) Cnp = n !/ (p !(n-p) !)
…………………………………………………………………
…………………………………………………………………
…………………………………………………………………
c) 1 si (p=0) ou (p=n)
Cnp =
Cn-1p-1 + Cn-1p sinon
…………………………………………………………………
…………………………………………………………………
…………………………………………………………………
…………………………………………………………………
…………………………………………………………………
…………………………………………………………………

Réalisé par Mme DHAMEN Hami Page 3


4) Quelques règles de divisibilité :

4-1) Définitions :
 Un entier n est divisible par un entier m, si n mod m =0
 Une règle de divisibilité est une suite d’opérations simples qui permet de reconnaître
rapidement si un entier n est divisible par un entier m sans effectuer la division. Ces
règles sont généralement applicables pour les grands nombres

4-2) Divisibilité par 3 :


 Règle de divisibilité : un entier n est divisible par 3, si la somme des chiffres qui le
composent est divisible par 3
 Application : écrire l’algorithme du module intitulé Div_3 qui permet de vérifier si
un entier positif n composé au moins de 8 chiffres est divisible par 3
…………………………………………………………………
…………………………………………………………………
…………………………………………………………………
…………………………………………………………………
…………………………………………………………………
…………………………………………………………………
…………………………………………………………………
…………………………………………………………………
4-3) Divisibilité par 4 :
 Règle de divisibilité : un entier n est divisible par 4, si le nombre composé de deux
derniers chiffres est divisible par 4
 Application : écrire l’algorithme du module intitulé Div_4 qui permet de vérifier si
un entier positif n composé au moins de 8 chiffres est divisible par 4
…………………………………………………………………
…………………………………………………………………
…………………………………………………………………
…………………………………………………………………

4-5) Divisibilité par 7 :


 Règle de divisibilité : Un nombre N est divisible par 7 si, en soustrayant et en
additionnant alternativement chaque tranche de trois chiffres en partant de la droite,
le résultat est divisible par 7
Exemples
1) L’entier 65465802 n’est pas divisible par 7 car 802-465+65 = 411 n’est pas divisible par
7
2) L’entier 67456802 est divisible par 7 car 802-456+67=413 est divisible par 7
 Application : écrire l’algorithme du module intitulé Div_7 qui permet de vérifier si
un n composé au moins de 8 chiffres est divisible par 7

Réalisé par Mme DHAMEN Hami Page 4


5) Conversions entre les bases de numération :
5-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 supérieur ou égal à 2. Un nombre écrit en une base b est un
nombre formé des chiffres allant de 0 à b-1. (Exemples : un nombre écrit en base 2 est un
nombre formé des chiffres allant de 0 à 1, un nombre écrit en base 8 est un nombre formé des
chiffres allant de 0 à 7, …)
5-2) Conversion d’un nombre décimal en une base b :
Activité1 :
Ecrire de deux façons le module qui permet de convertir un nombre décimal
strictement positif X en binaire

Solution itérative Solution récursive

Réalisé par Mme DHAMEN Hami Page 5


Activité2 :
Ecrire de deux façons le module qui permet de convertir un nombre décimal
strictement positif X en une b donnée (b ≥ 2)

Solution itérative Solution récursive

5-3) Conversion d’un nombre d’une base b en base décimale :


Activité1 :
Ecrire de deux façons le module qui permet de convertir un nombre octal X déjà saisie
sous la forme d’une chaîne des caractères en base décimale

Solution itérative Solution récursive

Réalisé par Mme DHAMEN Hami Page 6


Activité2 :
Ecrire l’algorithme modulaire qui permet de saisir un entier X en une base b ( b ≥ 2 et
≠ 10) et de le convertir en base décimale

Réalisé par Mme DHAMEN Hami Page 7


5-4) Conversion d’un nombre hexadécimal en binaire :
Activité :
Ecrire l’algorithme du module qui permet de convertir un nombre hexadécimal X en
base binaire en respectant la démarche utilisée dans l’exemple ci-dessous :
Exemple :
Prenons X = 29AF, nous allons procéder comme suivant :

2 9 A F

0010 1001 1010 1111

Chaque chiffre de X sera représenté sur 4 bits.


(29AF)16 = (10100110101111)2 le nombre binaire obtenu est le résultat de la concaténation
de 4 nombres binaires ci-dessus ( les zéros à l’extrême gauche sont non significatifs)

Réalisé par Mme DHAMEN Hami Page 8


5-5) Conversion d’un nombre binaire en octal :
Activité :
Ecrire l’algorithme du module qui permet de convertir un nombre binaire X en base
octale en respectant la démarche utilisée dans l’exemple ci-dessous :
Exemple :
Prenons X = 1110101, nous allons procéder comme suivant :

001 110 101

1 6 5

Ajouter autant des zéros à gauche du nombre initial X pour que sa longueur sera multiple de
3, convertir chaque tranche de 3 bits en son équivalent décimal ( 5= 1*20+0*21+1*22), le
nombre résultat de la concaténation des chiffres décimaux obtenus est le nombre octal à
chercher.
(1110101)2 = (165)8

Réalisé par Mme DHAMEN Hami Page 9

Vous aimerez peut-être aussi