les algorithmes d'arithmetiques

Telechargé par chaima khalsi
Chap 5 : Les algorithmes Arithmétiques Classe : 4ème SI
Profs: MSEKNI Dalila, SFAR Hayet & BAFFOUN Rim page-1/9-
LES ALGORITHMES ARITHMETIQUES
I- Introduction
Dans ce chapitre nous allons étudier quelques algorithmes relatifs à l’arithmétique qui est une
branche des mathématiques qui étudie les relations entre les nombres. C’est aussi l’étude des
nombres et des opérations entre eux.
II- Calcul du PGCD (Solution récursive) :
1. Activité 1:
Proposer une analyse, puis déduisez l’algorithme d’une fonction permettant de calculer le PGCD
(Le Plus Grand Commun Diviseur) de deux entiers positifs non nuls a et b, en utilisant la méthode
des différences.
2. Méthode 1
n > m n = n m
n < m m = m n
n = m PGCD = m (ou n) m = m n
Exemple 1 : M = 35 ; n = 20
M
35
15
15
10
5
N
20
20
5
5
5
PGCD = 5
Exemple 2 : M = 8 ; n = 8 PGCD(8,8) = 8
a.
Solution itérative
Analyse de la fonction PGCD :
Résultat = PGCD
Traitement : PGCD a
Tant que a ≠ b Faire
Si a > b alors a a b
Sinon b b - a
la plus grande valeur sera remplacée par la
différence jusqu’à a=b
Algorithme de la fonction PGCD :
0- Début fonction PGCD (a, b : entier) : entier
1- Tant que a ≠ b Faire
Si a > b alors a a b
Sinon b b - a
Fin Si
Fin Tant que
2- PGCD a
3- Fin PGCD
Chap 5 : Les algorithmes Arithmétiques Classe : 4ème SI
Profs: MSEKNI Dalila, SFAR Hayet & BAFFOUN Rim page-2/9-
b.
Solution récursive
Algorithme Récursif de la fonction PGCD :
0- Début fonction PGCD (a, b : entier) : entier
1- Si a = b alors PGCD a
Sinon
Si a > b Alors
PGCD FN PGCD (a-b, b)
Sinon
PGCD FN PGCD (a, b-a)
Fin Si
Fin Si
2- Fin PGCD
3. Méthode 2
PGCD (m, n) = PGCD (n, m mod n) jusqu’à n =0 d’où PGCD = m
Exemple 1:
M = 35 ; n = 20 PGCD (35, 20) = PGCD (20, 15) = PGCD (15, 5) = PGCD (5, 0) = 5
Exemple 2 : M = 8 ; n = 8 PGCD (8, 8) = PGCD (8, 0) = 8
a.
Solution itérative :
b.
Solution récursive
0. Début fonction Calcul_PGCD (m, n: entier) :
entier
1. Répéter
R M mod N
M N
N R
Jusqu’à (N = 0)
2. Calcul_PGCD M
3. Fin Calcul_PGCD
function pgcd(m, n: integer): Integer;
begin
if (n=0) then
pgcd := m
else
pgcd := pgcd (n, m mod n) ;
end;
Image2
1. Présentation
Arrangement de P éléments parmi N :
C’est le nombre de permutations ordonnées possibles de P éléments parmi N.
Exemple avec {a, b, c} : A(2,3) = 6
{a, b}, {b, a}, {a, c}, {c, a}, {b, c}, {c, b}
Chap 5 : Les algorithmes Arithmétiques Classe : 4ème SI
Profs: MSEKNI Dalila, SFAR Hayet & BAFFOUN Rim page-3/9-
Combinaison de P éléments parmi N :
C’est le nombre de permutations sans ordre possibles de P éléments parmi N.
Exemple avec {a, b, c} : C(2,3) = 3
{a, b}, {a, c}, {b, c}
2. Calcul de l’arrangement
Un arrangement de P éléments d’un ensemble E à N éléments est un p-uplet
d’éléments distincts de E.
Le nombre d’arrangements de P éléments de l’ensemble E est représenté par la
notation suivante :
Image1
N et P sont des entiers qui vérifient la condition suivante : 1≤ P N
Activité :
Proposez une analyse, puis déduisez les algorithmes correspondants au problème permettant de
chercher puis d’afficher l’arrangement de deux entiers donnés N et P, avec (1≤ P N).
Analyse du PP
Résultat = Ecrire (" A ( ", n, ",", p, ")=",
FN Arrange (n, p))
Traitement :
La fonction arrange permet de
rechercher l’arrangement.
La saisie de n et p sera la tache de la
procédure saisie.
Analyse de la fonction Arrange:
Résultat =Arrange
Traitement : Arrange a
[a 1]
Pour i de n à (n-p+1) (pas = -1) faire
a a * i
Fin pour
Algorithme du PP
0- Début arrangement
1- Proc saisie (n, p)
2- Ecrire (" A ( ", n,",", p,")=", FN Arrange (n, p));
3- Fin Arrangement
Algorithme de la fonction Arrange :
0- Début fonction arrange (n, p : entier) : entier
1- a 1
Pour I de n à (n-p+1) (pas = -1) faire
a a * i
Fin Pour
2- Arrange a
3- Fin arrange
Chap 5 : Les algorithmes Arithmétiques Classe : 4ème SI
Profs: MSEKNI Dalila, SFAR Hayet & BAFFOUN Rim page-4/9-
3. Calcul de la combinaison
Une combinaison de P éléments d’un ensemble E de N éléments est une partie de E
formée par P éléments.
Le nombre de combinaison de P éléments de l’ensemble E est représenté par la
notation suivante : image3
N et P sont des entiers qui vérifient la condition suivante : 0≤ P N
Activité :
Proposez une analyse, puis déduisez les algorithmes correspondants au problème permettant
de chercher puis d’afficher la combinaison de deux entiers donnés n et p, avec (0≤ P N).
Solution Itérative
Analyse du PP
Résultat = Ecrire (" C ( ", n,",", p,")=",
FN Comb (n, p))
Traitement :
La fonction Comb permet de
rechercher la combinaison de n et p.
La saisie de n et p sera la tache de la
procédure saisie.
Analyse de la fonction Comb:
Résultat = Comb
Traitement :
Comb FN Fact(n) / (FN Fact(p) * FN Fact(n-p))
Solution Récursive
D’après vos connaissances en Mathématiques, vous pouvez dégager la relation suivante :
Image4
Analyse de la fonction Comb:
Résultat = Comb
Traitement :
Si (p=0) ou (p = n) alors Comb 1
Sinon
Comb Fn Comb (n-1, p) + Fn Comb (n-1, p)
Algorithme de la fonction Comb :
0- Début fonction Comb (n, p : entier) : réel
1- Si (p=0) ou (p = n) alors Comb 1
Sinon
Comb Fn Comb (n-1, p) + Fn Comb (n-1, p)
Finsi
2- Fin Comb
Chap 5 : Les algorithmes Arithmétiques Classe : 4ème SI
Profs: MSEKNI Dalila, SFAR Hayet & BAFFOUN Rim page-5/9-
IV- Quelques règles de divisibilité :
1. Définition:
Un entier n est divisible par un entier m, si le reste de la division euclidienne de n par m est
nul. Une règle de divisibilité est une séquence d’opérations simples qui permet de reconnaître
rapidement si un entier est divisible par un autre sans qu’il soit nécessaire d’effectuer des divisions.
Ces règles sont généralement appliquées à des grands nombres.
2. Divisibilité par 3 :
Règle : Un entier est divisible par 3 si la somme des chiffres qui le composent est divisible par 3.
Activité : Ecrire une analyse modulaire permettant de vérifier si un entier n est divisible par 3 et
déduire les algorithmes correspondants.
Analyse du PP
Résultat = Ecrire (n, FN Div_3(n))
Traitement :
La fonction Div_3 permet de savoir si
un entier n est divisible par 3.
La saisie de n sera faite dans le PP.
Analyse de la fonction Div_3:
Résultat = Div_3
Traitement : Parcourir la chaîne qui contient le
nombre n et rechercher la somme des chiffres
qui le compose puis tester si cette somme est
divisible par 3
Algorithme du PP
0. Début Divisibilite_3
1. Ecrire ("Entrer n :")
Lire (n)
2. Ecrire ("L'entier ",n,Div_3(n))
3. Fin Divisibilite_3
Algorithme de la fonction Div_3 :
0. Début fonction Div_3 (n : entier) : Chaine
1. Convch (n, ch);
2. Répéter
S 0
Pour i de 1 à long (ch) faire
Valeur (ch[i], nb, e)
S S + nb
Fin pour
Convch(s, ch)
Jusqu’à long (ch)=1
Si S dans [3, 6, 9] Alors
div_3 " est divisible par 3"
Sinon
div_3 " nest pas divisible par 3"
Fin si
3- Fin Div_3
3. Divisibilité par 4 :
Un entier est divisible par 4 si le nombre composé des deux derniers chiffres est divisible par 4.
Exemple : 5243 n’est pas divisible par 4 car 43 n’est pas divisible par 4
7224 est divisible par 4 car 24 est divisible par 4.
1 / 9 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !