Exercice - Mettre en forme la sortie en utilisant des séquences de caractères d’échappement

Effectué

Dans cet exercice, vous allez modifier la sortie de console de l’exercice précédent pour obtenir la mise en forme spécifiée.

Mettre en forme la sortie de console

Dans le cadre de cette tâche, vous allez mettre à jour votre code pour affiner la mise en forme de la sortie. Pour commencer, vous allez inclure le nom de l’étudiant et ajouter une ligne d’en-tête qui inclut les étiquettes de colonne. Après cela, vous utiliserez des séquences de caractères d’échappement pour ajouter un remplissage entre les colonnes d’informations.

  1. Dans l’éditeur .NET, recherchez les instructions Console.WriteLine() utilisées pour afficher les informations de cours de l’étudiant.

  2. Créez une ligne de code vide au-dessus des instructions Console.WriteLine().

  3. Dans la ligne de code vide que vous avez créée, pour ajouter le nom de l’étudiant, entrez le code suivant :

    Console.WriteLine($"Student: {studentName}\n");
    
    

    Notez que vous devez inclure \n à la fin du texte. Dans le module « Effectuer une mise en forme de chaîne de base en C# », vous avez appris que la séquence de caractères d’échappement \n entraîne la création d’une ligne. L’emplacement de la séquence d’échappement est important. Dans le cas présent, \n se trouve à la fin des informations que vous souhaitez écrire dans la console. La nouvelle ligne sera donc ajoutée après l’affichage de « Student Name ».

  4. Créez une ligne de code vide après l’instruction Console.WriteLine() précédente.

  5. Dans la ligne de code vide que vous avez créée, pour ajouter un en-tête pour les informations de cours, entrez le code suivant :

    Console.WriteLine("Course\t\t\t\tGrade\tCredit Hours");
    
    

    Notez que vous ajoutez trois tabulations après le nom du cours. L’ajout de taquets de tabulation offre un espace supplémentaire pour les noms de cours plus longs.

  6. Pour mettre en forme votre sortie en colonnes de texte alignées, remplacez les espaces entre les mots par la séquence d’échappement \t comme suit :

    Console.WriteLine($"{course1Name}\t\t\t{course1Grade}\t\t{course1Credit}");
    Console.WriteLine($"{course2Name}\t\t\t{course2Grade}\t\t{course2Credit}");
    Console.WriteLine($"{course3Name}\t\t\t{course3Grade}\t\t{course3Credit}");
    Console.WriteLine($"{course4Name}\t{course4Grade}\t\t{course4Credit}");
    Console.WriteLine($"{course5Name}\t\t{course5Grade}\t\t{course5Credit}");
    
    

    La séquence d’échappement \t insère un taquet de tabulation entre les éléments de texte. Ces taquets de tabulation doivent générer des colonnes d’informations alignées à gauche.

    Notez que vous réduisez le nombre de tabulations pour course4Name et course5Name. Cette différence est due au fait que ces noms de cours sont plus longs que les autres. À l’étape précédente, vous avez ajouté des tabulations après la colonne de nom de cours garder un espacement cohérent pour les noms de cours longs et courts.

  7. Pour ajouter un remplissage à la sortie de résultat de la MPC finale, mettez à jour votre code comme suit :

    Console.WriteLine($"\nFinal GPA:\t\t\t {leadingDigit}.{firstDigit}{secondDigit}");
    
    

Vérifier votre travail

Dans le cadre de cette tâche, vous allez exécuter le code et vérifier que la sortie est correcte.

  1. Vérifiez que votre code est similaire à ce qui suit :

    string studentName = "Sophia Johnson";
    string course1Name = "English 101";
    string course2Name = "Algebra 101";
    string course3Name = "Biology 101";
    string course4Name = "Computer Science I";
    string course5Name = "Psychology 101";
    
    int course1Credit = 3;
    int course2Credit = 3;
    int course3Credit = 4;
    int course4Credit = 4;
    int course5Credit = 3;
    
    int gradeA = 4;
    int gradeB = 3;
    
    int course1Grade = gradeA;
    int course2Grade = gradeB;
    int course3Grade = gradeB;
    int course4Grade = gradeB;
    int course5Grade = gradeA;
    
    int totalCreditHours = 0;
    totalCreditHours += course1Credit;
    totalCreditHours += course2Credit;
    totalCreditHours += course3Credit;
    totalCreditHours += course4Credit;
    totalCreditHours += course5Credit;
    
    int totalGradePoints = 0;
    totalGradePoints += course1Credit * course1Grade;
    totalGradePoints += course2Credit * course2Grade;
    totalGradePoints += course3Credit * course3Grade;
    totalGradePoints += course4Credit * course4Grade;
    totalGradePoints += course5Credit * course5Grade;
    
    decimal gradePointAverage = (decimal) totalGradePoints/totalCreditHours;
    
    int leadingDigit = (int) gradePointAverage;
    int firstDigit = (int) (gradePointAverage * 10 ) % 10;
    int secondDigit = (int) (gradePointAverage * 100 ) % 10;
    
    Console.WriteLine($"Student: {studentName}\n");
    Console.WriteLine("Course\t\t\t\tGrade\tCredit Hours");
    
    Console.WriteLine($"{course1Name}\t\t\t{course1Grade}\t\t{course1Credit}");
    Console.WriteLine($"{course2Name}\t\t\t{course2Grade}\t\t{course2Credit}");
    Console.WriteLine($"{course3Name}\t\t\t{course3Grade}\t\t{course3Credit}");
    Console.WriteLine($"{course4Name}\t{course4Grade}\t\t{course4Credit}");
    Console.WriteLine($"{course5Name}\t\t{course5Grade}\t\t{course5Credit}");
    
    Console.WriteLine($"\nFinal GPA:\t\t\t {leadingDigit}.{firstDigit}{secondDigit}");
    
  2. Pour exécuter votre code et afficher la sortie mise en forme, sélectionnez Exécuter.

  3. Pour vérifier que votre code fonctionne comme prévu, comparez la sortie de votre application avec la sortie suivante :

    Student: Sophia Johnson
    
    Course              Grade   Credit Hours	
    English 101         4       3
    Algebra 101         3       3
    Biology 101         3       4
    Computer Science I  3       4
    Psychology 101      4       3
    
    Final GPA:          3.35
    

    Si votre code affiche des résultats différents, vous devez le passer en revue afin de trouver votre erreur et d’effectuer des mises à jour. Réexécutez le code pour voir si vous avez résolu le problème. Continuez à mettre à jour et à exécuter votre code jusqu’à ce qu’il produise les résultats attendus.