Skip to content

Projet.cs #4

Description

@saadabdalhalime-lang

using System;
using System.Globalization;

namespace StudentGradingSystem
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("=== Student Grade Report ===");

        Console.Write("Enter student name: ");
        string name = Console.ReadLine();

        double score1 = ReadScore("Subject 1");
        double score2 = ReadScore("Subject 2");
        double score3 = ReadScore("Subject 3");

        double average = (score1 + score2 + score3) / 3;

        string grade;
        string message;

        if (average >= 97) {
            grade = "A+";
            message = "Outstanding!";
        }
        else if (average >= 93) {
            grade = "A";
            message = "Excellent!";
        }
        else if (average >= 89) {
            grade = "A-";
            message = "Very Good!";
        }
        else if (average >= 84) {
            grade = "B+";
            message = "Good job!";
        }
        else if (average >= 80) {
            grade = "B";
            message = "Good.";
        }
        else if (average >= 76) {
            grade = "B-";
            message = "Above Average.";
        }
        else if (average >= 73) {
            grade = "C+";
            message = "Average.";
        }
        else if (average >= 70) {
            grade = "C";
            message = "Acceptable.";
        }
        else if (average >= 67) {
            grade = "C-";
            message = "Below Average.";
        }
        else if (average >= 64) {
            grade = "D+";
            message = "Poor.";
        }
        else if (average >= 60) {
            grade = "D";
            message = "Very Poor.";
        }
        else {
            grade = "F";
            message = "You need to study more.";
        }

        Console.WriteLine("\n---------------------------");
        Console.WriteLine("Student: " + name);
        Console.WriteLine("Average Score: " + average.ToString("0.00") + "%");
        Console.WriteLine("Grade: " + grade);
        Console.WriteLine("Message: " + message);

        if (grade == "F") {
            Console.WriteLine("Please see your teacher for extra help.");
        }

        Console.WriteLine("\nPress any key to exit...");
        Console.ReadKey();
    }

    static double ReadScore(string subject)
    {
        double score;
        Console.Write($"Enter score for {subject}: ");

        while (!double.TryParse(Console.ReadLine(), NumberStyles.Any, CultureInfo.InvariantCulture, out score) 
               || score < 0 || score > 100)
        {
            Console.Write("Invalid input, enter a number between 0 and 100: ");
        }

        return score;
    }
}

}

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions