Télécharger la présentation
La présentation est en train de télécharger. S'il vous plaît, attendez
Publié parClementine Gallet Modifié depuis plus de 10 années
1
Algo-Prog en Ada TD1 2 IMACS Romaric GUILLERM guillerm@laas.fr
2
TD1 : Algorithme de Kaprekar
L’algorithme de Kaprekar consiste à associer à un nombre n entier positif un nombre K généré de la façon suivante : On considère les chiffres de n. On forme le nombre n1 en arrangeant ces chiffres dans l’ordre croissant et le nombre n2 en les arrangeant dans l’ordre décroissant. On pose K= n2 - n1. On itère ensuite le processus en remplaçant n par K. On arrête les itérations lorsque : Le nombre K obtenu à l'issue d'une itération est nul, Les nombres K obtenus à l'issue de 2 itérations successives sont identiques, Le nombre d'itérations dépasse une valeur maximale prédéfinie.
3
TD1 Si n est un nombre positif à 4 chiffres non tous égaux, on peut montrer que l’algorithme de Kaprekar produit un nombre K = 6174 qui n'évolue plus au fil des itérations. Exemple : à partir du nombre n= 5463 on obtient K= 6174 selon les itérations suivantes : 6543 – 3456 = 3087 8730 – 378 = 8352 8532 – 2358 = 6174 7641 – 1467 = 6174 On veut concevoir un programme permettant de tester l’algorithme de Kaprekar à partir de nombres à 4 chiffres fournis par un utilisateur. L’utilisateur devra pouvoir tester plusieurs nombres. Le programme s’arrêtera lorsque l’utilisateur fournira le nombre 0.
4
TD1 Partie 1 1.1. Proposer une structure de données permettant de manipuler les chiffres composant un nombre de 4 chiffres c'est à dire permettant de les trier par ordre croissant et/ou décroissant.
5
TD1 1.2. Ecrire le programme principal (déclaration des variables et partie instructions) en s'appuyant sur une décomposition logique en sous-programmes.
6
TD1 1.2. Ecrire le programme principal (déclaration des variables et partie instructions) en s'appuyant sur une décomposition logique en sous-programmes.
7
TD1 1.3. Spécifier les sous-programmes identifiés lors de la décomposition (type du sous-programme, liste des paramètres avec leur mode de passage et leur type, commentaire précisant le but du sous-programme et la signification des paramètres)
8
Travailler à la maison ! avec Windows
Compilateur Ada GNAT : Pour écrire le programme (fichier.adb): Bloc Note, Emacs… ou : Notepad++ Pour compiler et exécuter :
9
TD1 Partie 2 Ecrire les corps des sous-programmes.
10
TD1 Partie 2 Ecrire les corps des sous-programmes.
Présentations similaires
© 2024 SlidePlayer.fr Inc.
All rights reserved.