Multiples et diviseurs

publicité
Initiation à l'utilisation du tableur grapheur Excel
et à la programmation en VBA.
ARITHMETIQUE
I – Activités préparatoires :
1) Multiples et diviseurs au tableur :
Si vos connaissances actuelles vous le permettent, résoudre les quatre questions ci-dessous
sans lire, dans un premier temps, les indications données (vous comparerez ensuite votre
solution au schéma proposé), sinon il vous suffit de suivre les activités (aides pages 7 et 8).
Trouver grâce au tableur :
a) les multiples positifs de 17 inférieurs à 1000.
b) les diviseurs positifs de 496.
c) le pgcd de 240 et 144.
d) le ppcm de 240 et 144.
a) Multiples positifs d'un nombre :
• Le plus simplement : Avec une feuille de calcul Excel
Présentation : – Ligne 1 :
Dans la cellule A1 écrire : Nombre n =
Dans la cellule B1 écrire : 17
– Ligne 3 :
Dans la cellule A3 écrire : Limite
Dans la cellule B3 écrire : 1000
– Ligne 5 :
Dans la cellule A5 écrire : k
Dans la cellule C5 écrire : Multiples k . n
Centrer les écritures dans leur cellule, mettre en gras et ajuster les colonnes.
Calculs :
– Ligne 6 :
Dans la cellule A6 écrire : 0
Dans la cellule C6 écrire la formule: = A6*$B$1.
-– Sélectionner la plage de cellules A6 : C6 puis faire une copie incrémentée
vers le bas jusqu'à obtenir les multiples de 17 désirés.
(1)
Recommencer en tapant un autre nombre dans la cellule B1. Observer … Critiquer …
‚ Avec un petit programme :
On garde la présentation précédente :
On crée un programme qui à chaque
modification du nombre ou de la
limite relit les données et recalcule les multiples désirés.
Algorithme :
Lire le nombre n et la limite L fixés
Pour k entier naturel variant à partir de 0 calculer kn et s'arrêter lorsque kn > L
Ecriture du code (2) : Entrer dans l'éditeur de code en tapant : touche ALT + touche F11
Créer un module : cliquer sur Insertion puis Module
Créer une procédure : cliquer sur Insertion puis Procédure, donner un
nom (Multiples par exemple), choisir Type Sub puis Portée Public :
jfg – Lycée Paul Valéry Sète
1
Spécialité TS : Partie A - 2002 / 2003
Initiation à l'utilisation du tableur grapheur Excel
et à la programmation en VBA.
Les lignes suivantes apparaissent :
Public Sub Multiples()

