Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

COMPTE EST BON


Information sur la source

Catégorie :.NET Source .NET ( DotNet ) Classé sous : recursivité, multithread, timer, dictionnaire, hashtable Niveau : Initié Date de création : 04/01/2008 Date de mise à jour : 04/01/2008 23:25:41 Vu / téléchargé: 4 428 / 243

Note :
10 / 10 - par 1 personne
10,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10

Commentaire sur cette source (3)
Ajouter un commentaire et/ou une note

Description

Cliquez pour voir la capture en taille normale
Le programme est écrit en C#  - Winform avec VS 2005. Il permet de trouver n'importe quel chiffre dans la limite d'un Int32 avec un ensemble de 2 à 10 plaquettes.
Il intègre en outre en option une table de Hashage afin d'éviter les redondances dans les calculs et d'accélérer par moment de façon drastique la résolution.
Avec un nombre de plaquettes de 2 à 10 contenants des nombres, il fait trouver  un chiffre.
Le programme applique la récursivité en appliquant toutes les opérations possibles entre deux plaquettes et se ramenant au même problème avec les n-2 plaquettes restantes et la nouvelle créée par l’opération.
La boite de dialogue contient une génération dynamique de TextBox pour les plaquettes et le Thread qui opère le calcul est différent de celui qui a créé la Form principale. Ceci pour garder un contrôle sur la Form notamment pour le bouton Stop. On voit aussi comment un Thread différent peut agir sur la Winform via passage à un delegué et appel à la fonction Invoke. Un Timer met toute les secondes à jour dans la Form les informations de combinatoire.
Une classe Etat spécifique est créée afin d'encapsuler les jeux de plaquettes et de les stocker efficacement dans un dictionnaire de données.  
Le programme donne le résultat le plus proche en cas d’impossibilité de calcul..


 

Conclusion

Le programme est très puissant et avec 2Go de mémoire, la table de hashage peut contenir plus 20 millions d’entrées.
Un compte à 7 plaquettes est trouvé en moins d’une seconde.
En activant la table on évite les redondances dans les solutions.
Il est loin le temps de mon ZX Spectrum 16K + extension 64K et mon turbo pascal chargé en 2mn 30 avec un lecteur de cassettes en boustant à  fond les graves et aigus.

 

Fichier Zip

Pour les "Membres Club", vous pouvez télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip

Historique

04 janvier 2008 23:25:51 :
Fautes d'Orthographes et renseignements suplementaires sur les objets stockés dans le dictionnaire. Deplacage du texte mis dans la rubrique Code source vers la rubrique Description

Commentaires et avis

signaler à un administrateur
Commentaire de tmcuh le 07/01/2008 09:20:08 10/10

Waouu... impressionnant, j'aurais même pas cru ça possible! Félicitation.

signaler à un administrateur
Commentaire de HansPrestat le 12/06/2008 17:52:08

J'ai erreur au débuggage. Handla non valide. Une idée???

signaler à un administrateur
Commentaire de HansPrestat le 12/06/2008 17:53:31

Erreur lors de l'execution du projet: Impossible de démarrer le débuggage.
Handle de liaison non valide.

Ajouter un commentaire

Discussions en rapport avec ce code source dans le forum

Equivalent C# des classes Vector et Hashtable de Java [ par Winloto ] Bonjour,Je souhaite savoir s'il existe en C# l'equivalent des classes Vector (java.util.Vector) et Hashtable (java.util.Hashtable) de Java. Si oui, ou Timer et heures pour compteur [ par elgoomff ] Salut,Je viens de me mettre à Csharp mais j'ai un petit soucis sur la manipulation des heures.Voila, je souhaite utiliser un TIMER qui incremente un c PB avec un timer [ par PsyCaDi ] Coucou c'est encore le Noob!Voilà, now, j'ai un pb avec un timer. J'ai fouillé l'aide de .NET et il me dit des trucs que j'ai pas.Je m'explique. Je ve Trier des personnes selon leur volonté [ par oberown ] J'ai des personnes, que je dois trier en fonction de leur choix. Chaque personne décide d'être dans avec une autre personne, et il faut former des gro Timer et connection UDP [ par MaCFerson ] -MaC|FersonClan MaC (-RavenShield & Ghost Recon-)voila je travaille sur un soft qui intéroge un serveur à distance, une fois les données envoyées, je EventHandler + Controls.Add() = pas bien [ par ricklekebekoi ] J'ai un proubleme !Que se soit un timer, un keyprest ...Tout fonctionne, sauf si je rajoute Controls.Add() pourt un bouton, un picturebox ou nimporte Timer [ par RM50Man ] Comment on remet a 0 un timer , le mien i continue a tourner quand j arrete le programme.J'aimerai savoir aussi la difference entre le Timer de system fréquence d'un timer no respectée [ par godefrw ] Bonjour, J'utilise un timer pour afficher une annimation (en fait il s'agit d'un curseur suit suit la musique sur une image de partition).&n Attente dans une boucle [ par bip98 ] Bonjour,Je vous explique ma situation, j'ai un moteur pas à pas.. (Donc je dois envoyer une série de bits pour qu'il tourne..) Mais pas en u Afficher les données d'une Hashtable [ par billou_13 ] Voila ma petite question, ca doit être bidon mais je bataille dessus. Alors, je m'explique, j'ai une Hashtable contenant une Key et une Value en


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :

Comparez les prix Nouvelle version

Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,889 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.