JEUX DE DAME C++ PROJET BTS IRIS

cptpingu Messages postés 3837 Date d'inscription dimanche 12 décembre 2004 Statut Modérateur Dernière intervention 28 mars 2023 - 27 sept. 2009 à 10:50
damla6 Messages postés 1 Date d'inscription mardi 3 avril 2018 Statut Membre Dernière intervention 3 avril 2018 - 3 avril 2018 à 22:33
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/50613-jeux-de-dame-c-projet-bts-iris

damla6 Messages postés 1 Date d'inscription mardi 3 avril 2018 Statut Membre Dernière intervention 3 avril 2018
3 avril 2018 à 22:33
bonsoir j'ai un probleme avec le projet j'arrive pas a le compiler est ce que quelqu'un peux m'aider
cptpingu Messages postés 3837 Date d'inscription dimanche 12 décembre 2004 Statut Modérateur Dernière intervention 28 mars 2023 123
26 oct. 2009 à 09:56
> Pourquoi dis tu ca ? "Utilisation de using namespace std; => beurk."
Tu peux potentiellement créer des ambiguïtés, et tu détruis la notion d'espace de nom. C'est un peu dommage d'avoir la possibilité de séparer des modules dans des namespaces pour ensuite les faire sauter !
De plus, si tu veux vraiment écrire "cout" au lieu de "std::cout", utilise "using std::cout;" dans un espace restreint (dans une fonction, un namespace, un fichier de classe). La pire chose à faire étant de faire "using namespace std;" dans un .h => toutes personnes utilisant ton .h se fera faire sauter ses modules, alors que ceux-ci n'ont rien demandé.
Personnellement, je ne suis pas à trois caractères près, et préfère largement écrire std::cout.

http://www.parashift.com/c++-faq-lite/coding-standards.html#faq-27.5
(Néanmoins, c'est une question récurrente, j'écrirais sûrement un tuto codes-sources là dessus prochainement.)

> Tu penses qu'une "bonne fonction" doit étre composer combien de ligne ?
Une bonne fonction devrait tenir à l'écran. Pour ma part, je pense que plus la fonction est petite, mieux c'est. Attention, par petite fonction, je ne dis pas une fonction compactée, illisible pour qu'elle soit petite, mais une fonction correctement pensé, qui sépare un maximum les idées. Un maximum de 50 lignes est pas mal, mais ce n'est pas une limite, une fonction de 60 lignes peut très bien être de bonne qualité, ce n'est vraiment pas une limite absolue.
En fait, ce n'est pas vraiment une question de ligne, mais plus de séparation d'idées.
Par exemple dans le switch de ton main, y a très facilement moyen de découper le code, et de la factoriser. Il y a pas mal de cas, ou tu fais pratiquement la même chose.

> (attention : Pour un programme qui gére l'Intelligence Artificielle, it's not easy :D )
Ca ne change strictement rien. Quelque soit le domaine, une idée se décompose.

> Qu'est ce que j'aurais du utiliser à la place des "winsocks" pour faire fonctionner cette application pour un maximum d'OS ?
Des sockets conçus pour être portables. Cherche "multiplateform socket" sur google. Par exemple, tu as Boost::Socket, ou les QSockets, de QT4.

> atoi dans ton code
Utilise des sstream, "atoi" c'est du C, pas du C++.
lionceau79 Messages postés 49 Date d'inscription dimanche 24 août 2008 Statut Membre Dernière intervention 15 juillet 2009
26 oct. 2009 à 09:31
Salut,

Merci pour ton conseil, je vais mettre en ligne juste le source.

Pourquoi dis tu ca ? "Utilisation de using namespace std; => beurk."

Tu penses qu'une "bonne fonction" doit étre composer combien de ligne? (attention : Pour un programme qui gére l'Intelligence Artificielle, it's not easy :D )

Qu'est ce que j'aurais du utiliser à la place des "winsocks" pour faire fonctionner cette application pour un maximum d'OS ?


Lionceau,
cptpingu Messages postés 3837 Date d'inscription dimanche 12 décembre 2004 Statut Modérateur Dernière intervention 28 mars 2023 123
23 oct. 2009 à 16:02
J'ai regardé juste le contenu du zip, c'est un peu n'importe quoi (je parle du contenu).
Tu aurais largement pu le mettre sur le site, en effaçant tout ce qui n'était pas utile:
- Les fichiers *.o
- Les fichiers *.tmp
- Les fichiers *.html, *.css et autre documentations
- La totalité de la doc Doxygen en double
- toto.cpp (quasi vide ?)

Perso de 1400Ko, j'arrive à 94Ko !!! (Plus que 1000 fois plus petit !)
La doc et/ou le projet entier sous megaupload c'est bien, mais ajoute au moins la version avec uniquement les sources sur le site, ça permet de voir ton code sans télécharger ton zip.