End
Compléter comme ci-contre :
Public Sub Multiples()
'Déclaration des variables(non obligatoire)
Dim n As Integer
Dim L As Integer
Dim k As Integer
Dim X As Integer
'Affectation d'une valeur aux variables
n = Cells(1, 2).Value
L = Cells(3, 2).Value
k=0
'Effacement des calculs antérieurs
Call Réini
'Boucle pour le calcul des multiples successifs de n
'avec test d'arrêt
Do Until k * n > L
X=6+k
Cells(X, 1).Value = k
Cells(X, 3).Value = k * n
k=k+1
Loop
End Sub
Définir une deuxième
procédure
(Insertion
Procédure) qui sert à
réinitialiser les affichages et
qui est appelée par la
procédure précédente
Public Sub Réini
Range("A6:C65536").Clear
End Sub
Sortir de l'éditeur en cliquant sur l'icône d'Excel :
Exécuter le code :
Pour exécuter le code à partir d'une feuille Excel le plus simple est de
créer un bouton. Pour cela il suffit de "cliquer à droite" sur la barre d'outils de la feuille de
calcul puis sur Formulaire du menu contextuel qui apparaît, ensuite choisir le bouton et
enfin cliquer à l'emplacement désiré sur la feuille de calcul. On associe alors la macro réalisée
précédemment et on valide. On modifie le nom du bouton à l'aide du clavier.
En cliquant sur le bouton ainsi réalisé le code s'exécute.
jfg – Lycée Paul Valéry Sète
2
Spécialité TS : Partie A - 2002 / 2003
Initiation à l'utilisation du tableur grapheur Excel
et à la programmation en VBA.
b) Les diviseurs positifs d'un nombre :
• Le plus simplement : Avec une feuille de calcul Excel (3)
Présentation : – Ligne 1 :
Dans la cellule A1 écrire : Nombre n =
Dans la cellule B1 écrire : 496 (centrer toute la colonne B)
– Ligne 3 :
Dans la cellule A3 écrire : Diviseurs de
Dans la cellule B3 écrire : =$B$1
Calculs :
– Ligne 5 :
Dans la cellule A5 écrire : 1
Dans la cellule B5 écrire : est-il diviseur de (ajuster la largeur)
Dans la cellule C5 écrire : =$B$1 (aligner à gauche)
Dans la cellule D5 écrire : =SI(MOD($B$1;A5)=0;"OUI";"non")
-– Sélectionner la plage de cellules A5 : D5 puis faire une copie incrémentée vers le
bas jusqu'à n (ici 496) pour obtenir tous les diviseurs.
Recommencer en tapant un autre nombre dans la cellule B1. Observer … Critiquer …
‚ Avec un petit programme :
Lorsque l'on cherche les diviseurs "à la main" ceux-ci sont
obtenus par paire :
496 = 1 × 496, 496 = 2 × 248,
496 = 4 × 124 .......
L'idée est donc d'écrire un programme qui lit le nombre et affiche ces paires de diviseurs.
Algorithme :
– Lire le nombre n.
– Pour D variant de 1 à
n tester si D divise n si oui afficher D et
n
.
D
Code :
(rentrer dans l'éditeur
de code et procéder
comme ci-dessus. Voir
éventuellement aide en
annexe pages 7 et 8)
Public Sub DIVISEURS()
Dim n As Integer
Dim I As Integer
Dim L As Integer
Dim R As Integer
Dim J As Integer
n = Range("B1").Value
L = Int(Sqr(n))
Call Réinit
For I = 1 To L
R = n Mod I
If R = 0 Then
J=J+1
Cells(5 + J, 1).Value = I
Cells(5 + J, 2).Value = n / I
End If
Next I
End Sub
jfg – Lycée Paul Valéry Sète
3
Spécialité TS : Partie A - 2002 / 2003
Initiation à l'utilisation du tableur grapheur Excel
et à la programmation en VBA.
Public Sub Réinit()
Range("A4:B65536").Clear
End Sub
c) Le pgcd de deux nombres :
• Le plus simplement : L'algorithme d'Euclide sur une feuille de calcul Excel
Rassemblez vos souvenirs de 3ème-2nde pour trouver le pgcd de 240 et 144 en utilisant
la feuille de calcul.(4)
‚ Avec un petit programme :
On va définir dans une nouvelle feuille de calcul une
fonction qui va permettre d'obtenir le pgcd de deux nombres.
Algorithme : on utilisera celui d'Euclide.
Code : entrer dans l'éditeur de code et procéder comme ci-dessus mais définir une procédure
Fonction à la place d'une procédure Sub.
Public Function pgcd(n1, n2)
Montrer que ce test est inutile et
qu'il suffit d'écrire :
a = n1
b = n2
r = n1 Mod n2







If n1 > n2 Then a = n1
b = n2
r = n1 Mod n2
If n1 < n2 Then a = n2
b = n1
r = n2 Mod n1
Do Until r = 0
a=b
b=r
r = a Mod b
Loop
pgcd = b
End Function
Utiliser cette fonction pour retrouver le pgcd de 240 et 144.
ƒ Exercice d'application :
Utiliser les programmes déjà écrits pour comparer les
diviseurs communs de 2160 et 5534 à ceux de leur pgcd.
d) Le ppcm de deux nombres :
Ecrire une fonction qui calcule le plus petit multiple
commun (ppcm) de deux nombres puis la tester avec les nombres 240 et 144.
jfg – Lycée Paul Valéry Sète
4
Spécialité TS : Partie A - 2002 / 2003
Initiation à l'utilisation du tableur grapheur Excel
et à la programmation en VBA.
2) Division euclidienne : (avec quotient et reste)
a) Le jeu de fort Boyard :
Une épreuve de ce jeu télévisé oppose un candidat au "Maître des
jeux". Vingt trois bâtonnets sont alignés sur une table et chacun des deux adversaires doit
retirer à tour de rôle un, deux ou trois bâtonnets au choix. Celui qui retire le dernier bâtonnet a
perdu.
Le candidat commence. Peut-il choisir une stratégie gagnante ?
π
1
Pour quelles valeurs de n a-t-on cos  n  = − ?
2
 18 
