DEMINEUR ASSISTE PAR ORDINATEUR

cqui789 Messages postés 261 Date d'inscription jeudi 13 janvier 2005 Statut Membre Dernière intervention 18 mai 2009 - 19 janv. 2005 à 21:22
cqui789 Messages postés 261 Date d'inscription jeudi 13 janvier 2005 Statut Membre Dernière intervention 18 mai 2009 - 5 mars 2005 à 21:28
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/28943-demineur-assiste-par-ordinateur

cqui789 Messages postés 261 Date d'inscription jeudi 13 janvier 2005 Statut Membre Dernière intervention 18 mai 2009 3
5 mars 2005 à 21:28
A oui, j'ai oublie de dire, et ca ne se voit pas comme j'esperais sur l'apercu, les dimensions maxi sont ...
73 x 125 (en plein ecran 1024 x 768)
et vas aussi vite que quand on etait limite a 35 x 50 du fait des ameliorations
si quelqu'un a un plus grand ecran que moi il pourrait me dire les dimentions maxi sur sont ecran

attention, la dimension max du menu n'est pas le maximun, il faut aller dans personnalise et cliquer les boutons max.


je sait, certains vont dire que c'est devenu ridicule, qu'on ne voit plus les cases mais bon...
cqui789 Messages postés 261 Date d'inscription jeudi 13 janvier 2005 Statut Membre Dernière intervention 18 mai 2009 3
23 févr. 2005 à 00:57
pour ce qui est du bug sur les meilleurs scores, il faut recharger l'affichage, dans la form frmBest, l'evenement du bouton concerne devient:

Private Sub CeffScores_Click()
ScoresA0
InitScores
Form_Load ' ligne a rajouter
End Sub

Je ne crois pas que ce soit un probleme majeur, je metrai la source a jour en meme temps que la prochaine modif.

la prochaine amelioration que je vois, comme les prochains niveaux risquent de consommer encore plus de ressource pour encore moins d'effet, serai de marquer les case qui n'apportent plus d'information (toutes les case les encerclant sont elucidees)
cqui789 Messages postés 261 Date d'inscription jeudi 13 janvier 2005 Statut Membre Dernière intervention 18 mai 2009 3
22 févr. 2005 à 00:42
Merci pour les comentaires,

J'ai essaye de partir sur des ensembles, de facon generale, mais le nombre de cas a prendre en compte est asse eleve et les cas particuliers que je traite resolvent 98% des cas.

Pour ce qui est des statistiques, le terme n'est pas tres bien choisi.

Et je vais voir le bug des que possible.
Saros Messages postés 921 Date d'inscription vendredi 20 décembre 2002 Statut Membre Dernière intervention 23 septembre 2010
19 févr. 2005 à 18:54
Expert : 1 clic, 2 secondes lol

Rien à dire niveau prog chapeau...
C'est vrai que pour le niveau 4 il y a certains trucs à ajouter mais il n'y en a pas des masses.
Tu devrais ajouter le traitement éventuel des mines à la toute fin, lorsqu'il n'en reste plus qu'une ou deux, et qu'il n'y a alors qu'une seule disposition possible.
Mais bon... Il est déjà excellent comme ça :)

J'étais en train de construire une autre type de solveur, qui se basait sur la création d'ensembles de cases, pondérés par le nombre de mines dans ces cases. En faisant du bidouillage avec les ensembles compléments, on peut arriver facilement à trouver des ensembles entièrement remplis de mines ou au contraire vides. Ca permet de traiter certains cas que le niveau 3 ne traite pas, mais c'est beaucoup plus long (à la fin, il y a un bon paquet d'ensembles)

Pour les statistiques je vois mal comment on peut faire, il y a beaucoup de facteurs qui rentrent en compte...

Quand on clique sur "remettre à zéro", pense à mettre à jour les label directement, l'affichage change pas...

Voilà voilà...
cqui789 Messages postés 261 Date d'inscription jeudi 13 janvier 2005 Statut Membre Dernière intervention 18 mai 2009 3
15 févr. 2005 à 00:06
Pour ce qui est de l'analyse niveau 4, elle pourrais se faire, il y a encore aumoins 2 raisonnement logiques possible type avant de s'attaquer aux statistiques (que je suis malheureusement incapable de traiter serieusement) ou aux raisonnements specifiques, un peu lourds pour ma methode.
mais ce sont les plus interressant a resoudre soi-meme et j'ai surtout fait ce jeu pour m'entrainer a la programation.

Que penssez-vous de mon utilisation des classes?
cqui789 Messages postés 261 Date d'inscription jeudi 13 janvier 2005 Statut Membre Dernière intervention 18 mai 2009 3
20 janv. 2005 à 22:49
merci pour le tuyau pour 'load...'
Je l'ai eu sur le chat dans l'apres midi et la form a fondu en taille, tout le projet est presque plus petit que le ZIP.
Je fignole un peu et je met a jour.

