-
Nicolas M. Thiéry authoredNicolas M. Thiéry authored
jupytext:
text_representation:
extension: .md
format_name: myst
format_version: 0.13
jupytext_version: 1.15.2
kernelspec:
display_name: C++17
language: C++17
name: xcpp17
+++ {"deletable": false, "editable": false, "nbgrader": {"cell_type": "markdown", "checksum": "89698a7d6552b3188af9704712e2a985", "grade": false, "grade_id": "cell-8debedfea96381b5", "locked": true, "schema_version": 3, "solution": false}}
TP : le jeu de Yams
+++ {"deletable": false, "editable": false, "nbgrader": {"cell_type": "markdown", "checksum": "975812aa49a8c47d91612ddf23aa41d9", "grade": false, "grade_id": "cell-6c2c32f5e76ffb43", "locked": true, "schema_version": 3, "solution": false}}
:::{admonition} Rappels d'utilisation des tableaux
-
Déclarer un tableau d'entiers
tab
:vector<int> tab;
-
Allouer 5 cases au tableau
tab
:tab = vector<int>(5);
-
Initialiser ses cases :
tab[0] = 42; tab[1] = 3; ... ; tab[4] = 36;
-
Déclarer, allouer et initialiser en une seule instruction :
vector<int> tab = {25,-3,10,7};
-
Il est également possible de construire un tableau sans lui donner de nom pour le passer à une fonction de la manière suivante :
maFonction({17,9,-3,42});
:::
+++ {"deletable": false, "editable": false, "nbgrader": {"cell_type": "markdown", "checksum": "a7918f75f740df20c5064a2efcd7b1f7", "grade": false, "grade_id": "cell-e8fa588409cbc545", "locked": true, "schema_version": 3, "solution": false}}
:::{admonition} Astuce :class: tip
Lorsque vous avez besoin de redémarrer le noyau, utilisez le menu
Noyau > Redémarrer le noyau et exécutez jusqu'à la cellule selectionnée
.
Ainsi vous disposez d'un environnement d'exécution propre avec toutes les fonctions précédentes bien définies, ainsi que les instructions d'initialisation qui suivent.
:::
---
deletable: false
editable: false
nbgrader:
cell_type: code
checksum: 07655687e27257a54630534c6ac62c15
grade: false
grade_id: cell-214aa5a1f7ccaa00
locked: true
schema_version: 3
solution: false
---
#include <iostream>
#include <vector>
#include <cstdlib>
using namespace std;
using tableau = vector<int>;
// Initialisation de la fonction rand (pour les nombres aléatoires) :
srand(time(0));
+++ {"deletable": false, "editable": false, "nbgrader": {"cell_type": "markdown", "checksum": "c41c8f0241a2649e0b62694e273a9e84", "grade": false, "grade_id": "cell-e8fa588409cbc546", "locked": true, "schema_version": 3, "solution": false}}
Exercice 1 : Reconnaître les yam's
+++ {"deletable": false, "editable": false, "nbgrader": {"cell_type": "markdown", "checksum": "bbe82a28d45d9dc4875a7e1822472bcd", "grade": false, "grade_id": "cell-b61f9d53913e9c53", "locked": true, "schema_version": 3, "solution": false}}
pointsFigureYams
Complétez la documentation de la fonction pointsFigureYams
ébauchée dans
la cellule suivante, puis implémentez cette fonction dans la cellule d'après.
Pour rappel, la fonction pointsFigureYams
doit vérifier si les cinq valeurs
de dés fournies forment un yam's ou non. Si un yam's est trouvé on renvoie
le score correspondant (somme des dés + 60), sinon on renvoie 0.
/** Fonction pointsFigureYams
* @param des
* @return
**/
---
deletable: false
nbgrader:
cell_type: code
checksum: a239d59a94d368ba3cf60c749ee38dcc
grade: false
grade_id: cell-e5c12aeafec7d057
locked: false
schema_version: 3
solution: true
---
// REMPLACER CETTE LIGNE PAR VOTRE RÉPONSE