Aller au contenu

Exercices C# - Les Bases

🎯 Exercices C# - Les Bases

Découvrez les fondamentaux du C# à travers des exercices pratiques sur les variables, les types de données et les opérateurs. Ces exercices vous permettront de maîtriser les concepts essentiels pour bien débuter en programmation C#.

🌱 Introduction

🎯 Premier programme C#

Créez votre premier programme C# qui affiche "Hello, C#!" dans la console.

Utilisez la méthode Console.WriteLine() pour afficher le message.

using System;

class Program
{
    static void Main()
    {
        Console.WriteLine("Hello, C#!");
    }
}
🌱 Introduction

🔢 Types de données

Identifiez les types C# correspondant aux valeurs suivantes :

  • 42
  • 3.14
  • "Bonjour"
  • true
  • 'A'
// 42 → int (entier)
// 3.14 → double (nombre décimal)
// "Bonjour" → string (chaîne de caractères)
// true → bool (booléen)
// 'A' → char (caractère)
🌱 Introduction

📝 Déclaration de variables

Déclarez et initialisez les variables suivantes :

  • Une variable age de type entier avec la valeur 25
  • Une variable nom de type string avec votre prénom
  • Une variable estEtudiant de type booléen avec la valeur true
int age = 25;
string nom = "Alice";
bool estEtudiant = true;
⭐ Facile

🔄 Échange de variables

Écrivez un programme qui échange les valeurs de deux variables entières.

Déclarez deux variables a = 10 et b = 20, puis échangez leurs valeurs et affichez le résultat.

using System;

class Program
{
    static void Main()
    {
        int a = 10;
        int b = 20;

        Console.WriteLine($"Avant échange: a = {a}, b = {b}");

        // Échange avec variable temporaire
        int temp = a;
        a = b;
        b = temp;

        Console.WriteLine($"Après échange: a = {a}, b = {b}");
    }
}
⭐ Facile

🎂 Calcul d'âge

Créez un programme qui calcule l'âge d'une personne.

Déclarez une variable pour l'année de naissance (ex: 1995) et calculez l'âge en 2024.

using System;

class Program
{
    static void Main()
    {
        int anneeNaissance = 1995;
        int anneeActuelle = 2024;
        int age = anneeActuelle - anneeNaissance;

        Console.WriteLine($"Année de naissance: {anneeNaissance}");
        Console.WriteLine($"Âge en {anneeActuelle}: {age} ans");
    }
}
🔥 Intermédiaire

💰 Conversion de devises

Créez un convertisseur Euro vers Dollar.

Utilisez un taux de change de 1.10 (1€ = 1.10$). Convertissez 50€ en dollars et affichez le résultat formaté.

using System;

class Program
{
    static void Main()
    {
        double euros = 50.0;
        double tauxChange = 1.10;
        double dollars = euros * tauxChange;

        Console.WriteLine($"{euros:F2}€ = {dollars:F2}$");
        Console.WriteLine($"Taux de change utilisé: {tauxChange}");
    }
}
⭐ Facile

🧮 Calculatrice simple

Créez une calculatrice qui effectue les 4 opérations de base.

Utilisez deux nombres (ex: 15 et 4) et affichez le résultat de l'addition, soustraction, multiplication et division.

using System;

class Program
{
    static void Main()
    {
        int a = 15;
        int b = 4;

        Console.WriteLine($"Nombres: {a} et {b}");
        Console.WriteLine($"Addition: {a} + {b} = {a + b}");
        Console.WriteLine($"Soustraction: {a} - {b} = {a - b}");
        Console.WriteLine($"Multiplication: {a} * {b} = {a * b}");
        Console.WriteLine($"Division: {a} / {b} = {(double)a / b:F2}");
        Console.WriteLine($"Modulo: {a} % {b} = {a % b}");
    }
}
🔥 Intermédiaire

🔢 Opérateurs logiques

Testez les opérateurs logiques avec des variables booléennes.

Créez deux variables booléennes et testez les opérateurs &&, || et !.

using System;

