Моя программа должна рассчитать мили за галлон для поездки.Пока цикл не прекращается
Программа работает нормально, пока я не попытаюсь выйти, когда я буду внутри цикла. Он должен выйти, когда пользователь вводит в «quit» в любой точке трех входов, но он просто переходит к следующему входу. Даже когда я набираю quit во всех трех входах, он просто падает.
Что я пробовал:
- Typing бросить курить во всех трех входов
- Используя только 1 условие цикла вместо или три
- Ввод strBeginningOdometerReading.ToUpper() = 1-10000000 !
- Изменение всех || к & &
- изменяющемся QUIT в строку переменной
using System;
namespace MPG
{
class Program
{
static void Main()
{
//Declare the variables
string strBeginningOdometerReading, strEndingOdometerReading, strNumberOfGallons;
double dblBeginningOdometerReading, dblEndingOdometerReading, dblNumberOfGallons, dblMilesPerGallon, dblMilesTravelled;
//Priming prompt & read
Console.Write("Enter the beginning odometer reading: ");
strBeginningOdometerReading = Console.ReadLine();
Console.Write("Enter the ending odometer reading: ");
strEndingOdometerReading = Console.ReadLine();
Console.Write("Enter the number of gallons purchased for six fill-ups during the trip.");
strNumberOfGallons = Console.ReadLine();
//Convert
dblBeginningOdometerReading = Convert.ToDouble(strBeginningOdometerReading);
dblEndingOdometerReading = Convert.ToDouble(strEndingOdometerReading);
dblNumberOfGallons = Convert.ToDouble(strNumberOfGallons);
//Calculations
dblMilesTravelled = dblEndingOdometerReading - dblBeginningOdometerReading;
dblMilesPerGallon = dblMilesTravelled/dblNumberOfGallons;
//Display
Console.WriteLine("Miles Travelled: \t\t\t {0:n2} miles", dblMilesTravelled);
Console.WriteLine("Number of Gallons Purchased for 6 fill-ups: {0:n2} gallons", dblNumberOfGallons);
Console.WriteLine("Miles per Gallon (MPG): \t\t\t {0:n2} mpg", dblMilesPerGallon);
//While loop
while (strBeginningOdometerReading.ToUpper() != "QUIT" || strEndingOdometerReading.ToUpper() != "QUIT" || strNumberOfGallons.ToUpper() != "QUIT")
{
Console.WriteLine("Enter QUIT at any time to exit.");
Console.Write("Enter the beginning odometer reading: ");
strBeginningOdometerReading = Console.ReadLine();
Console.Write("Enter the ending odometer reading: ");
strEndingOdometerReading = Console.ReadLine();
Console.Write("Enter the number of gallons purchased for six fill-ups during the trip: ");
strNumberOfGallons = Console.ReadLine();
//Convert
dblBeginningOdometerReading = Convert.ToDouble(strBeginningOdometerReading);
dblEndingOdometerReading = Convert.ToDouble(strEndingOdometerReading);
dblNumberOfGallons = Convert.ToDouble(strNumberOfGallons);
//Calculations
dblMilesTravelled = dblEndingOdometerReading - dblBeginningOdometerReading;
dblMilesPerGallon = dblMilesTravelled/dblNumberOfGallons;
//Display
Console.WriteLine("Miles Travelled: \t\t\t {0:n2} miles", dblMilesTravelled);
Console.WriteLine("Number of Gallons Purchased for 6 fill-ups: {0:n2} gallons", dblNumberOfGallons);
Console.WriteLine("Miles per Gallon (MPG): \t\t\t {0:n2} mpg", dblMilesPerGallon);
} // end while
} //end Main
} //end class
} //end namespace
СПАСИБО ДЛЯ ВСЕХ ПОМОЩИ КАЖДЫЙ! – Ryker