Concernant analyse4,
essaye des dimentions personalisees de
height 35 (max)
width 50 (max)
mines 400
et tu vera...

et puis, dans le menu analyse, choisi analyse 1 ou 2 si tu prefere.
econs Messages postés 4030 Date d'inscription mardi 13 mai 2003 Statut Membre Dernière intervention 23 décembre 2008 25
20 janv. 2005 à 20:48
Non, pas de remarque sur la programmation. Ca va.

Mais je maintiens qu'une analyse4 ne servirait à rien puisque l'analyse3 résout déjà complètement le problème. Une fois cette analyse passée, il n'y a plus aucun raisonnement logique qui puisse faire avancer le schmilblick. Ton code résout déjà tout ce qu'il est possible de résoudre sur un démineur (et c'est très bien).
:o)

Petite aide concernant les contrôles dynamiques :

Soit un Label nommé lCase, avec la propriété Index à 0, et la propriété Visible à False.

For i=1 to 10
Load lCase(i)
With lCase(i)
.Top = lCase(0).Top + i * lCase(0).Height
.Caption = i
.Visible = True
End With
Next i

Ensuite, à toi de jongler avec les indices pour créer une grille.
cqui789 Messages postés 261 Date d'inscription jeudi 13 janvier 2005 Statut Membre Dernière intervention 18 mai 2009 3
20 janv. 2005 à 11:21
pour les controles, je suis trops feneant pour copier coller
j'ai cree une case,
ferme VB et ouvert la fenetre en wordpad
copie le texte du controle dans excel
fait 2 ou trois equations qui vont bien pour copier la case de base, et calculer l'index et la position
recopie ces fonctions autant de fois qu'il faut
copie les case dans wordpad, la ou il faut
rouvert VB
et voila.

la partie controle dynamique de mon manuel doit etre buguee parce que leur exemples ne marchent pas et ma version de VB n'a pas l'aide.
je pensait chercher sur VBfrance.

a part ca, je reconnait que le jeu a plus d'interet a etre programe qu'a jouer, en mode debutant surtout,
Le demineur d'origine me lasse parceque la pluspart des clics sont trops simples a trouver.
Au debut, je ne voulait que l'analyse 1 mais je me suis laisse entrainer par le gout de la programation... je commence a penser a analyse4!

Dans le menu analyse, vous pouvez choisir le niveau de l'ordinateur.

pour plus de difficulte,
Dans le menu partie, choisissez custom
puis cliquez sur les trois boutons max
(je prefere mines a 350 ou 400)
puis OK
(puis repositionnez la fenetre, je vais corriger le bug plus tard)


remarques sur la programation?
econs Messages postés 4030 Date d'inscription mardi 13 mai 2003 Statut Membre Dernière intervention 23 décembre 2008 25
20 janv. 2005 à 10:23
J'ai fini le niveau expert en 2 clics....
Je te rassure, çà ne fait pas çà à tous les coups, mais ta recherche récursive va vraiment trop loin ... Y'a plus de place pour la réflexion. Quand tu as tout calculé, il ne reste de la place que pour le pif, la chance, le coup de bol quoi ...

On se lasse vite (du moins, c'est mon cas) d'un jeu où on gagne uniquement par chance.
econs Messages postés 4030 Date d'inscription mardi 13 mai 2003 Statut Membre Dernière intervention 23 décembre 2008 25
20 janv. 2005 à 10:18
J'ai oublié un autre truc :

- Au premier clic, dans la version du démineur de Windows, on ne peut pas tomber sur une mine.
Dans ton prog, on peut mourir sur le premier coup. C'est dommage.

Par contre, j'essaye de gagner le niveau simple en plus de 10 secondes .... et c'est dur .... on gagne vraiment trop facilement !
econs Messages postés 4030 Date d'inscription mardi 13 mai 2003 Statut Membre Dernière intervention 23 décembre 2008 25
20 janv. 2005 à 10:16
Je suis très joueur, et là, quand je gagne 3 parties consécutives avec 3 clics souris, je suis déçu.

L'analyse est tellement performante qu'elle ne laisse pas la place à la réflexion.
Je clique et paf ! J'ai gagné !
C'est un peu frustrant.


Deux solutions :
- rajouter plus de mines
- changer la récursivité dans la recherche des cases vides.


Autre petite chose.
Si tu déclarais dynamiquement tes contrôles lCase, ta source serait plus légère (je parle ici du fichier frmdemi.frm). Tu sembles t'être bien amusé à copier-coller 1750 Labels sur ta feuille :o)


A part çà, çà fonctionne très (trop ?) bien. Bravo.
cqui789 Messages postés 261 Date d'inscription jeudi 13 janvier 2005 Statut Membre Dernière intervention 18 mai 2009 3
19 janv. 2005 à 21:22
C'est mon premier code VB.
N'hesitez pas a critiquer, si c'est constructif.
merci