Le type string

Une ligne étoilée.

Écrire un programme affichant une chaîne de longueur 10, chaque caractère de la chaîne étant égal au caractère * : **********

Écrire ensuite une version permettant à l'utilisateur d'entrer le nombre d'étoiles qu'il veut afficher.

Une première solution.

Seconde solution.

Cette seconde méthode peut paraître inutilement plus compliquée. Mais son intérêt est bien sûr de laisser à l'utilisateur la possibilité de choisir le nombre d'étoiles. Testez :

On peut également utiliser repeat :

Ciel étoilé.

Écrire un programme qui affiche 20 lignes de 25 étoiles.

Première solution

Seconde solution

Troisième solution

Carré d'étoiles.

Écrire un programme qui :

  1. demande à l'utilisateur d'entrer une ligne d'étoiles,
  2. puis affiche un carré d'étoiles, c'est à dire affiche la ligne de l'utilisateur nb fois, où nb est le nombre d'étoiles dans la ligne entrée.

Par exemple, si l'utilisateur rentre ***, le programme devra afficher :

*** 
***
***

Première solution

Seconde solution

Mot étoilé.

Écrire un programme qui :

  1. demande à l'utilisateur d'entrer un mot,
  2. puis affiche ce mot en intercalant * entre chaque lettre du mot.

Par exemple, si l'utilisateur rentre javascript, le programme devra afficher : j*a*v*a*s*c*r*i*p*t

Première solution

Autre solution

Triangle étoilé.

Écrire un script qui, pour un entier n > 0 (paramètre variable), affiche un triangle d'étoiles, suivant le modèle des exemples ci-dessous.

Avec n=4 :

pyramide 4 étages

Avec n=7 :

pyramide 7 étages

Le triangle comporte donc n lignes, la première compte une étoile, chaque ligne compte deux étoiles de plus que la précédente.

Notons u(j) le nombre d'étoiles de la ligne j :
le triangle comporte n lignes, la première compte une étoile, chaque ligne compte deux étoiles de plus que la précédente.

On en déduit facilement l'expression de u(j) : u(j)=2j-1.

La dernière ligne compte donc u(n)=2n-1 étoiles. Chacune des lignes précédentes compte donc un nombre total de blancs (espaces) égal à (2n-1)-(2j-1)=2(n-j).

La ligne j (1≤ j ≤ n) est donc ainsi constituée :

  1. n-j espaces
  2. puis 2j-1 étoiles
  3. puis n-j espaces.

On rappelle qu'on obtient en html un espace insécable par le code espace insécable.

En testant, on constate un décalage : l'espace insécable n'a pas tout à fait la même largeur que le caractère * et les étoiles centrales de chaque ligne sont de ce fait non alignées sur une verticale.

Une autre façon de procéder est de remplacer les blancs par des étoiles qui auront la même couleur que le fond et seront donc, de ce fait, invisibles. Ainsi, comme on le constate ci-dessous, les étoiles du centre de chaque ligne sont parfaitement alignées sur une verticale.