Premiers pas csharp

Structure fondamentale en C#

Tout est dans une classe

En C#, toutes les fonctions (qu'on appelle alors méthodes) doivent être définies à l'intérieur d'une classe. Pour exécuter votre code, vous devez également inclure une méthode spéciale appelée Main qui servira de point d'entrée (votre "bac à sable" pour tester vos fonctions).

public class Program 
{ 
    // VOS FONCTIONS ICI
    // Le mot-clé "static" permet d'utiliser la fonction sans créer d'objet (comme une fonction mathématique simple)
    public static string Saluer(string nom) 
    { 
        return $"Bonjour, {nom}!"; 
    } 

    // VOTRE BAC À SABLE (Point d'entrée)
    public static void Main() 
    { 
        // C'est ici que vous testez vos fonctions
        Console.WriteLine(Program.Saluer("Alice")); 
    } 
}

Variables et Méthodes simples

Affichage avec Console.WriteLine()

Console.WriteLine("Hello World!");
string prenom = "Maya";
Console.WriteLine($"Bonjour {prenom}"); // Interpolation de chaîne

Demander à l'utilisateur

La méthode Console.ReadLine() retourne une chaîne. Il faut souvent convertir (ex: int.Parse()).

Niveau Intro

Exercice 1 — Message de bienvenue

Écrire une méthode static void AfficherBienvenue() qui affiche "Bienvenue en C# !" dans la console. Tester dans Main.
Niveau Intro

Exercice 2 — Présentation complète

Écrire une méthode static void SePresenter(string prenom, string ville) qui affiche "Je m'appelle [prenom] et j'habite [ville]".
Niveau Intro

Exercice 3 — Calcul d'âge futur

Écrire une méthode static int AgeDans10Ans(int ageActuel) qui retourne l'âge dans 10 ans. Tester en affichant le résultat.

Conditions

Structure if / else

if (age >= 18) { ... } else { ... }
Conditions

Exercice 1 — Le plus grand

Écrire une méthode static int Max(int a, int b) qui retourne le plus grand des deux nombres.
Conditions

Exercice 2 — Vérification de longueur

Écrire une méthode static bool EstMotLong(string mot) qui retourne true si le mot fait plus de 5 caractères, sinon false.
Conditions

Exercice 3 — Catégorie d'âge

Écrire une méthode static string CategorieAge(int age) qui retourne "Enfant" (<=12), "Ado" (<=17), "Adulte" (<=59) ou "Senior".
Conditions

Exercice 4 — Billet de train

Écrire une méthode static double CalculerPrixTrain(int age, double km) selon les règles : 0.20€/km. -50% si <12 ans, -30% si >=65 ans. -10€ si >200km.

Boucles

Boucles for et while

for (int i = 0; i < 10; i++) { ... }
Boucles

Exercice 1 — Compter jusqu'à N

Écrire une méthode static void CompterJusqua(int n) qui affiche les nombres de 1 à n.
Boucles

Exercice 2 — Table de multiplication

Écrire une méthode static void AfficherTable(int n) qui affiche la table de multiplication de n (de 1 à 10).
Boucles

Exercice 3 — Somme 1 à N

Écrire une méthode static int SommeJusqua(int n) qui calcule la somme des entiers de 1 à n.
Boucles

Exercice 4 — Compter voyelles

Écrire une méthode static int CompterVoyelles(string texte) qui retourne le nombre de voyelles.
Boucles

Exercice 5 — Inverser chaîne

Écrire une méthode static string Inverser(string texte) qui retourne le texte inversé.
Boucles

Exercice 6 — Palindrome

Écrire une méthode static bool EstPalindrome(string texte) qui vérifie si le texte est un palindrome.

Listes (List<T>)

Collections dynamiques : création, ajout, accès et parcours.

Manipuler une Liste

List<int> maListe = new List<int>();
maListe.Add(10);
Listes

Exercice 1 — Somme des éléments

Écrire une méthode static int Somme(List<int> nombres) qui retourne la somme des éléments.
Listes

Exercice 2 — Compter les pairs

Écrire une méthode static int CompterPairs(List<int> nombres) qui retourne le nombre d'éléments pairs.
Listes

Exercice 3 — Filtrer les grands nombres

Écrire une méthode static List<int> FiltrerSuperieurA(List<int> nombres, int seuil) qui retourne une nouvelle liste ne contenant que les nombres > seuil.
Listes

Exercice 4 — Concaténation

Écrire une méthode static List<int> Concatener(List<int> l1, List<int> l2) qui retourne une nouvelle liste contenant l1 suivie de l2.