class Program
{
    static void Main()
    {
        bool a = true;
        bool b = false;

        Console.WriteLine($"a = {a}, b = {b}");
        Console.WriteLine($"a && b = {a && b}");  // ET logique
        Console.WriteLine($"a || b = {a || b}");  // OU logique
        Console.WriteLine($"!a = {!a}");         // NON logique
        Console.WriteLine($"!b = {!b}");
        Console.WriteLine($"a && !b = {a && !b}");
    }
}
🔥 Intermédiaire

📊 Comparaisons

Comparez deux nombres avec tous les opérateurs de comparaison.

Utilisez les nombres 10 et 15, testez ==, !=, <, >, <=, >=.

using System;

class Program
{
    static void Main()
    {
        int x = 10;
        int y = 15;

        Console.WriteLine($"x = {x}, y = {y}");
        Console.WriteLine($"x == y : {x == y}");  // Égal
        Console.WriteLine($"x != y : {x != y}");  // Différent
        Console.WriteLine($"x < y  : {x < y}");   // Inférieur
        Console.WriteLine($"x > y  : {x > y}");   // Supérieur
        Console.WriteLine($"x <= y : {x <= y}");  // Inférieur ou égal
        Console.WriteLine($"x >= y : {x >= y}");  // Supérieur ou égal
    }
}
🚀 Difficile

🎯 Calculateur d'IMC

Créez un calculateur d'Indice de Masse Corporelle (IMC).

Formule: IMC = poids (kg) / (taille (m))²

Utilisez poids = 70kg et taille = 1.75m. Affichez l'IMC avec 2 décimales et une interprétation simple.

using System;

class Program
{
    static void Main()
    {
        double poids = 70.0;  // kg
        double taille = 1.75; // m

        double imc = poids / (taille * taille);

        Console.WriteLine($"Poids: {poids} kg");
        Console.WriteLine($"Taille: {taille} m");
        Console.WriteLine($"IMC: {imc:F2}");

        // Interprétation simple
        string interpretation;
        if (imc < 18.5)
            interpretation = "Insuffisance pondérale";
        else if (imc < 25)
            interpretation = "Poids normal";
        else if (imc < 30)
            interpretation = "Surpoids";
        else
            interpretation = "Obésité";

        Console.WriteLine($"Interprétation: {interpretation}");
    }
}
🚀 Difficile

⏰ Convertisseur de temps

Convertissez un nombre de secondes en heures, minutes et secondes.

Exemple: 3665 secondes = 1 heure, 1 minute et 5 secondes.

Utilisez les opérateurs de division entière et modulo.

using System;

class Program
{
    static void Main()
    {
        int totalSecondes = 3665;

        int heures = totalSecondes / 3600;
        int minutes = (totalSecondes % 3600) / 60;
        int secondes = totalSecondes % 60;

        Console.WriteLine($"Temps total: {totalSecondes} secondes");
        Console.WriteLine($"Conversion: {heures}h {minutes}m {secondes}s");

        // Version avec formatage conditionnel
        string resultat = "";
        if (heures > 0) resultat += $"{heures}h ";
        if (minutes > 0) resultat += $"{minutes}m ";
        resultat += $"{secondes}s";

        Console.WriteLine($"Format compact: {resultat}");
    }
}
🚀 Difficile

🎲 Générateur de nombres

Créez un programme qui génère et analyse des nombres aléatoires.

Générez 3 nombres aléatoires entre 1 et 100, calculez leur somme, moyenne, et trouvez le plus grand.

using System;

class Program
{
    static void Main()
    {
        Random random = new Random();

        int nombre1 = random.Next(1, 101);  // 1 à 100
        int nombre2 = random.Next(1, 101);
        int nombre3 = random.Next(1, 101);

        Console.WriteLine($"Nombres générés: {nombre1}, {nombre2}, {nombre3}");

        int somme = nombre1 + nombre2 + nombre3;
        double moyenne = somme / 3.0;
        int maximum = Math.Max(Math.Max(nombre1, nombre2), nombre3);

        Console.WriteLine($"Somme: {somme}");
        Console.WriteLine($"Moyenne: {moyenne:F2}");
        Console.WriteLine($"Maximum: {maximum}");

        // Bonus: vérifier si tous sont pairs
        bool tousPairs = (nombre1 % 2 == 0) && (nombre2 % 2 == 0) && (nombre3 % 2 == 0);
        Console.WriteLine($"Tous pairs: {tousPairs}");
    }
}