Leçon 3

Les chaînes de caractères et les tableaux avec Processing

Dans le répertoire Processing créez un dossier cours3. Il contiendra tous les fichiers de cette leçon.

Les chaînes de caractères

Longueur d'une chaîne de caractères

Pour obtenir la longueur d'une chaîne (c'est-à-dire le nombre de caractères qui la composent, qu'on appelle également sa taille), il suffit de lui ajouter .length().
On obtient la longueur sous la forme d'une valeur entière.
Copiez le code du programme chaine ci-dessous.


Caractères et indice

Complétez le script précédent comme indiqué ci-dessous.


Dans une chaîne de caractères, chaque caractère est identifié par un numéro, appelé son indice. L'indice du premier caractère d'une chaîne est 0 et non 1.
Les caractères d'une chaîne sont donc numérotés de 0 à sa longueur -1.
Il est important de noter que toutes les opérations applicables aux chaînes de caractères ne modifient JAMAIS la chaîne initiale, mais renvoient de nouvelles chaînes. Une fois créée, une chaîne de caractères ne peut plus être modifiée. On dit qu'elle est immuable. On ne peut pas écrire mot[0]="k" pour changer le premier caractère de la chaîne mot, il faut créer une chaine mot1 vide (mot1="") et la construire en commençant par le caractère "k".
En ligne 6 on utilise la méthode .charAt(i) en écrivant c=mot.charAt(i);. la variable c récupère le caractère de mot situé en i.

Minuscules et majuscules

Complétez le script précédent comme indiqué ci-dessous.


toLowerCase() et toUpperCase() permettent respectivement de convertir une chaîne en minuscules et en majuscules.
Elles sont pratiques pour réaliser différents tests ou pour uniformiser une chaîne de caractères.

Code ASCII

L'American Standard Code for Information Interchange (Code américain normalisé pour l'échange d'information), plus connu sous l'acronyme ASCII ([askiː]) est une norme de codage de caractères en informatique.

Complétez le script précédent comme indiqué ci-dessous.


Vour remarquerez que les lettres majuscules de A à Z sont codées de 65 à 90. Ainsi le code ASCII de la lettre B est 66, de la lettre C est 67 ....etc

Exercice1

  1. Ecrivez le script ci-dessous et le tester.
  2. Modifier le script précédent pour ne faire apparaître qu'un seul caractère sur 2.
  3. Modifier le script précédent pour obtenir la même phrase mais sans les espaces.

Exercice 2

Ecrivez un programme voyelles.js qui affiche le nombre de voyelles contenue dans une phrase.

Exercice 3

Ecrivez un programme majuscule.js qui affiche le nombre de fois que l'on trouve une majuscule dans une phrase.

On pourra utiliser l'information suivante : les codes ASCII des majuscules qui sont compris dans l'intervalle [65,90].

Les tableaux

Création d'un tableau

Les informations contenues dans un tableau doivent être du même type : donc soit des caractères, soit des chiffres...
Copiez le code du programme tableaux ci-dessous.


Pour obtenir la longueur d'un tableau, il suffit de lui ajouter .length comme pour les chaînes de caractères mais sans les parenthèses.
En ligne 1 on déclare un tableau avec les deux crochets et on informe que les éléments du tableaux seront des chaînes de caractères.

On peut aussi créer un tableau vide puis le remplir.
Copiez le code du programme tableaux_vides ci-dessous.


En ligne1 on déclare un tableau qui pourra contenir 10 élémemts, ces éléments étant des chaînes de caractères.
En exécutant le programme vous remarquerez les deux cases vides de la fin signalé par le mot null.

Indice

Pour la suite les modifications demandées concerneront le programme tableaux.

Comme pour les chaînes de caractères le premier élément d'un tableau est à l'indice 0.
D'autre part pour désigner un élément du tableau on utilisera les crochets.
Complétez le programme tableaux en ajoutant la ligne 5.


Modification d'un élément du tableau

Contrairement aux chaînes de caractères qui sont immuables, les tableaux ne le sont pas. On peut modifier un élément du tableau.
Complétez le programme précédent en ajoutant les lignes 6 à 8.


Ajout ou supression d'un élément dans un tableau.

Complétez le programme en ajoutant les lignes 8 à 10 et exéxutez-le puis faire de même de la ligne 11 à 12.


Parcourir un tableau

Créez le programme traitement_tableaux dont le code est ci-dessous .


Ce programme lit chaque élément du tableau et l'affiche.

Chaînes de caractères et tableaux

L'instruction split(nom_de_la_chaine_de_caractères, delimitant) permet de changer une chaîne de caractères en tableau.
Créez le programme chaines_tableaux dont le code est ci-dessous .


Exercice1

Créez un programme "six" qui reprend le tableau prenoms. Ce programme affichera deux tabeaux issus du tabeau prenoms, un tableau inf_6 et un tableau sup_6, le premier contiendra les prénoms de moins de 6 caractères et le second de 6 ou plus. On donne la partie du script qui affichera la liste des prénoms dont la longueur est inférieure à 6.



Exercice 2

Ecrire un programme maximum qui :

  1. crée le tableau nombres = {32, 5, 12, 8, 3, 75, 2, 15},
  2. affiche le plus grand élément présent dans le tableau nombres

Exercice 3

Ecrire un programme parite qui :

  1. crée le tableau nombres = {32, 5, 12, 8, 3, 75, 2, 15},
  2. affiche deux nouveaux tableaux, pairs et impairs. Le premier contiendra seulement les nombres pairs du tableau nombres, et l’autre les nombres impairs.

On donne la partie du script qui affichera la liste des pairs.



Aide : Algorithme

Exercice 4 : la double boucle

Ecrire un programme voyelles qui affiche le nombre de voyelles contenues dans le tableau prenoms de l'exercice 1. Pour cela il faudra envisager deux boucles, une qui parcourt le tableau prenoms et l'autre qui lit les caracteres de chaque prenom de la liste prenoms.


Aide : Algorithme

Exercice 5

Ecrire un programme communs qui affiche un tableau communs contituté des éléments communs à deux tableaux, prenoms1 et prenoms2.


Aide : Algorithme