|
1 |
| ---- |
2 |
| -title: 'Introduction aux tableaux' |
3 |
| -description: 'Créez et manipulez des tableaux.' |
4 |
| - |
5 |
| -code: |
6 |
| - default: | |
7 |
| - #include <iostream> |
8 |
| - #include <vector> |
9 |
| - |
10 |
| - using namespace std; |
11 |
| - |
12 |
| - int main () { |
13 |
| - int nbElements; |
14 |
| - cin >> nbElements; |
15 |
| - |
16 |
| - vector<int> tableau(nbElements); |
17 |
| - for (int iElement = 0; iElement < nbElements; iElement ++) { |
18 |
| - cin >> tableau[iElement]; |
19 |
| - } |
20 |
| - |
21 |
| - int indiceDepart, indiceFin; |
22 |
| - cin >> indiceDepart >> indiceFin; |
23 |
| - |
24 |
| - // Implémentez ce que demande la consigne |
25 |
| - |
26 |
| - for (int iElement = 0; iElement < nbElements; iElement ++) { |
27 |
| - cout << tableau[iElement] << " "; |
28 |
| - } |
29 |
| - } |
30 |
| - |
31 |
| - corrected: | |
32 |
| - #include <iostream> |
33 |
| - #include <vector> |
34 |
| - |
35 |
| - using namespace std; |
36 |
| - |
37 |
| - int main () { |
38 |
| - int nbElements; |
39 |
| - cin >> nbElements; |
40 |
| - |
41 |
| - vector<int> tableau(nbElements); |
42 |
| - for (int iElement = 0; iElement < nbElements; iElement ++) { |
43 |
| - cin >> tableau[iElement]; |
44 |
| - } |
45 |
| - |
46 |
| - int indiceDepart, indiceFin; |
47 |
| - cin >> indiceDepart >> indiceFin; |
48 |
| - |
49 |
| - // Ici, on récupère la valeur |
50 |
| - int valeurDepart = tableau[indiceDepart]; |
51 |
| - |
52 |
| - // On calcule la valeur qu'on souhaite stocker dans le tableau |
53 |
| - int valeurFin = valeurDepart + 1; |
54 |
| - |
55 |
| - // On la stocke dans le tableau à l'indice de fin |
56 |
| - tableau[indiceFin] = valeurFin; |
57 |
| - |
58 |
| - // On aurait aussi pu écrire |
59 |
| - // tableau[indiceFin] = tableau[indiceDepart] + 1; |
60 |
| - |
61 |
| - for (int iElement = 0; iElement < nbElements; iElement ++) { |
62 |
| - cout << tableau[iElement] << " "; |
63 |
| - } |
64 |
| - } |
65 |
| - |
66 |
| -
|
67 |
| -tests: |
68 |
| - - input: | |
69 |
| - 4 |
70 |
| - 1 2 4 8 |
71 |
| - 1 3 |
72 |
| - expectedOutput: |- |
73 |
| - 1 2 4 3 |
74 |
| ---- |
75 |
| - |
76 |
| -### Introduction aux tableaux |
77 |
| - |
78 |
| -Dans cet exercice, nous allons aborder l’un des éléments fondamentaux de l’informatique, les tableaux. Il s’agit d’une structure de données que vous avez déjà rencontré avec les chaînes de caractères, qui sont équivalentes à un tableau de caractère. |
79 |
| - |
80 |
| -Un tableau peut être représenté comme une séquence finie d’éléments. On appelle la taille de ce tableau le nombre d’éléments de celui-ci, et on associe le premier élément à l’indice 0, le second à l’indice 1, etc... Par exemple, la séquence finie [1, 2, 3, 2] est représentée par la table |
81 |
| - |
82 |
| -| Indice | 0 | 1 | 2 | 3 | |
83 |
| -| ------ | --- | --- | --- | --- | |
84 |
| -| Valeur | 1 | 2 | 3 | 2 | |
85 |
| - |
86 |
| -Ici, on a choisi un tableau de nombres, mais on aurait pu imaginer un tableau de caractères comme [’H’, ‘e’, ‘l’, ‘l’, ‘o’], équivalent à la chaîne "Hello", ou même un tableau contenant d’autres types d’objets. L’intérêt d’un tableau est que ses éléments sont modifiables, et on peut changer la valeur associée à un indice. Voici quelques exemples de syntaxes pour les tableaux |
87 |
| - |
88 |
| -```cpp |
89 |
| -// on importe la librairie pour les tableaux |
90 |
| -#include <vector> |
91 |
| - |
92 |
| -using namespace std; |
93 |
| - |
94 |
| -int main () { |
95 |
| - // créé une variable tableau de type tableau d'entier et de taille 4, |
96 |
| - vector<int> tableau (4); |
97 |
| - // ici 4 aurait aussi pu être une variable ou une expression |
98 |
| - // On stocke la séquence [1, 2, 3, 2] dans le tableau |
99 |
| - tableau[0] = 1; |
100 |
| - tableau[1] = 2; |
101 |
| - tableau[2] = 3; |
102 |
| - tableau[3] = 2; |
103 |
| - |
104 |
| - // Pour créer facilement un tableau dont on connaît les éléments, on aurait aussi pu faire |
105 |
| - // vector<int> tableau = { 1, 2, 3, 2 }; |
106 |
| - // cela est équivalent à stocker la séquence finie [1, 2, 3, 2] dans notre tableau. |
107 |
| - |
108 |
| - // on peut alors calculer si on le souhaite la somme des deux premières valeurs |
109 |
| - int somme = tableau[0] + tableau[1]; |
110 |
| - |
111 |
| - // on peut alors le stocker dans la quatrième case du tableau |
112 |
| - tableau[3] = somme; |
113 |
| - |
114 |
| - // notre nouvelle séquence est alors [1, 2, 3, 3] |
115 |
| - // on aurait aussi pu écrire tout sur une seule ligne |
116 |
| - // tableau[3] = tableau[0] + tableau[1]; |
117 |
| - // bien sûr, les valeurs 0, 1 et 3 sont arbitraires, on aurait pu utiliser |
118 |
| - // des variables ou des expressions à la place |
119 |
| -} |
120 |
| -``` |
121 |
| - |
122 |
| -### Consigne |
123 |
| - |
124 |
| -Afin de vous familiariser avec les tableaux, on va vous donner un tableau d’entiers dans la variable `tableau` avec `nbElements` éléments. |
125 |
| - |
126 |
| -On vous donne aussi deux indices `indiceDepart` et `indiceFin`. Vous devez remplacer la valeur à l’indice `indiceFin` par la valeur à l’indice `indiceDepart`, à laquelle vous devez ajouter 1. |
127 |
| - |
128 |
| -### Exemple |
129 |
| - |
130 |
| -Par exemple, si on vous donne comme tableau [ 1, 2, 4, 8 ] et comme indices de départ et indices de fin respectivement 1 et 3, alors votre tableau final doit valoir [ 1, 2, 4, 3 ]. |
| 1 | +--- |
| 2 | +title: 'Introduction aux tableaux' |
| 3 | +description: 'Créez et manipulez des tableaux.' |
| 4 | + |
| 5 | +code: |
| 6 | + default: | |
| 7 | + #include <iostream> |
| 8 | + #include <vector> |
| 9 | +
|
| 10 | + using namespace std; |
| 11 | +
|
| 12 | + int main () { |
| 13 | + int nbElements; |
| 14 | + cin >> nbElements; |
| 15 | +
|
| 16 | + vector<int> tableau(nbElements); |
| 17 | + for (int iElement = 0; iElement < nbElements; iElement ++) { |
| 18 | + cin >> tableau[iElement]; |
| 19 | + } |
| 20 | + |
| 21 | + int indiceDepart, indiceFin; |
| 22 | + cin >> indiceDepart >> indiceFin; |
| 23 | +
|
| 24 | + // Implémentez ce que demande la consigne |
| 25 | +
|
| 26 | + for (int iElement = 0; iElement < nbElements; iElement ++) { |
| 27 | + cout << tableau[iElement] << " "; |
| 28 | + } |
| 29 | + } |
| 30 | +
|
| 31 | + corrected: | |
| 32 | + #include <iostream> |
| 33 | + #include <vector> |
| 34 | +
|
| 35 | + using namespace std; |
| 36 | +
|
| 37 | + int main () { |
| 38 | + int nbElements; |
| 39 | + cin >> nbElements; |
| 40 | +
|
| 41 | + vector<int> tableau(nbElements); |
| 42 | + for (int iElement = 0; iElement < nbElements; iElement ++) { |
| 43 | + cin >> tableau[iElement]; |
| 44 | + } |
| 45 | + |
| 46 | + int indiceDepart, indiceFin; |
| 47 | + cin >> indiceDepart >> indiceFin; |
| 48 | +
|
| 49 | + // Ici, on récupère la valeur |
| 50 | + int valeurDepart = tableau[indiceDepart]; |
| 51 | + |
| 52 | + // On calcule la valeur qu'on souhaite stocker dans le tableau |
| 53 | + int valeurFin = valeurDepart + 1; |
| 54 | + |
| 55 | + // On la stocke dans le tableau à l'indice de fin |
| 56 | + tableau[indiceFin] = valeurFin; |
| 57 | + |
| 58 | + // On aurait aussi pu écrire |
| 59 | + // tableau[indiceFin] = tableau[indiceDepart] + 1; |
| 60 | +
|
| 61 | + for (int iElement = 0; iElement < nbElements; iElement ++) { |
| 62 | + cout << tableau[iElement] << " "; |
| 63 | + } |
| 64 | + } |
| 65 | +
|
| 66 | +tests: |
| 67 | + - input: | |
| 68 | + 4 |
| 69 | + 1 2 4 8 |
| 70 | + 1 3 |
| 71 | + expectedOutput: |- |
| 72 | + 1 2 4 3 |
| 73 | +--- |
| 74 | + |
| 75 | +### Introduction aux tableaux |
| 76 | + |
| 77 | +Dans cet exercice, nous allons aborder l’un des éléments fondamentaux de l’informatique, les tableaux. Il s’agit d’une structure de données que vous avez déjà rencontré avec les chaînes de caractères, qui sont équivalentes à un tableau de caractère. |
| 78 | + |
| 79 | +Un tableau peut être représenté comme une séquence finie d’éléments. On appelle la taille de ce tableau le nombre d’éléments de celui-ci, et on associe le premier élément à l’indice 0, le second à l’indice 1, etc... Par exemple, la séquence finie [1, 2, 3, 2] est représentée par la table |
| 80 | + |
| 81 | +| Indice | 0 | 1 | 2 | 3 | |
| 82 | +| ------ | --- | --- | --- | --- | |
| 83 | +| Valeur | 1 | 2 | 3 | 2 | |
| 84 | + |
| 85 | +Ici, on a choisi un tableau de nombres, mais on aurait pu imaginer un tableau de caractères comme [’H’, ‘e’, ‘l’, ‘l’, ‘o’], équivalent à la chaîne "Hello", ou même un tableau contenant d’autres types d’objets. L’intérêt d’un tableau est que ses éléments sont modifiables, et on peut changer la valeur associée à un indice. Voici quelques exemples de syntaxes pour les tableaux |
| 86 | + |
| 87 | +```cpp |
| 88 | +// on importe la librairie pour les tableaux |
| 89 | +#include <vector> |
| 90 | + |
| 91 | +using namespace std; |
| 92 | + |
| 93 | +int main () { |
| 94 | + // créé une variable tableau de type tableau d'entier et de taille 4, |
| 95 | + vector<int> tableau (4); |
| 96 | + // ici 4 aurait aussi pu être une variable ou une expression |
| 97 | + // On stocke la séquence [1, 2, 3, 2] dans le tableau |
| 98 | + tableau[0] = 1; |
| 99 | + tableau[1] = 2; |
| 100 | + tableau[2] = 3; |
| 101 | + tableau[3] = 2; |
| 102 | + |
| 103 | + // Pour créer facilement un tableau dont on connaît les éléments, on aurait aussi pu faire |
| 104 | + // vector<int> tableau = { 1, 2, 3, 2 }; |
| 105 | + // cela est équivalent à stocker la séquence finie [1, 2, 3, 2] dans notre tableau. |
| 106 | + |
| 107 | + // on peut alors calculer si on le souhaite la somme des deux premières valeurs |
| 108 | + int somme = tableau[0] + tableau[1]; |
| 109 | + |
| 110 | + // on peut alors le stocker dans la quatrième case du tableau |
| 111 | + tableau[3] = somme; |
| 112 | + |
| 113 | + // notre nouvelle séquence est alors [1, 2, 3, 3] |
| 114 | + // on aurait aussi pu écrire tout sur une seule ligne |
| 115 | + // tableau[3] = tableau[0] + tableau[1]; |
| 116 | + // bien sûr, les valeurs 0, 1 et 3 sont arbitraires, on aurait pu utiliser |
| 117 | + // des variables ou des expressions à la place |
| 118 | +} |
| 119 | +``` |
| 120 | + |
| 121 | +### Consigne |
| 122 | + |
| 123 | +Afin de vous familiariser avec les tableaux, on va vous donner un tableau d’entiers dans la variable `tableau` avec `nbElements` éléments. |
| 124 | + |
| 125 | +On vous donne aussi deux indices `indiceDepart` et `indiceFin`. Vous devez remplacer la valeur à l’indice `indiceFin` par la valeur à l’indice `indiceDepart`, à laquelle vous devez ajouter 1. |
| 126 | + |
| 127 | +### Exemple |
| 128 | + |
| 129 | +Par exemple, si on vous donne comme tableau [ 1, 2, 4, 8 ] et comme indices de départ et indices de fin respectivement 1 et 3, alors votre tableau final doit valoir [ 1, 2, 4, 3 ]. |
0 commit comments