⌂ Programmation
Fiche 3 sur 13

Afficher du texte

Deux commandes, et de quoi présenter proprement vos résultats.

Après cette fiche, vous saurez :

1WriteLine : écrire et aller à la ligne

C'est la commande que vous avez déjà utilisée.

Console.WriteLine("Bonjour");
Console.WriteLine("tout le monde");
Ce que l'ordinateur affiche
Bonjour
tout le monde

Chaque WriteLine écrit son texte, puis descend d'une ligne.

Le mot anglais Line veut dire « ligne ». WriteLine = « écris, puis va à la ligne ».

2Write : écrire sans aller à la ligne

La même commande, mais sans le mot Line.

Console.Write("Bonjour");
Console.Write("tout le monde");
Ce que l'ordinateur affiche
Bonjourtout le monde

Cette fois, tout reste sur la même ligne. Les deux textes sont même collés, parce qu'on n'a pas mis d'espace.

CommandeCe qu'elle fait
Console.WriteLine(...)Écrit, puis descend d'une ligne.
Console.Write(...)Écrit, et reste sur la même ligne.

À retenir

Retenez-le comme ça : Line = ligne suivante.

Pas de Line ? On reste sur place.

3À quoi sert Write ?

Surtout à poser une question. Vous verrez à la fiche suivante que la réponse de l'utilisateur s'écrit là où le curseur se trouve.

Avec WriteLine, la réponse va en dessous :

Console.WriteLine("Votre prénom : ");
Ce que l'ordinateur affiche
Votre prénom : 
Sofia

Avec Write, elle reste à côté de la question. C'est bien plus agréable :

Console.Write("Votre prénom : ");
Ce que l'ordinateur affiche
Votre prénom : Sofia

4Afficher une ligne vide

Pour aérer votre affichage, utilisez un WriteLine avec des parenthèses vides.

Console.WriteLine("Menu du jour");
Console.WriteLine();
Console.WriteLine("Soupe");
Console.WriteLine("Poulet");
Ce que l'ordinateur affiche
Menu du jour

Soupe
Poulet

Rien entre les parenthèses = rien à écrire, mais on descend quand même d'une ligne. D'où la ligne vide.

5Un raccourci pour passer à la ligne

Jusqu'ici, pour afficher deux lignes, vous avez écrit deux ordres :

Console.WriteLine("Bonjour");
Console.WriteLine("Comment allez-vous ?");
Ce que l'ordinateur affiche
Bonjour
Comment allez-vous ?

Il existe un raccourci. À l'intérieur du texte, on peut écrire \n. L'ordinateur ne l'affiche pas : il passe à la ligne à cet endroit.

Console.WriteLine("Bonjour\nComment allez-vous ?");
Ce que l'ordinateur affiche
Bonjour
Comment allez-vous ?

Un seul ordre, deux lignes affichées. Le \n se lit « nouvelle ligne » : le n vient de l'anglais new line.

Deux détails qui comptent

DétailExplication
La barre est inverséeC'est \, celle qui penche vers la gauche. Pas /. Sur un clavier belge : AltGr + la touche < >, juste à côté du Shift de gauche.
Le n est en minuscule\n fonctionne, \N ne fonctionne pas. Les majuscules comptent, ici aussi.

Pour laisser une ligne vide

Il suffit d'en mettre deux à la suite.

Console.WriteLine("Menu du jour\n\nSoupe");
Ce que l'ordinateur affiche
Menu du jour

Soupe

À retenir

Vous avez maintenant trois façons de passer à la ligne. Toutes sont correctes.

Au début, préférez plusieurs WriteLine : c'est plus long à écrire, mais beaucoup plus facile à relire. Gardez le \n pour les cas où il vous fait vraiment gagner du temps.

6Les commentaires

Un commentaire est une note que vous écrivez pour vous-même. L'ordinateur ne la lit pas et ne l'affiche pas.

On écrit deux barres obliques, puis son texte :

// Ce programme affiche le menu du restaurant
Console.WriteLine("Menu du jour");

Console.WriteLine("Soupe");   // l'entrée
Ce que l'ordinateur affiche
Menu du jour
Soupe

Les commentaires n'apparaissent nulle part dans le résultat.

À retenir

À quoi ça sert ? À vous rappeler ce que fait votre code quand vous le relirez dans trois semaines. Croyez-en l'expérience : vous aurez oublié.

