-4
votes

Remplacer les instructions if number par du texte

J'essaie de terminer cette tâche où si un entier est divisible par 2,3 et 7, il remplace les nombres suivants (25-50) par "BuzzLightYear"

J'ai les numéros répertoriés correctement, mais lorsque j'exécute le programme, il imprime le texte avec le numéro lorsque je veux juste le texte au lieu du numéro.

Voici mon code:

int variable = 25;

while (variable <= 50)
{
    Console.WriteLine(variable + "\n");
    ++variable;
    if (variable % 2 == 0 && variable % 3 == 0 && variable % 7 == 0)
    {
        Console.Write("BuzzLightYear");

    }

}
Console.ReadKey();


2 commentaires

utilisez simplement la condition if et n'imprimez pas Console.WriteLine (variable + "\ n");


Console.WriteLine(variable + "\n"); va toujours imprimer la variable. Vous avez besoin d'un else


3 Réponses :


0
votes
    int variable = 25;
    
            while (variable <= 50)
            {
                
                if (variable % 2 == 0 && variable % 3 == 0 && variable % 7 == 0)
                {
                    Console.Write("BuzzLightYear");
    
                }
               else{
                       Console.WriteLine(variable + "\n");
                 }
                 ++variable;
            }
                Console.ReadKey();

0 commentaires

0
votes
int variable = 25;

while (variable <= 50)
{
    if (variable % 2 == 0 && variable % 3 == 0 && variable % 7 == 0)
    {
        Console.Write("BuzzLightYear\n\n");
    }
    else
    {
        Console.WriteLine(variable + "\n");
    }
    ++variable;
}
Console.ReadKey();

0 commentaires

0
votes

Le problème est que vous imprimez toujours le numéro. Mettez simplement cela dans un else place.

Mais chaque fois que vous avez besoin d'un nombre défini d'itérations, une boucle for est généralement meilleure car la déclaration, la condition et l'incrément de variable de boucle sont tous au même endroit:

for (int variable = 25; variable <= 50; variable++)
{
    if (variable % 2 == 0 && variable % 3 == 0 && variable % 7 == 0)
    {
        Console.WriteLine("BuzzLightYear");
    }
    else
    {
        Console.WriteLine(variable);
    }
}

Console.ReadKey();


0 commentaires