I am very new to C# and while loops. Does anyone know how to stop it? It keeps printing the first if-statement. Here is the code:
const int Year = 400; const int LeapYear = 4; const int NoLeapYear = 100; int input = 0; input = int.Parse(Console.ReadLine()); while (input != 0) { Console.WriteLine("Enter a number: "); if (input > 0 && input % LeapYear == 0 || input % Year == 0) { Console.WriteLine($"{input} is a leap year."); } if (input > 0 && input % NoLeapYear != 0) { Console.WriteLine($"{input} is not a leap year."); } if (input < 0) { Console.WriteLine("Year must be positive!"); } if (input == 0) { Console.WriteLine("End of program"); } }
input != 0means it will run until(while) the input is not zero. You also have to put theinput = int.Parse(Console.ReadLine());line inside the while loop.break;after the 'end of program' printout. Make it ado/whileloop, and moveinput = int.Parse(...)code inside the loop.