Tableaux : exercices

Sommaire

Index

Utiliser l’outil de programmation en pseudo-JS

Placer les fichiers dans un dossier nommé exercices-tableaux

Série d’exercices sur les tableaux

Dans cette série, pour chaque exercice, il est demandé de:

Tableau 1: entiers

Nom du fichier attendu: tableau-1-entiers.js

Écrire un algorithme qui déclare et initialise un tableau de 20 entiers en positionnant toutes les valeurs à -1

Tableau 2: notes de musique

Nom du fichier attendu: tableau-2-notes.js

Écrire un algorithme qui déclare et initialise un tableau représentant toutes les valeurs des notes de musiques (de Do à Si)

Tableau 3

Nom du fichier attendu: tableau-3-voyelles.js

Écrire un algorithme qui déclare et initialise un tableau de caractères contenant toutes les voyelles de l’alphabet.

Tableau 4: saisir des notes

Nom du fichier attendu: tableau-4-saisie.js

Écrire un algorithme qui déclare et initialise un tableau de 9 notes et qui demande à l’utilisateur de saisir chacune d’elles.

Afficher ensuite ce tableau sous la forme:

Note 1: 12
...

Interprétation d’algorithme 1

Nom du fichier attendu: tableau-5-algo-1.md

Que fait l’algorithme suivant ?

VARIABLES
TABLEAU D'ENTIERS nombres[4]
ENTIER i
DEBUT
  POUR i allant de 0 à 4
    nombres[i] <-- i * i
  FIN POUR: i <-- i + 1
  POUR i allant de 0 à 4
    ECRIRE nombres[i]
  FIN POUR: i <-- i + 1
FIN

Peut-il être simplifié en obtenant le même résultat ?

Interprétation d’algorithme 2

Nom du fichier attendu: tableau-6-algo-2.md

Que fait l’algorithme suivant ?

VARIABLES
TABLEAU D'ENTIERS VAL[7]
ENTIER i
DEBUT
  VAL[0] <-- 0
  POUR i allant de 1 à 7
    VAL[i] <-- VAL[i - 1] + 2
  FIN POUR: i <-- i + 1
  POUR i allant de 1 à 7
    ECRIRE VAL[i]
  FIN POUR: i <-- i + 1
FIN

Peut-il être simplifié en obtenant le même résultat ?

Interprétation d’algorithme 3

Nom du fichier attendu: tableau-7-algo-3.md

Que fait l’algorithme suivant ?

VARIABLES
TABLEAU D'ENTIERS fifi[8]
ENTIER i
DEBUT
  fifi[0] <-- 0
  fifi[1] <-- 1
  POUR i allant de 2 à 8
    fifi[i] <-- fifi[i - 1] + fifi[i - 2]
  FIN POUR: i <-- i + 1
  POUR i allant de 2 à 8
    ECRIRE fifi[i]
  FIN POUR: i <-- i + 1
FIN

Peut-il être simplifié en obtenant le même résultat ?

Moyenne

Nom du fichier attendu: tableau-7-moyenne.js

Reprendre l’exercice tableau 4

Dimensionner un tableau

Nom du fichier attendu: tableau-8-dimensionner.js

Ecrire un algorithme qui permet de saisir un nombre de valeurs non déterminé.

L’utilisateur doit d’abord saisir le nombre de valeurs à saisir.

Ensuite, l’utilisateur saisit ces valeurs qui sont stockées dans un tableau.

Enfin, l’algorithme affiche le nombre de valeurs négatives et le nombre de valeurs positives stockées dans ce tableau.

Recopier un tableau

Nom du fichier attendu: tableau-9-recopier.js

Ecrire un algorithme permettant de saisir un tableau contenant 7 valeurs numériques puis de copier ces valeurs dans un second tableau

Redimensionner un tableau

Nom du fichier attendu: tableau-10-redim.js

Ecrire un algorithme permettant de:

Les deux phases principales sont à réaliser dans deux boucles différentes.

L’algorithme va ensuite afficher ce nouveau tableau

Exemple de tableau initial:

index 0 1 2 3
valeur 2 3 10 -16

Exemple de résultat:

index 0 1 2 3 4 5 6 7
valeur 2 4 3 9 10 100 -16 256
VARIABLE
ENTIER i , j, n
TABLEAU D'ENTIER tabInit, tabFinal

tabInit <-- ENTIER[n]
...

tabFinal <-- ENTIER[ 2 * n]

j <-- 0

POUR i allant de 0 à n
    tabFinal[j] <-- tabInit[i]
    j <-- j + 1

    tabFinal[j] <-- tabInit[i] * tabInit[i]
    j <-- j + 1
FIN POUR: i <-- i + 1

Variante 1:

POUR i allant de 0 à n
    j <-- i * 2
    tabFinal[j] <-- tabInit[i]
    j <-- j + 1
    tabFinal[j] <-- tabInit[i] * tabInit[i]
FIN POUR: i <-- i + 1

Variante 2:

POUR i allant de 0 à n
    j <-- i * 2
    tabFinal[j] <-- tabInit[i]
    j <-- 2 * i + 1
    tabFinal[j] <-- tabInit[i] * tabInit[i]
FIN POUR: i <-- i + 1

Variante 3:

POUR j allant de 0 à n
    tabFinal[j] <-- tabInit[ j / 2]
    tabFinal[j + 1] <-- tabFinal[j] * tabFinal[j]
FIN POUR: j <-- j + 2

Rechercher la plus grande valeur

Nom du fichier attendu: tableau-11-plus-grand.js

Reprendre l’algorithme précédent et effectuer la recherche de la plus grande valeur dans le tableau résultat. Afficher cette valeur ainsi que son indice dans le tableau.

Tableaux multi-dimensionnels

Multi 1

Nom du fichier attendu: tableau-multi-1.js

Écrivez un algorithme remplissant un tableau de 6 lignes sur 13 colonnes, avec des zéros.

Vérification

Dans les exercices suivants, il est demandé de créer télécharger le code donné et de l’exécuter dans l’outil de programmation en pseudo-JS

Chaque fonction doit renvoyer un tableau. Par exemple:

function fonctionQuiRenvoieTableau(){
  let tableau = []
  tableau[0] = 1
  return tableau
}

Fonction genererTableau()

Écrire et tester (cf ci-dessous) la fonction genererTableau() qui initialise et renvoie le tableau créé à l’exercice 1.

Code de test: tableau-1-test.js

Fonction genererNotesMusique()

Écrire et tester (cf ci-dessous) la fonction genererNotesMusique() qui initialise et renvoie le tableau créé à l’exercice 2.

Code de test: tableau-2-test.js

Fonction genererVoyelles()

Écrire et tester (cf ci-dessous) la fonction genererNotesMusique() qui initialise et renvoie le tableau créé à l’exercice 3.

Code de test: tableau-3-test.js