Au niveau du code:
- Le doxygen c'est bien, ça change des codes non documentés.
- Utilisation de using namespace std; => beurk.
- Découpage du code moyen: beaucoup de fonction monolithique (paie tes fonctions de 300 lignes).

Je n'ai pas pu tester l'appli, elle ne compile pas sous Linux (sûrement dû aux winsocks).
lionceau79 Messages postés 49 Date d'inscription dimanche 24 août 2008 Statut Membre Dernière intervention 15 juillet 2009
23 oct. 2009 à 15:13
voila pour tester , le code source est sur Megaupload.

Lionceau,
lionceau79 Messages postés 49 Date d'inscription dimanche 24 août 2008 Statut Membre Dernière intervention 15 juillet 2009
7 oct. 2009 à 12:46
sorry , j'ai envoyé, et maintenant j'attend l'email de l'admin.
cptpingu Messages postés 3837 Date d'inscription dimanche 12 décembre 2004 Statut Modérateur Dernière intervention 28 mars 2023 123
6 oct. 2009 à 09:46
Toujours pas de source ?
lionceau79 Messages postés 49 Date d'inscription dimanche 24 août 2008 Statut Membre Dernière intervention 15 juillet 2009
3 oct. 2009 à 09:30
1 niveau correspond à une profondeure , 5 à 5 profondeurs , 30 à 30 profondeurs.

C'est juste pour s'amuser.
Ou alors ... de jouer machine contre machine ...
cs_Matt67 Messages postés 549 Date d'inscription samedi 6 septembre 2003 Statut Membre Dernière intervention 6 mars 2010 3
3 oct. 2009 à 09:03
Bonjour,

Lionceau a écrit :
"On peut jouer contre une I.A.(Intelligence Artificielle) de 0 a 30 niveau. Rien que le niveau 5 est impossible pour un simple humain..."

Ça sert à quoi alors de mettre 30 niveaux ???
cptpingu Messages postés 3837 Date d'inscription dimanche 12 décembre 2004 Statut Modérateur Dernière intervention 28 mars 2023 123
29 sept. 2009 à 14:33
Oui, oui. Tu vires la documentation doxygen et tu la mets ailleurs (ftp, espace de stockage, etc...)
lionceau79 Messages postés 49 Date d'inscription dimanche 24 août 2008 Statut Membre Dernière intervention 15 juillet 2009
29 sept. 2009 à 14:23
non mais avec la documentation technique, je parle de doxygene il y a 1,5mo
cptpingu Messages postés 3837 Date d'inscription dimanche 12 décembre 2004 Statut Modérateur Dernière intervention 28 mars 2023 123
28 sept. 2009 à 22:31
Tu as une application console. C'est impossible que les fichiers sources seules fassent 1.5Mo !
Ce qui peut prendre de la place:
- Ressource (Fichier texte, image, ...)
- Fichier objet compilé (*.obj ou *.o)
- Exécutable
- Documentation

Retire toutes ces choses, et ton zip sera suffisamment petit pour être uploadé.
stefbuet Messages postés 576 Date d'inscription mercredi 5 janvier 2005 Statut Membre Dernière intervention 12 mai 2009
28 sept. 2009 à 22:31
Tu trouves un admin actif sur cppfrance et tu lui envois un MP avec un lien vers ta source uploadée préalablement sur un FTP par exemple.
lionceau79 Messages postés 49 Date d'inscription dimanche 24 août 2008 Statut Membre Dernière intervention 15 juillet 2009
28 sept. 2009 à 21:03
ok alors comment demander ca à un admin ?
stefbuet Messages postés 576 Date d'inscription mercredi 5 janvier 2005 Statut Membre Dernière intervention 12 mai 2009
28 sept. 2009 à 20:02
Salut,

tu peux demander à un admin de te upper ta source, 1.5Mo sera Ok.

Stef.
cptpingu Messages postés 3837 Date d'inscription dimanche 12 décembre 2004 Statut Modérateur Dernière intervention 28 mars 2023 123
27 sept. 2009 à 11:23
Met uniquement les sources. La doc, tu la mets ailleurs (sur un serveur), et tu ajoutes un lien vers celles-ci dans la description de ton projet.
lionceau79 Messages postés 49 Date d'inscription dimanche 24 août 2008 Statut Membre Dernière intervention 15 juillet 2009
27 sept. 2009 à 11:19
JE peux mettre que des pieces jointe inferieur à 1Mo , et helas le mien fais 1,5Mo, donc ca bug.

Sais tu comment faire pour avoir plus d'esapace*?
cptpingu Messages postés 3837 Date d'inscription dimanche 12 décembre 2004 Statut Modérateur Dernière intervention 28 mars 2023 123
27 sept. 2009 à 10:50
Pourrais-tu mettre les sources avec ? (Dans un zip afin que l'on puisse parcourir celles-ci à travers le site).
Rejoignez-nous