Skip to content

Solutions possibles aux exercices de la semaine 1

static void exercice1()
{
    // On a besoin de la largeur et de la longueur du rectangle
    // et de 2 autres variables pour leur assigner les résultats
    int largeur = 0;
    int longueur = 0;
    int perimetre = 0;
    int aire = 0;

    // Saisie de la largeur et de la longueur
    Console.WriteLine("Largeur : ");
    int.TryParse(Console.ReadLine(), out largeur);

    Console.WriteLine("Longueur : ");
    int.TryParse(Console.ReadLine(), out longueur);

    // Calcul de l'aire et du périmètre
    perimetre = (largeur + longueur) * 2;
    aire = largeur * longueur;

    // Affichage des résultats
    Console.WriteLine("Périmètre : " + perimetre);
    Console.WriteLine("Aire : " + aire);
}
static void exercice2()
{
    // On a besoin de savoir combien de bitcoins l'utilisateur possède
    // Une variable pour le taux de conversion
    // Une variable pour lui assigner le résultat de la conversion
    double bitcoin = 0;
    double tauxEchange = 62315.32;
    double valeurDollar = 0;

    // Saisie du nombre de bitcoins
    Console.WriteLine("Combien de Bitcoins? : ");
    double.TryParse(Console.ReadLine(), out bitcoin);

    // Calcul de la valeur en $ CAD
    valeurDollar = bitcoin * tauxEchange;

    // Affichage du résultat
    Console.WriteLine("Vous avez : " + valeurDollar + "$ CAD en Bitcoins");
}
static void exercice3()
{
    // On a besoin de variables pour 
    // les heures travaillées
    // le salaire horaire
    // le salaire brut annuel
    double heuresSemaine = 0;
    double salaireHoraire = 0;
    double salaireBrutAnnuel = 0;

    // Saisie des heures et du salaire
    Console.WriteLine("Heures travaillées par semaine : ");
    double.TryParse(Console.ReadLine(), out heuresSemaine);

    Console.WriteLine("Salaire horaire : ");
    double.TryParse(Console.ReadLine(), out salaireHoraire);

    // Calcul du salaire annuel
    salaireBrutAnnuel = heuresSemaine * salaireHoraire * 52;

    // Affichage du salaire brut annuel
    Console.WriteLine("Salaire brut annuel : " + salaireBrutAnnuel + "$");
}
static void exercice4()
{
    // 3 variables, 1 pour chaque nombre et 1 variable temporaire pour ne pas perdre de valeur
    int a = 0;
    int b = 0;
    int temp = 0;

    // Saisie
    Console.WriteLine("Variable a : ");
    int.TryParse(Console.ReadLine(), out a);

    Console.WriteLine("Variable b : ");
    int.TryParse(Console.ReadLine(), out b);

    // Échange
    temp = a;
    a = b;
    b = temp;

    // Affichage
    Console.WriteLine("Après échange. a = " + a + " :: b = " + b);
}
static void exercice5()
{
    // Variables pour les 2 nombres 
    int nombre1 = 0;
    int nombre2 = 0;

    // Saisie des nombres
    Console.WriteLine("Entrer le 1er nombre : ");
    int.TryParse(Console.ReadLine(), out nombre1);

    Console.WriteLine("Entrer le 2ème nombre : ");
    int.TryParse(Console.ReadLine(), out nombre2);

    // Comparaison avec test d'égalité supplémentaire
    // Affichage dans le bloc d'instructions directement

    // Si le nombre 1 est plus grand, afficher ce nombre
    if (nombre1 > nombre2)
    {
        Console.WriteLine("Le nombre 1 : " + nombre1 + " est plus grand que le deuxième : " + nombre2);
    }
    // Sinon si le nombre 2 est plus grand, afficher ce nombre
    else if (nombre2 > nombre1)
    {
        Console.WriteLine("Le nombre 2 : " + nombre2 + " est plus grand que le premier : " + nombre1);
    }
    // Sinon ils sont égaux
    else
    {
        Console.WriteLine("Les 2 nombres sont égaux : " + nombre1);
    }
}
static void exercice6()
{
    // Variables pour les statistiques et le type
    double force = 0;
    double agilite = 0;
    string type = "feu";

    // Saisie du type
    Console.WriteLine("Type feu ou eau? : ");
    type = Console.ReadLine();

    // Calcul des stats finales selon le type
    // On pourrait vérifier que l'utilisateur entre un des bons choix avec else if
    if (type == "feu")
    {
        force = force * 1.1;
        agilite = agilite * 0.85;
    }
    else
    {
        force = force * 0.9;
        agilite = agilite * 1.15;
    }

    // Affichage des stats finales
    Console.WriteLine("Votre type : " + type + ". Agilite : " + agilite + "  :: Force : " + force);
}
static void exercice7()
{
    // 3 variables : base, exposant, résultat
    // on prend le nom "nombre" pour la base pcq le mot base est une instruction en C#
    int nombre = 0;
    int exposant = 0;
    int resultat = 0;

    // Saisie des valeurs à la console
    Console.WriteLine("Entrer le nombre : ");
    int.TryParse(Console.ReadLine(), out nombre);

    Console.WriteLine("Entrer l'exposant : ");
    int.TryParse(Console.ReadLine(), out exposant);

    // Déterminer et afficher le résultat
    if (exposant < 0)
    {
        Console.WriteLine("Je ne peux pas traiter les exposants négatifs");
    }
    else if (exposant == 0)
    {
        Console.WriteLine("Résultat : 1");
    }
    else if (exposant == 1)
    {
        resultat = nombre;
        Console.WriteLine("Résultat : " + resultat);
    }
    else if (exposant == 2)
    {
        resultat = nombre * nombre;
        Console.WriteLine("Résultat : " + resultat);
    }
    else if (exposant == 3)
    {
        resultat = nombre * nombre * nombre;
        Console.WriteLine("Résultat : " + resultat);
    }
    else 
    {
        Console.WriteLine("Attends un peu, je vais voir les boucles la semaine prochaine");
    }
}