Autre usage bien pratique : mettre // devant une ligne pour la désactiver sans l'effacer. Très utile pour tester.

7L'ordinogramme du menu

Reprenons le dessin de la fiche 2, avec cette fois plusieurs affichages.

Rappel des deux formes : l'ovale pour le début et la fin, le trapèze pour afficher quelque chose.

Début "Menu du jour" "Soupe" "Poulet" Fin

Et le même programme en C# :

Console.WriteLine("Menu du jour");
Console.WriteLine("Soupe");
Console.WriteLine("Poulet");

Comptez : trois trapèzes dans le dessin, trois lignes dans le code. Chaque Console.WriteLine correspond à un trapèze.

Les flèches descendent toutes vers le bas. C'est exactement ce que fait l'ordinateur : il exécute les trois ordres l'un après l'autre, dans cet ordre.

À retenir

Une remarque utile. Un \n à l'intérieur d'un texte ne crée pas un nouveau trapèze.

Console.WriteLine("Soupe\nPoulet");

Ici, il n'y a qu'un seul ordre, donc un seul trapèze — même si deux lignes s'affichent à l'écran.

Le dessin représente les ordres donnés, pas les lignes affichées.

Sur votre feuille, dessinez à main levée. Les formes ne doivent pas être parfaites : il suffit qu'on reconnaisse un ovale d'un trapèze, et que les flèches montrent le chemin.

Attention

Les guillemets doivent être droits : "

Si vous copiez du texte depuis Word ou depuis une page web, vous risquez d'attraper des guillemets courbes. Ils se ressemblent à l'écran, mais le C# les refuse.

En cas de doute : effacez-les et retapez-les au clavier.

→Exercices

1Write ou WriteLine ?Recopier

Recopiez ce programme et lancez-le. Avant de le lancer, essayez de deviner ce qui va s'afficher.

Console.Write("Un");
Console.Write("Deux");
Console.WriteLine("Trois");
Console.WriteLine("Quatre");

Solution

Ce que l'ordinateur affiche
UnDeuxTrois
Quatre

Les trois premiers mots sont sur la même ligne, parce que les deux premiers utilisent Write.

C'est le troisième, avec WriteLine, qui provoque le passage à la ligne suivante. « Quatre » se retrouve donc tout seul en dessous.

2Aérer le menuModifier

Recopiez ce programme, puis modifiez-le pour qu'il affiche une ligne vide entre le titre et les plats, et une autre entre les plats et le prix.

Console.WriteLine("=== CHEZ MARIE ===");
Console.WriteLine("Soupe");
Console.WriteLine("Poulet");
Console.WriteLine("Total : 18 euros");

Solution

Console.WriteLine("=== CHEZ MARIE ===");
Console.WriteLine();
Console.WriteLine("Soupe");
Console.WriteLine("Poulet");
Console.WriteLine();
Console.WriteLine("Total : 18 euros");
Ce que l'ordinateur affiche
=== CHEZ MARIE ===

Soupe
Poulet

Total : 18 euros

Deux Console.WriteLine(); vides ajoutés, aux bons endroits.

3Un ticket de caisseCréer

Écrivez un programme qui affiche ce ticket. Ajoutez un commentaire en haut du programme pour dire ce qu'il fait.

Ce que l'ordinateur affiche
--- BOULANGERIE ---

Pain          2 euros
Croissant     1 euro

Total         3 euros

Merci !

Solution

// Ce programme affiche le ticket de la boulangerie

Console.WriteLine("--- BOULANGERIE ---");
Console.WriteLine();

Console.WriteLine("Pain          2 euros");
Console.WriteLine("Croissant     1 euro");
Console.WriteLine();

Console.WriteLine("Total         3 euros");
Console.WriteLine();

Console.WriteLine("Merci !");

Les espaces à l'intérieur des guillemets sont conservés tels quels. C'est ce qui permet d'aligner les prix : il suffit d'en mettre le bon nombre.

Ce n'est pas la méthode la plus élégante, mais elle fonctionne parfaitement, et c'est la seule que vous connaissez pour l'instant.

Je sais faire

Une case qui coince ? Relisez la partie concernée avant de passer à la fiche suivante.

← Fiche 2 Fiche 4 : Les variables →