|
|
Projets
|
Suite de Syracuse |
Date de création: 26/05/2009 à 03h14
Dernière modification: 06/07/2009 à 18h22
Catégorie : Programme
Version : 1.0
Description :

Me revoici aujourd'hui avec un programme absolument...inutile ^^.
Je suis tombé hier soir sur un tutoriel fraichement rédigé sur le Site du zéros sur la réalisation d'un programme de calcul des suites de Syracuse. Les suite logiques et mathématiques me fascinent ces derniers mois, je décide donc d'aller y jeter un oeil...ShareMan (l'auteur) fait, en règle générale, de bon tutos clairs et complets, cependant cette fois ci je doit m'avouer quelque peu déçu. La suite de syracuse du nombre n est une énigme mathématique majeure de ce dernier demi-siècle, mais le calcul n'a d'interêt en soit que pour un chercheur mathématicien. Or son cours explique certe bien ce qu'est cette suite, ainsi que de sa principale variante par compression de l'algorithme, mais la réalisation du calcul m'a semblée très mince: 7 pauvres lignes de OCaml, évidentes même sans connaître le langage, pour un programme en console. Alors pour un calcul performant, on ne peut pas faire beaucoup mieux, mais c'est sans interêt pour un zéros je trouve.
Le portage OCaml->C/C++ n'ayant que très peu d'interêt lui aussi, je me suis mis à réfléchir à une représentation graphique. J'ai donc codé un petit soft simple mais plutôt complet au final, affichant dans une fenêtre SDL un graphique dessiné via OpenGL. J'y ai ajouté un scrolling pour les suites trop longues, une mise à échelle en hauteur, le choix de n, un suivi de la courbe sous le curseur et le second algorithme par compression. J'ai même implémenté un affichage textuel (chose sur laquelle je souhaîtait me pencher depuis quelques temps déjà, très simple au final, plus que je ne l'imaginais, malgrès une installation quelques fois laborieuse) pour les valeurs, les graduations et le titre. Je passe les détails "invisibles" tels que les graduations qui ne chevauchent pas et autres, pourtant pas toujours évidents à programmer et qui font, selon moi, la différence entre un logiciel de baclé ou pas.
Un programme inutile donc, beacoup trop lent pour servir à un scientifique qui voudrait calculer la Suite de Syracuse de 2e62, mais intéressant comme première approche de la réalisation de courbes et graphs. |
|
Suite de Syracuse : Liste des sources |
| Fichier |
Lignes |
Taille |
Dernière modification |
Télécharger |
main.cpp
|
181 |
7314 |
01/07/2009 |
 |
Makefile
|
7 |
210 |
02/07/2009 |
 |
| Tout les fichiers (.zip) |
188 |
7524 |
02/07/2009 |
 |
|
|