Behöver hjälp med en skoluppgift
Finns de någon vänlig själ som skulle kunna hjälpa mig att lösa ett problem jag har med en uppgift i skolan. Har följande problem. Om jag matar in 1 eller 2 som stations så kraschar det. Om jag matar in 3 eller fler så startar ”resan” på station 2.
using System;
namespace Delmoment1_Inlämningsuppgift2_Tåg
{
internal class Program
{
static void Main(string[] args)
{
int capacity;
int stations;
int leaves = 0;
int boarding = 0;
int sum;
string indata;
while (true)
{
Console.WriteLine("Skriv in tågets kapacitet: ");
indata = Console.ReadLine();
capacity = int.Parse(indata);
if (capacity <= 0 || capacity > 40)
{
Console.WriteLine("Omöjlig");
}
else
{
break;
}
}
while (true)
{
Console.WriteLine("Skriv in antal stationer: ");
indata = Console.ReadLine();
stations = int.Parse(indata);
if (stations <= 0 || stations > 10)
{
Console.WriteLine("Omöjlig");
}
else
{
break;
}
}
for (int i = 0; i < stations; i++)
{
int stays;
if (i != 0)
{
Console.WriteLine("Skriv in antal som lämnar tåget på station " + (i + 1) + ": ");
indata = Console.ReadLine();
leaves += int.Parse(indata);
}
else if (i++ == stations )
{
Console.WriteLine("Skriv in antal som lämnar tåget på station " + (i + 1) + ": ");
indata = Console.ReadLine();
Console.WriteLine("Alla " + (boarding - leaves) + " måste lämna slutdestinationen.");
}
while (true)
{
if (i < stations-1)
{
Console.WriteLine("Skriv in antal som stiger på tåget " + (i + 1) + ": ");
indata = Console.ReadLine();
boarding += int.Parse(indata);
if ((boarding - leaves) > capacity)
{
Console.WriteLine("Omöjligt");
Console.WriteLine("Det är " + ((boarding - leaves) - capacity) + " passagerare för mycket som vill stiga på tåget!");
boarding = boarding - int.Parse(indata);
}
else
{
break;
}
}
}
Console.WriteLine("Skriv in antal stannar kvar på stationen " + (i + 1) + ": ");
indata = Console.ReadLine();
stays = int.Parse(indata);
sum = boarding - leaves;
if (sum > capacity)
{
Console.WriteLine("Omöjligt");
Console.WriteLine("Det är " + (sum - capacity) + " passagerare för mycket som vill stiga på tåget!");
break;
}
else
{
Console.WriteLine("Det finns " + (capacity - sum) + " platser kvar på tåget!");
}
}
}
}
}