|
Pascal et Echecs par Sa***o*10831 le
[Aller à la fin] |
| Informatique | |
Je suis étudiant en première année de licence d'informatique, et en ce moment, j'étudie le langage Pascal. J'aimerai savoir si vous connaissez des codes sources de programmes d'echecs écrit en Pascal. Merci d'avance.
|
|
oula on enseigne encore le pascal de nos jours ?
serait temps que les universites se mettent aux languages objets c++/java ...
|
|
oula Certains sont restés dans les années 80 ! Cela fait 15 ans au moins que le pascal est un langage objet et Delphi est au moins aussi performant que c++.
Sinon, j'ai écrit plusieurs programmes d'échecs en pascal vers 1987, mais si par hasard je les retrouvais, ils seraient sur des disquettes 5 1/4...
|
|
oula stop! Je ne suis qu'en première année!
Avoir des programmes d'echecs écrits en un langage aussi simple que le pascal me permetrait de bien comprendre leur fonctionement.
|
|
bien sûr qu'on enseigne encore Pascal c'est un langage simple et clair, bien adapté à l'initiation. Bien entendu il y a aussi des cours sur Java et même C++ (beurk) dans les années suivantes, lorsque la programmation orientée objet est abordée, et surtout des cours sur des langages plus contemporains comme Objective Caml ou Haskell, ça dépend des facs. Certaines mettent aussi au programme Eiffel, Ada, Scheme, Fortran, Perl, et plein d'autres.
À part ça, je ne connais pas de programmes d'échecs en Pascal. Si le sujet t'intéresse la première chose à savoir est l'algorithme alpha-bêta (la plupart des papiers présente minimax d'abord mais 'a'b n'est vraiment qu'une optimisation simple de minimax). Si tu veux vraiment examiner un programme existant tu peux en prendre un en C, ce n'est qu'un Pascal en moins bien et de toutes façons il est utile de le connaître.
|
|
aaaaah d'accord c'est la nouvelle licence, celle du LMD ! Donc en fait, "première année de licence", c'est première année de fac ! Bon... mon conseil de trouver un papier simple sur 'a'b tient toujours. Par exemple celui-ci a l'air pas mal.
|
|
En fait je crois que sagiro veut lire du pascal pour se familiariser avec le langage et non pas écrire un programme d'échecs en pascal.
|
|
Philippe était un programmeur COBOL dans les années 80. Lorsque les années 90 arrivèrent (après que les unixiens, les développeurs de Website et les spécialistes du Client/Serveur se soient moqués de lui en l'appelant dinosaure pendant des années), et il eu enfin quelque respect de la part de ses pairs. Il devint un consultant indépendant sur le passage à l'an 2000. Il travaillait sur des missions d'audit et de conversion du système d'information, voyageant par monts et par vaux. Il travaillait 70, 80 et même 90 heures par semaine, mais il faisait avec.
Cependant, après quelques années sans repos, ce travail débilitant fit disjoncter Philippe. Il eut des problèmes de sommeil et commença a avoir des cauchemars à propos de l'an 2000. Il avait atteint un point de non-retour où la moindre discussion entre collègues sur l'an 2000 pouvait le rendre violent. Il devait sûrement souffrir d'une sorte de dépression nerveuse, car il commençait à envisager d'éviter l'an 2000, et toutes les conséquences qui allaient avec.
Vers la fin de l'année 1997, Philippe décida de contacter une entreprise californienne spécialisée dans la cryogénie. Il signa un contrat pour être congelé jusqu'à l'an 2001, avec leur tout nouveau processus automatique de réveil (très très cher). Il était terrifié. La seule chose qu'il avait en tête était qu'il allait se réveiller en 2001, juste après le nouvel an et la débâcle des ordinateurs, juste après l'année du saut, et les plâtres auront été essuyés. Rien d'autre en tête que d'espérer en sortir vivant.
Il fut mit dans un réceptacle cryogénique, les techniciens ajustèrent le jour et l'heure de réveil, lui injectèrent quelque produit pour ralentir son rythme cardiaque et respiratoire vers le minimum vital, et ce fut tout.
La première image que Philippe vit en se réveillant fut une pièce énorme et très très moderne, remplie d'une foule en liesse. Ils criaient tous
"Incroyable" et "Il est vivant !". Il y avait des caméras (il n'en avait jamais vu de telles auparavant) et des appareils sortis tout droits des films de science fiction.
Quelqu'un qui semblait être un porte-parole s'avança. Philippe débordait d'enthousiasme : "Ça y est ?" demanda-t-il. "Sommes-nous en 2001 ? En est-ce fini de ces histoires de millénaire et de situation de crise ?" Le porte-parole expliqua qu'il y avait eu un problème avec la programmation de la date de réveil de son réceptacle, Le programme n'avait pas pu passer l'an 2000. 8000 années s'étaient écoulées maintenant. Le porte-parole dit à Philippe de ne pas déprimer, car quelqu'un de très important voulait lui parler.
D'un seul coup, un mur entier devint un écran sur lequel on vit apparaître l'image d'une personne ayant une ressemblance frappante avec Bill Gates. Cet homme était Premier ministre de la terre. Il dit à Philippe de ne pas être bouleversé, que la paix régnait sur terre et qu'il n'y avait plus de famine. Il ajouta que le programme spatial avait été reinstauré et qu'il y avait des colonies sur la Lune et sur Mars. Il raconta que la technologie avait tellement progressé que tout le monde avait une interface virtuelle permettant de contacter quiconque était sur la planète ou de regarder n'importe quel événement sportif ou d'assister à des concerts à l'autre bout du monde.
"C'est terrifiant' dit Philippe. "Mais, dites-moi, pourquoi mon réveil est-t-il un tel événement ?".
"Et bien", dit le premier ministre, "L'an 10000 approche, et votre dossier indique que vous savez programmer en COBOL...."
|
|
oui et non Bellamy Je souhaiterait aussi et surtout connaitre le fonctionnement d'un programme d'echecs à travers le pascal que je commence petit à petit à maîtriser.
ref daik: merci pour les références :-)
|
|
Ref Sagiro & Reyes Sagi: J'ai toujours pas compris. Est-tu intéressé pas l'algo d'un programme d'échecs (au quel cas on peut trouver pas mal de sources en C) ou par la syntaxe du Pascal au travers d'un exemple ? (au par les deux en même temps, et la c'est pas gagné d'avance)
Reyes: Avec un peu de chance, on aura inventé entre-temps un nouveau language qui génère du code source pour COBOL, et on appellera ça 'language haut-niveau' (sic).
|
|
A certains : 'langage' s'écrit ... et bien, heu, comme ça se prononce.
|
|
@Bellamy : exact de même que "eh bien".
|
|
@bellami Pascal a été abandonné essentiellement parce qu'il ne permet d'avoir des modules. Un programme Pascal est un truc énorme d'un seul tenant.
Je suggère à notra ami Sagiro de se rabatttre sur le C. Sur les sites de GNU il existe des programmes sources en Open Source. GnuChess est même preformant, un peu moins que les programmes du commerce mais très suffisant pour des amateurs.
|
|
ce qu'il ne faut pas entendre Pascal a quelque peu évolué depuis les toutes premières versions. Il y a bien longtemps qu'il permet de définir des "unités" : on remplace program par unit et on y fait référence par une clause uses et éventuellement une qualification (myunit.something). Ces unités peuvent facilement être précompilées et fournissent un bien meilleur moyen pour la compilation séparée que les horreurs de C (inclusion d'en-têtes et spécification à la main des objets à lier).
|
|
Quelle dommage! quand on sait que Xavier Leroy nous fournit un langage aussi beau que OCAML...
|
|
au fait nicolaus le numeoro de PLS sur Gödel il date de quand ?
|
|
@Nicolaus Pourquoi dommage ? Objective Caml est le langage que j'utilise la plupart du temps, c'est vraiment un très beau langage. Cela n'empêche pas que les débutants ont intérêt à apprendre aussi des langages plus "classiques" d'une part (ils seront forcément confrontés à du C ou quelque chose de similaire en pratique), et d'autre part que je me vois mal leur parler de variants polymorphes, de (vrais !) modules ou de classes algébriques (ils ont déjà du mal avec le modèle ordinaire de C++, mal fondé sur le plan théorique mais plus facile à comprendre). Il vaut mieux qu'ils aient de bonnes bases avant d'aborder OCaml (quitte à commencer par Caml Light).
|
|
C'était le dernier ... Août-Novembre 2004 ...
Peut-être y en a-t-il encore chez certains marchands ...
A propos, j'ai toujours un n° spécial de Science et Avenir pout toi ! ;o)
|
|
d'autre part C'est bien de citer Xavier Leroy mais il ne faut pas trop ramener OCaml à lui (comme Linux à Linux Torvalds par exemple), n'oublions pas Pierre Weis, Damien Doligez, Didier Rémy, Jérôme Vouillon, Jacques Garrigue et les autres. Quant au lien que tu donnes, il vaut peut-être mieux aller voir directement le site officiel.
|
|
merci yvap ah oui le Science et Avenir, mets le de coté ;-)
|
|
tiens, un lapsus claviaturae C'est bien sûr Linus Torvalds.
|
|
Ref Reyes Très mignone l'histoire ;-)
|
|
la revue Pascal a publié un programme d'echecs. Je l'avais consulté à la Villette, à l'époque. Ca doit dater d'une bonne quinzaine d'années mais ils ont dû le conserver à la médiathèque, si tu es parisien ça vaut le coup d'aller voir.
|
|
mais en cherchant un peu sur google il y a ça
|
|
daik pourquoi tu trouves le système du C si horrible ? Rien de plus logique, au contraire.
Avec les fichiers en-tête .h, tu déclares les constantes, variables et procédures pour tous ceux qui vont utiliser le module, et avec les fichiers .c, tu fais l'implémentation. Une bonne pratique, je trouve, c'est de faire un #include "pipo.h" dans le fichier pipo.c : cela permet de vérifier que les déclarations sont conformes à l'implémentation.
Quant à la spécification des objets à lier, Makefile est ton ami. 2 lignes du genre :
%.o: %.c %.h
gcc -c $*.c
compilent génériquement tous les .c en .o au besoin, etc...
|
|
Alors c'est sûr ? Il n'existe aucun programme de jeu Pascal ?
Ref CapitainFlam : un peu des deux en fait, car le Pascal est le langage que je comprend le mieux pour l'instant.
|
|
@kolvir oui c'était clui de Août-Novembre 2004... avant qu'il ne passe hélas à la nouvelle formule (je dis hélas encore histoire de lancer une polémique, je n'ai même pas feuilleter le nouveau...).
|
|
@daik je suis tout-à-fait d'accord avec toi... je disais cela pour faire l'intéressant et citer le nom de Xavier Leroy :-)
perso je suis plus porté sur Java (prononcez "yava" avec un accent allemand/autrichien comme Thomas Graf, le concepteur du compilateur KJC, et accesoirement que j'ai eu en cours)
|
|
C'est quel S&Avenir ?
|
|
@Nicolaus Personnellement je n'aime pas beaucoup Java. Le modèle objet et le système de typage sont douteux (voir les conteneurs de Object par exemple), le ramasse-miettes est nettement moins bon que celui d'OCaml, l'expression du parallélisme est mal conçue... Bref, tout ça pour dire à notre ami Sagiro que Pascal n'est pas le problème (ni la solution), ce qu'il te faut étudier c'est des algorithmes et avec un peu de pratique tu feras abstraction du langage dans lequel ils sont exprimés.
|
|
|