Les types somme. 1 Préparation du TP. 2 Interface du module Carte. Algorithmes et Programmation Impérative Les types de donnees
|
|
- Céline Fontaine
- il y a 8 ans
- Total affichages :
Transcription
1 Univ. Lille1 - Licence Informatique 2ème année Algorithmes et Programmation Impérative 2 Les types somme 1 Préparation du TP Dans le prochain TP, vous allez réaliser un programme de jeu de poker (très simplié). Ce programme sera réalisé en quatre parties 1. un module Carte qui déclare un type pour représenter les 52 cartes d'un jeu de poker, ainsi que quelques fonctions ; 2. un module Main qui déclare un type pour représenter une main de 5 cartes, ainsi que quelques fonctions ; 3. un module Combinaison qui déclare un type pour représenter les combinaisons possibles présentées par une main de 5 cartes, ainsi que quelques fonctions ; 4. un programme principal, qui simule une partie. Les sections qui suivent présentent les interfaces de ces diérents composants. 2 Interface du module Carte 2.1 Les types de donnees type hauteur type couleur type carte 2.2 Constructeur et selecteurs val cree : char -> int -> carte cree s n renvoie une carte dont la couleur est donnee par s et la hauteur par n. CU : s ne peut prendre que l'une des quatre valeurs T pour tree P pour pique K pour carreau C pour coeur Sinon, declenchement de l'exception Failure "Carte.cree : couleur non valide". n doit etre un entier compris entre 1 et 13 avec la correspondance 1 pour un as 11 pour un valet 12 pour une dame 13 pour un roi les autres valeurs representant elles-memes. Sinon, declenchement de l'exception Failure "Carte.cree : hauteur non valide". val couleur : carte -> couleur 1
2 couleur c renvoie la couleur de la carte c. val hauteur : carte -> hauteur hauteur c renvoie la hauteur de la carte c. 2.3 Fonctions de comparaison val hauteurs_consecutives : hauteur -> hauteur -> bool hauteurs_consecutives h1 h2 = true si les deux hauteurs sont consecutives dans l'ordre croissant false sinon val compare_hauteurs : hauteur -> hauteur -> int compare_hauteurs h1 h2 compare les hauteurs h1 et h2. = -1 si la hauteur h1 est plus petite que h2 = 1 si la hauteur h1 est plus grande que h2 = 0 si les hauteurs sont egales. val compare_cartes : carte -> carte -> int compare_cartes c1 c2 compare les hauteurs des cartes c1 et c2. = -1 si la hauteur de c1 est plus petite que celle de c2 = 1 si la hauteur de c1 est plus grande que celle de c2 = 0 si les hauteurs sont egales. Remarque : on peut aussi tester l'egalite de deux cartes avec l'operateur =. 2.4 Procedures d'impression val imprimer_couleur : couleur -> unit imprimer_couleur c imprime la couleur c. Un tree est imprime T, un pique P, un carreau K et un coeur C. val imprimer_hauteur : hauteur -> unit imprimer_hauteur imprime la hauteur h. val imprimer_carte : carte -> unit imprimer_carte c imprime la carte c. L'ipression se fait sur deux caracteres : le premier pour la hauteur et le second pour la couleur. L'impression d'un roi de carreau produit donc RK. 2.5 Constructions de paquet de cartes val paquet_ordonne : unit -> carte array paquet_ordonne () renvoie un tableau contenant les 52 cartes d'un jeu de poker. Ces cartes sont rangees par couleurs T, C, P, K, puis au sein d'une couleur dans l'ordre As, 2, 3,..., Roi. val battre_paquet : unit -> carte array battre_paquet () renvoie un tableau contenant les 52 cartes d'un jeu de poker dans un ordre quelconque. 2
3 3 Interface du module Main 3.1 Le type de donnees type main Une main est un ensemble de cinq cartes dierentes d'un jeu de poker. 3.2 Constructeur et selecteur val cree : Carte.carte * Carte.carte * Carte.carte * Carte.carte * Carte.carte -> main cree (c1,c2,c3,c4,c5) cree une main avec les cinq cartes donnees. val carte : main -> int -> Carte.carte carte m i renvoie la carte de rang i dans l'ordre croissant dans la main m. Les cartes carte m 1, carte m 2, carte m 3, carte m 4, carte m 5 sont les cinq cartes de la main m et leurs hauteurs sont dans l'ordre croissant. CU : l'entier i doit etre compris entre 1 et 5. Sinon, declenche l'exception Failure "Main.carte : indice incorrect". 3.3 Procedure d'impression val imprimer : main -> unit imprimer m imprime la main m. Par exemple, l'impression a la forme [ 2C, 3K, 8K, 9K, RP] 3.4 Divers val main_alea : unit -> main main_alea () renvoie une main de cinq cartes choisies aleatoirement dans un jeu de 52 cartes. val distribue : int -> main array distribue n renvoie un tableau de n mains extraites d'un jeu de 52 cartes. CU : l'entier n doit etre compris entre 2 et 5. Sinon, declenche l'exception Failure "Main.distribue : nombre joueurs incorrect". 4 Interface du module Combinaison 4.1 Le type de donnees type combinaison Au poker, les combinaisons d'une main peuvent etre dans l'ordre decroissant de valeur : une quinte ush 3
4 un carre un full une couleur une suite un brelan une double paire une paire une main vide (aucune combinaison) 4.2 Procedure d'impression d'une combinaison val imprimer : combinaison -> unit imprimer c imprime la combinaison c. 4.3 Evaluation d'une main au poker val evalue : Main.main -> combinaison evalue m donne la combinaison de valeur maximale presente dans la main m. 4.4 Comparaison de combinaisons val compare : combinaison -> combinaison -> int compare c1 c2 = -1 si la combinaison c1 est inferieure a la combinaison c2 = 1 si la combinaison c1 est superieure a la combinaison c2 = 0 si les deux combinaisons sont de meme niveau. 5 Le programme Jeu 5.1 Fonction de classement des joueurs val evalue_distribution : Main.main array -> (int * Combinaison.combinaison) array evalue_distribution d calcule les combinaisons de chacun des joueurs. 5.2 Une procédure pour indiquer l'usage du programme val usage : unit -> a 5.3 La procédure principale val principal : unit -> a L'instruction principal () est chargee de verier le nombre de parametres de simuler une donne de n mains et d'indiquer le joueur gagnant 4
5 6 Préparation 6.1 Organisation générale du programme Question 1 Au vu de la documentation des interfaces, indiquez sous forme d'un graphe les dépendances entre modules. Par exemple, le schéma A B signie que le module A utilise des déclarations du module B. Question 2 En déduire dans quel ordre doivent être compilés les modules. 6.2 Le module Carte Question 3 Question 4 Question 5 Proposez une dénition pour chacun des trois types. Donnez des raisons qui peuvent justier de rendre abstraits ces types. Réalisez le constructeur cree, ainsi que les deux sélecteurs couleur et hauteur. Pour la fonction cree, il peut être utile de disposer d'un tableau contenant toutes les hauteurs. Question 6 Question 7 Question 8 Question 9 Réalisez la fonction hauteurs_consecutives. Réalisez les fonctions compare_hauteurs et compare_cartes. Réalisez les procédures d'impression. Réalisez la fonction paquet_ordonne. Question 10 Pour la réalisation de la fonction battre_paquet, une méthode possible consiste à partir d'un paquet de cartes ordonné (obtenu avec la fonction paquet_ordonne), puis pour chaque position dans ce paquet échanger la carte qui s'y trouve avec une autre carte choisie au hasard. Vous serez donc amené à utiliser la fonction Random.int qui renvoie un entier (pseudo-)aléatoire compris entre 0 et n 1 si n est l'entier passé en paramètre. Rappel : l'usage de procédures de génération d'alea en programmation nécessite toujours une initialisation préalable eectuée une fois pour toute. En Caml, il est possible d'initialiser le générateur d'alea avec la fonction Random.self_init. Il sut donc d'ajouter dans l'implémentation du module une déclaration let _ = Random.self_init () qui assurera que l'initialisation du générateur d'alea est eectuée une fois dans tout programme utilisant le module Carte. 6.3 Le module Main Une main au poker est constituée de cinq cartes. Question 11 A priori, quelle(s) dénition(s) du type main peut-on envisager? Pour des raisons pratiques, en particulier l'implémentation du module Combinaison, il est utile de faire en sorte que la représentation choisie permette d'ordonner les cartes d'une main selon les hauteurs. Une représentation de ce type sous forme de tableau de cartes ordonné selon 5
6 les hauteurs semble donc une bonne solution. Question 12 Dénissez alors le type main, et réalisez la fonction cree. Vous pourrez utiliser la procédure Array.sort de type ( a a int) a array unit. qui trie dans l'ordre croissant déni par la fonction passée en premier paramètre le tableau passé en second paramètre. Voici un exemple d'utilisation de cette procédure : # let t = [ 3; 1; 5; 0 ] in Array.sort Pervasives.compare t ; t ;; - : int array = [ 0; 1; 3; 5 ] Question 13 Réalisez l'unique sélecteur carte qui permet d'accéder à une carte d'une main selon son rang dans la main dans l'ordre croissant. Question 14 Réalisez la procédure d'impression d'une main. L'impression d'une main s'eectuant sous la forme # let m = cree ((Carte.cree T 1), (Carte.cree C 11), (Carte.cree K 7), (Carte.cree T 9), (Carte.cree K 12)) in imprimer m ;; [ 7K, 9T, VC, DK, AT]- : unit = () Question 15 Réalisez la fonction main_alea. # imprimer (main_alea ()) ;; [ 2T, 4T, 8C, 9T, DK]- : unit = () Question 16 Réalisez la fonction distribue. Question 17 Utilisez les fonctions distribue et imprimer de ce module, ainsi que la fonction Printf.printf, pour imprimer les mains distribuées à quatre joueurs. L'achage aura la forme Joueur 1 :[ 5C, 6T, 7C, VC, AP] Joueur 2 :[ 5C, 6T, 7C, VC, AP] Joueur 3 :[ 5C, 6T, 7C, VC, AP] Joueur 4 :[ 5C, 6T, 7C, VC, AP] 6.4 Le module Combinaison Question 18 Dénissez le type combinaison pour représenter les diérentes combinaisons que peut présenter une main de cinq cartes au poker. Ces combinaisons peuvent être (par ordre décroissant de valeur) : 1. Une quinte ush : cinq cartes de même couleur dont les hauteurs se suivent ; les quintes sont caractérisées par la hauteur de la carte la plus haute ainsi que par la couleur. 2. Un carré : quatre cartes de même hauteur ; les carrés sont caractérisés par la hauteur de ces quatre cartes. 3. Un full : trois cartes de même hauteur, et les deux autres cartes de même hauteur ; les fulls sont caractérisés par les deux hauteurs, celle du brelan d'abord, puis celle de la paire ensuite. 6
7 4. Une couleur : les cinq cartes sont de la même couleur, mais ne se suivent pas ; les couleurs sont caractérisées par la couleur. 5. Une suite : les cinq cartes se suivent mais ne sont pas toutes dela même couleur ; les suites sont caractérisées par la hauteur de la carte la plus haute. 6. Un brelan : trois cartes sont de la même hauteur, les deux autres cartes étant de hauteurs diérentes ; les brelans sont caractérisés par la hauteur de ces trois cartes. 7. Une double paire : la main contient deux paires de hauteurs diérentes ; les doubles paires sont caractérisées par les hauteurs de ces deux paires, la plus grand hauteur d'abord, l'autre ensuite. 8. Une paire : deux cartes ont la même hauteur, les trois autres cartes sont de hauteurs toutes diérentes ; les paires sont caractérisées par la hauteur de ces deux cartes. 9. Une main vide : rien de particulier dans la main. Question 19 Réaliser une procédure d'impression pour les combinaisons. Voici quelques exemples d'impressions (utilisant la fonction evalue dénie plus tard) Paire de 8- : unit = () Main vide- : unit = () Brelan de D- : unit = () Full de 7 par les A- : unit = () La fonction d'évaluation d'une main pour en déterminer la combinaison qu'elle contient n'est pas simple à réaliser. La solution suggérée ci-dessous consiste à écrire un prédicat (ou fonction booléenne) pour chaque combinaison qui sera satisfait si la main présente cette combinaison. Ces fonctions ne font pas partie de l'interface et ne seront donc pas utilisables à l'extérieur du module. Question 20 Réalisez un prédicat quinte qui détermine si une main est une quinte. Dans le cas, où elle l'est, la fonction renvoie en plus ses caractéristiques, c'estàdire sa couleur et sa hauteur. Commencez par rééchir au type de la valeur renvoyée par cette fonction. Question 21 vide). Faîtes de même pour chacune des autres combinaisons (sauf peut-être pour la main Question 22 Utilisez les prédicats que vous venez de réaliser pour implémenter la fonction evalue. Question 23 Réalisez maintenant la fonction de comparaison des combinaisons. Question 24 Comment utiliser les fonctions evalue et compare pour déterminer le numéro du joueur gagnant, ou des joueurs ex-æquo, dans une distribution de cartes obtenue par la fonction Main.distribue. 7
Recherche dans un tableau
Chapitre 3 Recherche dans un tableau 3.1 Introduction 3.1.1 Tranche On appelle tranche de tableau, la donnée d'un tableau t et de deux indices a et b. On note cette tranche t.(a..b). Exemple 3.1 : 3 6
Plus en détailPOKER ET PROBABILITÉ
POKER ET PROBABILITÉ Le poker est un jeu de cartes où la chance intervient mais derrière la chance il y a aussi des mathématiques et plus précisément des probabilités, voici une copie d'écran d'une main
Plus en détailProgrammation Objet - Cours II
Programmation Objet - Cours II - Exercices - Page 1 Programmation Objet - Cours II Exercices Auteur : E.Thirion - Dernière mise à jour : 05/07/2015 Les exercices suivants sont en majorité des projets à
Plus en détailPoker. A rendre pour le 25 avril
Poker A rendre pour le 25 avril 0 Avant propos 0.1 Notation Les parties sans * sont obligatoires (ne rendez pas un projet qui ne contient pas toutes les fonctions sans *). Celles avec (*) sont moins faciles
Plus en détailCompte-rendu de projet de Système de gestion de base de données
Compte-rendu de projet de Système de gestion de base de données Création et utilisation d'un index de jointure LAMBERT VELLER Sylvain M1 STIC Université de Bourgogne 2010-2011 Reponsable : Mr Thierry Grison
Plus en détailLes règles de base du poker :
Les règles de base du poker : LES RÈGLES DE BASE DU POKER :... 1 A propos du poker...2 Comment jouer?...3 Essayez le poker dés maintenant... 5 Le classement des cartes au poker...6 Classement des Cartes...
Plus en détailExercices de dénombrement
Exercices de dénombrement Exercice En turbo Pascal, un entier relatif (type integer) est codé sur 6 bits. Cela signifie que l'on réserve 6 cases mémoires contenant des "0" ou des "" pour écrire un entier.
Plus en détailFeuille d exercices 2 : Espaces probabilisés
Feuille d exercices 2 : Espaces probabilisés Cours de Licence 2 Année 07/08 1 Espaces de probabilité Exercice 1.1 (Une inégalité). Montrer que P (A B) min(p (A), P (B)) Exercice 1.2 (Alphabet). On a un
Plus en détailS initier aux probabilités simples «Un jeu de cartes inédit»
«Un jeu de cartes inédit» 29-31 Niveau 3 Entraînement 1 Objectifs S entraîner à estimer une probabilité par déduction. Applications (exemples) En classe : tout ce qui réclame une lecture attentive d une
Plus en détail# let rec concat l1 l2 = match l1 with [] -> l2 x::l 1 -> x::(concat l 1 l2);; val concat : a list -> a list -> a list = <fun>
94 Programmation en OCaml 5.4.8. Concaténation de deux listes Définissons maintenant la fonction concat qui met bout à bout deux listes. Ainsi, si l1 et l2 sont deux listes quelconques, concat l1 l2 constitue
Plus en détailExercices types Algorithmique et simulation numérique Oral Mathématiques et algorithmique Banque PT
Exercices types Algorithmique et simulation numérique Oral Mathématiques et algorithmique Banque PT Ces exercices portent sur les items 2, 3 et 5 du programme d informatique des classes préparatoires,
Plus en détailRappel. Analyse de Données Structurées - Cours 12. Un langage avec des déclaration locales. Exemple d'un programme
Rappel Ralf Treinen Université Paris Diderot UFR Informatique Laboratoire Preuves, Programmes et Systèmes treinen@pps.univ-paris-diderot.fr 6 mai 2015 Jusqu'à maintenant : un petit langage de programmation
Plus en détailTP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile
TP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile Dans ce TP, vous apprendrez à définir le type abstrait Pile, à le programmer en Java à l aide d une interface
Plus en détailYANN ROUDAUT - Professeur de l Ecole Française de Poker - roudaut@ecolefrancaisedepoker.fr - 06 28 76 48 93
MODULE LES MATHEMATIQUES DU POKER Probabilités et Notions de Cotes - Partie 1 YANN ROUDAUT - Professeur de l Ecole Française de Poker - roudaut@ecolefrancaisedepoker.fr - 06 28 76 48 93 A/ POKER ET MATHEMATIQUES
Plus en détaillength : A N add : Z Z Z (n 1, n 2 ) n 1 + n 2
1 Univ. Lille1 - Licence info 3ème année 2013-2014 Expression Logique et Fonctionnelle... Évidemment Cours n o 1 : Introduction à la programmation fonctionnelle 1 Introduction La programmation fonctionnelle
Plus en détailLicence Bio Informatique Année 2004-2005. Premiers pas. Exercice 1 Hello World parce qu il faut bien commencer par quelque chose...
Université Paris 7 Programmation Objet Licence Bio Informatique Année 2004-2005 TD n 1 - Correction Premiers pas Exercice 1 Hello World parce qu il faut bien commencer par quelque chose... 1. Enregistrez
Plus en détailPeut-on tout programmer?
Chapitre 8 Peut-on tout programmer? 8.1 Que peut-on programmer? Vous voici au terme de votre initiation à la programmation. Vous avez vu comment représenter des données de plus en plus structurées à partir
Plus en détailChapitre 10. Les interfaces Comparable et Comparator 1
Chapitre 10: Les interfaces Comparable et Comparator 1/5 Chapitre 10 Les interfaces Comparable et Comparator 1 1 Ce chapitre a été extrait du document "Objets, Algorithmes, Patterns" de [René Lalement],
Plus en détailCanevas théoriques du projet sur le poker Partie A
Partie A Dans une partie de poker, particulièrement au Texas Hold em Limit, il est possible d effectuer certains calculs permettant de prendre la meilleure décision. Quelques-uns de ces calculs sont basés
Plus en détailProgrammation C++ (débutant)/instructions for, while et do...while
Programmation C++ (débutant)/instructions for, while et do...while 1 Programmation C++ (débutant)/instructions for, while et do...while Le cours du chapitre 4 : le for, while et do...while La notion de
Plus en détail1.6- Génération de nombres aléatoires
1.6- Génération de nombres aléatoires 1- Le générateur aléatoire disponible en C++ 2 Création d'un générateur aléatoire uniforme sur un intervalle 3- Génération de valeurs aléatoires selon une loi normale
Plus en détailS initier aux probabilités simples «Question de chance!»
«Question de chance!» 29-11 Niveau 1 Entraînement 1 Objectifs - S entraîner à activer la rapidité du balayage visuel. - Réactiver le comptage par addition jusqu à 20. - Développer le raisonnement relatif
Plus en détailPrénom : Matricule : Sigle et titre du cours Groupe Trimestre INF1101 Algorithmes et structures de données Tous H2004. Loc Jeudi 29/4/2004
Questionnaire d'examen final INF1101 Sigle du cours Nom : Signature : Prénom : Matricule : Sigle et titre du cours Groupe Trimestre INF1101 Algorithmes et structures de données Tous H2004 Professeur(s)
Plus en détail1 Recherche en table par balayage
1 Recherche en table par balayage 1.1 Problème de la recherche en table Une table désigne une liste ou un tableau d éléments. Le problème de la recherche en table est celui de la recherche d un élément
Plus en détailCoefficients binomiaux
Probabilités L2 Exercices Chapitre 2 Coefficients binomiaux 1 ( ) On appelle chemin une suite de segments de longueur 1, dirigés soit vers le haut, soit vers la droite 1 Dénombrer tous les chemins allant
Plus en détail9 5 2 5 Espaces probabilisés
BCPST2 9 5 2 5 Espaces probabilisés I Mise en place du cadre A) Tribu Soit Ω un ensemble. On dit qu'un sous ensemble T de P(Ω) est une tribu si et seulement si : Ω T. T est stable par complémentaire, c'est-à-dire
Plus en détailPour signifier qu'une classe fille hérite d'une classe mère, on utilise le mot clé extends class fille extends mère
L'héritage et le polymorphisme en Java Pour signifier qu'une classe fille hérite d'une classe mère, on utilise le mot clé extends class fille extends mère En java, toutes les classes sont dérivée de la
Plus en détailI. Introduction aux fonctions : les fonctions standards
Chapitre 3 : Les fonctions en C++ I. Introduction aux fonctions : les fonctions standards A. Notion de Fonction Imaginons que dans un programme, vous ayez besoin de calculer une racine carrée. Rappelons
Plus en détailAnalyse Combinatoire
Analyse Combinatoire 1) Équipes On dispose d un groupe de cinq personnes. a) Combien d équipes de trois personnes peut-on former? b) Combien d équipes avec un chef, un sous-chef et un adjoint? c) Combien
Plus en détailTP : Shell Scripts. 1 Remarque générale. 2 Mise en jambe. 3 Avec des si. Systèmes et scripts
E3FI ESIEE Paris Systèmes et scripts B. Perret TP : Shell Scripts 1 Remarque générale Lorsque vous cherchez des informations sur Internet, n'oubliez pas que langage de shell script que nous avons vu correspond
Plus en détailRallye Mathématiques de liaison 3 ème /2 nde et 3 ème /2 nde pro Epreuve finale Jeudi 21 mai 2015 Durée : 1h45
Rallye Mathématiques de liaison 3 ème /2 nde et 3 ème /2 nde pro Epreuve finale Jeudi 21 mai 2015 Durée : 1h45 Précisions pour les problèmes 1 et 2 : Pour ces problèmes, on attend une narration de recherche
Plus en détailUEO11 COURS/TD 1. nombres entiers et réels codés en mémoire centrale. Caractères alphabétiques et caractères spéciaux.
UEO11 COURS/TD 1 Contenu du semestre Cours et TDs sont intégrés L objectif de ce cours équivalent a 6h de cours, 10h de TD et 8h de TP est le suivant : - initiation à l algorithmique - notions de bases
Plus en détailCours Composant 2. Qualité logicielle et spécications algébriques
UPMC Paris Universitas Master Informatique STL Cours Composant 2. Qualité logicielle et spécications algébriques c 2005-2008 Frédéric Peschanski UPMC Paris Universitas 24 février 2008 c 2005-2008 Frédéric
Plus en détailTP3 : Manipulation et implantation de systèmes de fichiers 1
École Normale Supérieure Systèmes et réseaux Année 2012-2013 TP3 : Manipulation et implantation de systèmes de fichiers 1 1 Répertoire de travail courant Le but de l exercice est d écrire une commande
Plus en détailPROBLEMES D'ORDONNANCEMENT AVEC RESSOURCES
Leçon 11 PROBLEMES D'ORDONNANCEMENT AVEC RESSOURCES Dans cette leçon, nous retrouvons le problème d ordonnancement déjà vu mais en ajoutant la prise en compte de contraintes portant sur les ressources.
Plus en détailChapitre 2. Classes et objets
Chapitre 2: Classes et Objets 1/10 Chapitre 2 Classes et objets Chapitre 2: Classes et Objets 2/10 Approche Orientée Objet Idée de base de A.O.O. repose sur l'observation de la façon dont nous procédons
Plus en détailCours d introduction à l informatique. Partie 2 : Comment écrire un algorithme? Qu est-ce qu une variable? Expressions et instructions
Cours d introduction à l informatique Partie 2 : Comment écrire un algorithme? Qu est-ce qu une variable? Expressions et instructions Qu est-ce qu un Une recette de cuisine algorithme? Protocole expérimental
Plus en détailInitiation à la programmation en Python
I-Conventions Initiation à la programmation en Python Nom : Prénom : Une commande Python sera écrite en caractère gras. Exemples : print 'Bonjour' max=input("nombre maximum autorisé :") Le résultat de
Plus en détailSuivant les langages de programmation, modules plus avancés : modules imbriqués modules paramétrés par des modules (foncteurs)
Modularité Extensions Suivant les langages de programmation, modules plus avancés : modules imbriqués modules paramétrés par des modules (foncteurs) généricité modules de première classe : peuvent être
Plus en détailTP3 : Creation de tables 1 seance
Universite de Versailles IUT de Velizy - Algorithmique 2005/2006 TP3 : Creation de tables 1 seance Objectif : Creation et modication de tables dans une base de donnees. Avant de commencer ce TP, terminer
Plus en détailApplication 1- VBA : Test de comportements d'investissements
Application 1- VBA : Test de comportements d'investissements Notions mobilisées Chapitres 1 à 5 du cours - Exemple de récupération de cours en ligne 1ère approche des objets (feuilles et classeurs). Corps
Plus en détailGénéralités sur le Langage Java et éléments syntaxiques.
Généralités sur le Langage Java et éléments syntaxiques. Généralités sur le Langage Java et éléments syntaxiques....1 Introduction...1 Genéralité sur le langage Java....1 Syntaxe de base du Langage...
Plus en détailClasses et Objets en Ocaml.
Classes et Objets en Ocaml. Didier Rémy 2001-2002 http://cristal.inria.fr/ remy/mot/2/ http://www.enseignement.polytechnique.fr/profs/informatique/didier.remy/mot/2/ Cours Exercices Slide 1 1. Objets 2.
Plus en détailProbabilités. I Petits rappels sur le vocabulaire des ensembles 2 I.1 Définitions... 2 I.2 Propriétés... 2
Probabilités Table des matières I Petits rappels sur le vocabulaire des ensembles 2 I.1 s................................................... 2 I.2 Propriétés...................................................
Plus en détailTP 1 : 1 Calculs en binaire, octal et hexadécimal
Univ. Lille 1 - Licence Informatique 2ème année 2013-14 Objectifs du TP Ce TP a pour but Codage de l'information TP 1 : 1. de découvrir quelques opérations logiques sur les nombres 2. et quelques formats
Plus en détailBADPLUS V5 MANUEL D'UTILISATION. Imports de données joueurs à partir de la base fédérale en ligne Poona. Stéphan KIEFFER - Dominique BOSSERT
BADPLUS V5 Imports de données joueurs à partir de la base fédérale en ligne Poona MANUEL D'UTILISATION Stéphan KIEFFER - Dominique BOSSERT Sommaire Pages RECHERCHE DE JOUEURS...- 3-1. RECHERCHE A PARTIR
Plus en détailIN 102 - Cours 1. 1 Informatique, calculateurs. 2 Un premier programme en C
IN 102 - Cours 1 Qu on le veuille ou non, les systèmes informatisés sont désormais omniprésents. Même si ne vous destinez pas à l informatique, vous avez de très grandes chances d y être confrontés en
Plus en détailOrdonnancement. N: nains de jardin. X: peinture extérieure. E: électricité T: toit. M: murs. F: fondations CHAPTER 1
CHAPTER 1 Ordonnancement 1.1. Étude de cas Ordonnancement de tâches avec contraintes de précédences 1.1.1. Exemple : construction d'une maison. Exercice. On veut construire une maison, ce qui consiste
Plus en détailREGLES POKER TEXAS HOLD EM NO LIMIT "CASH-GAME"
REGLES POKER TEXAS HOLD EM NO LIMIT "CASH-GAME" Casino Grand Cercle - Aix-les-Bains Objectifs Lister les différentes règles et conventions du Poker dans le cadre des activités de Croupier et de Floor Manager.
Plus en détailAlgorithmique et Programmation, IMA
Algorithmique et Programmation, IMA Cours 2 : C Premier Niveau / Algorithmique Université Lille 1 - Polytech Lille Notations, identificateurs Variables et Types de base Expressions Constantes Instructions
Plus en détailAlgorithmique avec Algobox
Algorithmique avec Algobox 1. Algorithme: Un algorithme est une suite d instructions qui, une fois exécutée correctement, conduit à un résultat donné Un algorithme doit contenir uniquement des instructions
Plus en détailBERNARD Arthur Compte-rendu de projet de Simulation Multi-agents : Le jeu du Texas Hold'Em
BERNARD Arthur Compte-rendu de projet de Simulation Multi-agents : Le jeu du Texas Hold'Em BERNARD Arthur 1/21 Introduction Ce rapport a pour but de présenter le résultat du projet de Simulation Multi-Agents.
Plus en détailProjet L1, S2, 2015: Simulation de fourmis, Soutenance la semaine du 4 mai.
Projet L1, S2, 2015: Simulation de fourmis, Soutenance la semaine du 4 mai. 1 Introduction On considère une grille de 20 lignes 20 colonnes. Une case de la grille peut être vide, ou contenir une et une
Plus en détailLES DECIMALES DE π BERNARD EGGER
LES DECIMALES DE π BERNARD EGGER La génération de suites de nombres pseudo aléatoires est un enjeu essentiel pour la simulation. Si comme le dit B Ycard dans le cours écrit pour le logiciel SEL, «Paradoxalement,
Plus en détailREALISATION d'un. ORDONNANCEUR à ECHEANCES
REALISATION d'un ORDONNANCEUR à ECHEANCES I- PRÉSENTATION... 3 II. DESCRIPTION DU NOYAU ORIGINEL... 4 II.1- ARCHITECTURE... 4 II.2 - SERVICES... 4 III. IMPLÉMENTATION DE L'ORDONNANCEUR À ÉCHÉANCES... 6
Plus en détailCALCUL DES PROBABILITES
CALCUL DES PROBABILITES Exemple On lance une pièce de monnaie une fois. Ensemble des événements élémentaires: E = pile, face. La chance pour obtenir pile vaut 50 %, pour obtenir face vaut aussi 50 %. Les
Plus en détailD'UN THÉORÈME NOUVEAU
DÉMONSTRATION D'UN THÉORÈME NOUVEAU CONCERNANT LES NOMBRES PREMIERS 1. (Nouveaux Mémoires de l'académie royale des Sciences et Belles-Lettres de Berlin, année 1771.) 1. Je viens de trouver, dans un excellent
Plus en détailConventions d écriture et outils de mise au point
Logiciel de base Première année par alternance Responsable : Christophe Rippert Christophe.Rippert@Grenoble-INP.fr Introduction Conventions d écriture et outils de mise au point On va utiliser dans cette
Plus en détailCréation d'un questionnaire (sondage)
Création d'un questionnaire (sondage) Le but de ce petit tuto est d'avoir les séquences pas à pas pour la création d'un questionnaire de façon à ne pas devoir rechercher la manière de procéder si l'outil
Plus en détailClasse ClInfoCGI. Fonctions membres principales. Gestion des erreurs
Utilisation des classes de PourCGI par Michel Michaud, version 2002-11-23 Les fichiers PourCGI.h et PourCGI.cpp rendent disponibles deux classes et une fonction libre qui permettent de faire facilement
Plus en détailREGLEMENT DES JEUX PARTOUCHE IMAGES (Serveur vocal et Internet)
REGLEMENT DES JEUX PARTOUCHE IMAGES (Serveur vocal et Internet) Le présent règlement remplacent, à compter du 24 juillet 2013, le précédent règlement Jeux PARTOUCHE IMAGES déposées en l étude de Maître
Plus en détailAll in Lorsqu un joueur n est plus en mesure de miser l entier du montant exigé, il est qualifié de «All in».
LEXIQUE DU POKER All in Lorsqu un joueur n est plus en mesure de miser l entier du montant exigé, il est qualifié de «All in». Ante Mise initiale obligatoire dont tous les joueurs doivent s acquitter avant
Plus en détailCours de Probabilités et de Statistique
Cours de Probabilités et de Statistique Licence 1ère année 2007/2008 Nicolas Prioux Université Paris-Est Cours de Proba-Stat 2 L1.2 Science-Éco Chapitre Notions de théorie des ensembles 1 1.1 Ensembles
Plus en détailLimites finies en un point
8 Limites finies en un point Pour ce chapitre, sauf précision contraire, I désigne une partie non vide de R et f une fonction définie sur I et à valeurs réelles ou complees. Là encore, les fonctions usuelles,
Plus en détailTP 1. Prise en main du langage Python
TP. Prise en main du langage Python Cette année nous travaillerons avec le langage Python version 3. ; nous utiliserons l environnement de développement IDLE. Étape 0. Dans votre espace personnel, créer
Plus en détailExercices sur le chapitre «Probabilités»
Arnaud de Saint Julien - MPSI Lycée La Merci 2014-2015 1 Pour démarrer Exercices sur le chapitre «Probabilités» Exercice 1 (Modélisation d un dé non cubique) On considère un parallélépipède rectangle de
Plus en détailProbabilités. Une urne contient 3 billes vertes et 5 billes rouges toutes indiscernables au toucher.
Lycée Jean Bart PCSI Année 2013-2014 17 février 2014 Probabilités Probabilités basiques Exercice 1. Vous savez bien qu un octet est une suite de huit chiffres pris dans l ensemble {0; 1}. Par exemple 01001110
Plus en détailRappels sur les suites - Algorithme
DERNIÈRE IMPRESSION LE 14 septembre 2015 à 12:36 Rappels sur les suites - Algorithme Table des matières 1 Suite : généralités 2 1.1 Déition................................. 2 1.2 Exemples de suites............................
Plus en détail2. RAPPEL DES TECHNIQUES DE CALCUL DANS R
2. RAPPEL DES TECHNIQUES DE CALCUL DANS R Dans la mesure où les résultats de ce chapitre devraient normalement être bien connus, il n'est rappelé que les formules les plus intéressantes; les justications
Plus en détailProblème : Calcul d'échéanciers de prêt bancaire (15 pt)
Problème : Calcul d'échéanciers de prêt bancaire (15 pt) 1 Principe d'un prêt bancaire et dénitions Lorsque vous empruntez de l'argent dans une banque, cet argent (appelé capital) vous est loué. Chaque
Plus en détailMATH0062-1 ELEMENTS DU CALCUL DES PROBABILITES
MATH0062-1 ELEMENTS DU CALCUL DES PROBABILITES REPETITIONS et PROJETS : INTRODUCTION F. Van Lishout (Février 2015) Pourquoi ce cours? Sciences appliquées Modélisation parfaite vs monde réel Comment réussir
Plus en détailLibreOffice Calc : introduction aux tableaux croisés dynamiques
Fiche logiciel LibreOffice Calc 3.x Tableur Niveau LibreOffice Calc : introduction aux tableaux croisés dynamiques Un tableau croisé dynamique (appelé Pilote de données dans LibreOffice) est un tableau
Plus en détailInfo0101 Intro. à l'algorithmique et à la programmation. Cours 3. Le langage Java
Info0101 Intro. à l'algorithmique et à la programmation Cours 3 Le langage Java Pierre Delisle, Cyril Rabat et Christophe Jaillet Université de Reims Champagne-Ardenne Département de Mathématiques et Informatique
Plus en détailTP, première séquence d exercices.
TP, première séquence d exercices. Benoît Valiron benoit.valiron@lipn.univ-paris13.fr 7 novembre 2010 Introduction Vous écrirez les réponses aux questions courtes sur une feuille à rendre à la fin de la
Plus en détailChapitre 2 Devine mon nombre!
Python 3 : objectif jeux Chapitre 2 Chapitre 2 Devine mon nombre! 2.1. Thèmes abordés dans ce chapitre commentaires modules externes, import variables boucle while condition : if... elif... else la fonction
Plus en détailPrincipes de mathématiques 12 SÉRIE DE PROBLÈMES. Septembre 2001. Student Assessment and Program Evaluation Branch
Principes de mathématiques 12 SÉRIE DE PROBLÈMES Septembre 2001 Student Assessment and Program Evaluation Branch REMERCIEMENTS Le Ministère de l Éducation tient à remercier chaleureusement les professionnels
Plus en détailTélécom Nancy Année 2013-2014
Télécom Nancy Année 2013-2014 Rapport 1A Ajout du langage C dans la Programmer's Learning Machine GIANNINI Valentin Loria 615, rue du Jardin Botanique 54600, Villers-Lès-Nancy Maître de stage : QUINSON
Plus en détail7 Card Stud et 7 Card Stud Hi Lo
7 Card Stud et 7 Card Stud Hi Lo Historique de l une des variantes du poker les plus prisées, le Stud Seven Quand on s attache de plus près aux différentes explications relatives à l origine du Stud Seven
Plus en détailDéfinitions. Numéro à préciser. (Durée : )
Numéro à préciser (Durée : ) On étudie dans ce problème l ordre lexicographique pour les mots sur un alphabet fini et plusieurs constructions des cycles de De Bruijn. Les trois parties sont largement indépendantes.
Plus en détailTD3: tableaux avancées, première classe et chaînes
TD3: tableaux avancées, première classe et chaînes de caractères 1 Lestableaux 1.1 Élémentsthéoriques Déclaration des tableaux Pour la déclaration des tableaux, deux notations sont possibles. La première
Plus en détailUniversité Bordeaux 1, Licence Semestre 3 - Algorithmes et struct...
Université Bordeaux 1 table des matières Licence Semestre 3 - Algorithmes et structures de données 1 Dernière mise à jour effectuée le 23 Octobre 2013 Piles et Files Déitions Primitives de piles, exemples
Plus en détailMaster Modélisation Aléatoire Paris VII, Cours Méthodes de Monte Carlo en nance et C++, TP n 2.
Master Modélisation Aléatoire Paris VII, Cours Méthodes de Monte Carlo en nance et C++, TP n 2. Techniques de correction pour les options barrières 25 janvier 2007 Exercice à rendre individuellement lors
Plus en détailProbabilités. Rappel : trois exemples. Exemple 2 : On dispose d un dé truqué. On sait que : p(1) = p(2) =1/6 ; p(3) = 1/3 p(4) = p(5) =1/12
Probabilités. I - Rappel : trois exemples. Exemple 1 : Dans une classe de 25 élèves, il y a 16 filles. Tous les élèves sont blonds ou bruns. Parmi les filles, 6 sont blondes. Parmi les garçons, 3 sont
Plus en détailUtilisation d objets : String et ArrayList
Chapitre 6 Utilisation d objets : String et ArrayList Dans ce chapitre, nous allons aborder l utilisation d objets de deux classes prédéfinies de Java d usage très courant. La première, nous l utilisons
Plus en détailLES TYPES DE DONNÉES DU LANGAGE PASCAL
LES TYPES DE DONNÉES DU LANGAGE PASCAL 75 LES TYPES DE DONNÉES DU LANGAGE PASCAL CHAPITRE 4 OBJECTIFS PRÉSENTER LES NOTIONS D ÉTIQUETTE, DE CONS- TANTE ET DE IABLE DANS LE CONTEXTE DU LAN- GAGE PASCAL.
Plus en détailI3, Probabilités 2014 Travaux Dirigés F BM F BM F BM F BM F B M F B M F B M F B M 20 20 80 80 100 100 300 300
I3, Probabilités 2014 Travaux Dirigés TD 1 : rappels. Exercice 1 Poker simplié On tire 3 cartes d'un jeu de 52 cartes. Quelles sont les probabilités d'obtenir un brelan, une couleur, une paire, une suite,
Plus en détailAlgorithmique I. Augustin.Lux@imag.fr Roger.Mohr@imag.fr Maud.Marchal@imag.fr. Algorithmique I 20-09-06 p.1/??
Algorithmique I Augustin.Lux@imag.fr Roger.Mohr@imag.fr Maud.Marchal@imag.fr Télécom 2006/07 Algorithmique I 20-09-06 p.1/?? Organisation en Algorithmique 2 séances par semaine pendant 8 semaines. Enseignement
Plus en détailNOTIONS DE PROBABILITÉS
NOTIONS DE PROBABILITÉS Sommaire 1. Expérience aléatoire... 1 2. Espace échantillonnal... 2 3. Événement... 2 4. Calcul des probabilités... 3 4.1. Ensemble fondamental... 3 4.2. Calcul de la probabilité...
Plus en détailLe chiffre est le signe, le nombre est la valeur.
Extrait de cours de maths de 6e Chapitre 1 : Les nombres et les opérations I) Chiffre et nombre 1.1 La numération décimale En mathématique, un chiffre est un signe utilisé pour l'écriture des nombres.
Plus en détailPlateforme PAYZEN. Définition de Web-services
Plateforme PAYZEN Définition de Web-services Ordre de paiement Version 1.1 Rédaction, Vérification, Approbation Rédaction Vérification Approbation Nom Date/Visa Nom Date/Visa Nom Date/Visa Lyra-Network
Plus en détailIntroduction à MATLAB R
Introduction à MATLAB R Romain Tavenard 10 septembre 2009 MATLAB R est un environnement de calcul numérique propriétaire orienté vers le calcul matriciel. Il se compose d un langage de programmation, d
Plus en détailExceptions. 1 Entrées/sorties. Objectif. Manipuler les exceptions ;
CNAM NFP121 TP 10 19/11/2013 (Séance 5) Objectif Manipuler les exceptions ; 1 Entrées/sorties Exercice 1 : Lire un entier à partir du clavier Ajouter une méthode readint(string message) dans la classe
Plus en détailJEUX DE CASINO challenges possibles a partir de 10 ANS utilisation en intérieur
Les Jeux de Casino se prêtent particulièrement bien à tous vos événements, tant en cocktail dinatoire qu en apéritif pour un dîner, et lorsque vous voulez que chacun de vos invités participe. Nous vous
Plus en détailCouples de variables aléatoires discrètes
Couples de variables aléatoires discrètes ECE Lycée Carnot mai Dans ce dernier chapitre de probabilités de l'année, nous allons introduire l'étude de couples de variables aléatoires, c'est-à-dire l'étude
Plus en détailAlgorithmique avec Algobox
Algorithmique avec Algobox Fiche 2 Cette fiche est la suite directe de la première. 1. Instructions conditionnelles : 1.1. Reprise de la fiche 1 : Lecture d'un algorithme : ORDINATEUR INTERDIT : Après
Plus en détailLicence ST Université Claude Bernard Lyon I LIF1 : Algorithmique et Programmation C Bases du langage C 1 Conclusion de la dernière fois Introduction de l algorithmique générale pour permettre de traiter
Plus en détailRéseau : Interconnexion de réseaux, routage et application de règles de filtrage.
TD réseau - Réseau : interconnexion de réseau Réseau : Interconnexion de réseaux, routage et application de règles de filtrage. Un réseau de grande importance ne peut pas seulement reposer sur du matériel
Plus en détail