• Approche empirique avec le tableur :
b) Trigonométrie :
Ligne 1 :
Dans A1 taper n.
Dans B1 taper f (n)
Sélectionner la colonne A puis définir cette colonne comme contenant la variable n
Pour cela cliquer dans la barre du menu sur Insertion Nom Définir
puis dans la fenêtre
qui s'ouvre n doit être proposé; il suffit alors de valider (ou taper n si n n'est pas proposé).
Ligne 2 :
Dans A2 entrer 0
Dans B2 taper =cos(n*pi()/18)
Faire une recopie incrémentée de la plage A2:B2 jusqu'à n = 100.
1
Observer les valeurs qui donnent – .
2
‚ Résoudre cette équation par le calcul.
3) Fonction "Partie entière" :
x
–3
–2
–1
0
1
2
3
4
Sur une droite graduée, lorsque l'on place un point, il est soit sur un point d'abscisse
entière soit entre deux points d'abscisses entières. Son abscisse x est donc soit un nombre
entier soit comprise entre deux entiers consécutifs.
Pour tout x, il existe un entier n tel que : n ≤ x < n + 1 . Ce nombre n est appelé la
partie entière de x. On note : E ( x ) = n et on lit "partie entière de x égale n".
Exemples :
E (5,169) = 5 et E (− 6, 423) = −7
Faire tracer la représentation graphique de cette fonction par la calculatrice ou par le
logiciel DERIVE. Commenter et critiquer ce tracé.
jfg – Lycée Paul Valéry Sète
5
Spécialité TS : Partie A - 2002 / 2003
Initiation à l'utilisation du tableur grapheur Excel
et à la programmation en VBA.
4) Le raisonnement par récurrence :
a) Principe :
• Une idée simple :
L'idée du raisonnement par récurrence est simple et peut être imagée ainsi :
Si on peut d'abord se placer sur un barreau d'une échelle, et si l'on peut passer d'un
barreau quelconque au suivant, alors on peut gravir tous les autres échelons de cette
échelle.
‚ Mise en œuvre :
Pour démontrer par récurrence qu'une proposition est vraie pour tout n, on
procède en deux étapes :
Première étape : on vérifie que P0 est vraie.
Deuxième étape : on suppose que pour tout entier naturel n quelconque la
proposition Pn est vraie, et sous cette hypothèse, on
démontre que la proposition Pn+1 est vraie.
Remarque : Pour démontrer qu'une proposition Pn est vraie à partir d'un certain rang m, la
marche à suivre reste la même mais dans la première étape on vérifie Pm au lieu de P0 .
b) Exercices(6) :
• Démontrer que pour tout n, n ∈ Ð*, on a :
1 + 2 + 3 + ..... + n =
n (n + 1)
.
2
On vérifiera la propriété à l'aide du tableur jusqu'à n = 10.
On fera une démonstration par récurrence.
‚ Démontrer que pour tout n, n ∈ Ð*, on a :
12 + 2 2 + 32 + ... + n 2 =
n (n + 1) (2n + 1)
.
6
On vérifiera la propriété à l'aide du tableur jusqu'à n = 10.
On fera une démonstration par récurrence.
ƒ Démontrer que pour tout n, n ∈ Ð, le nombre 4 n + 5 est multiple de 3.
On vérifiera la propriété à l'aide du tableur jusqu'à n = 10.
On fera une démonstration par récurrence.
„ Démontrer que pour tout n, n ∈ Ð, le nombre 5 2 n − 4 n est divisible par 7.
On vérifiera la propriété à l'aide du tableur jusqu'à n = 7.
On fera une démonstration par récurrence
jfg – Lycée Paul Valéry Sète
6
Spécialité TS : Partie A - 2002 / 2003
Téléchargement