моя программа записывает количество бутылок, которое собрало 4 комнаты. Я новичок в C #, но делал Java в прошлом.
Я не буду использовать LINQ, я не буду использовать массивы. Только оператор Switch (извините, я знаю, что он неэффективен)
Моя программа должна записывать количество бутылок, введенных пользователем, и когда пользователь нажимает «выйти», программа предполагает выплевать количество бутылок во всех комнатах и определять комнату с наибольшим количеством бутылок в качестве победителя.
Я застрял в этом операторе switch, который не может найти способ инициировать мои комнаты (room1, room2, room3, room4), он говорит, что переменная room1-4 не назначена. Я должен быть в состоянии постоянно добавлять бутылку в комнату с помощью переключателя.
Когда я набираю quit, программа может выплюнуть все бутылки, собранные комнатами, и найти комнату с наибольшим количеством бутылок.
Спасибо за ваше время, я ценю, насколько это сообщество помогло мне.
namespace BottleDrive1
{
class Program
{
static void Main(string[] args)
{//Initialize 4 rooms.
int room1 = 0;
int room2 = 0;
int room3 = 0;
int room4 = 0;
//Start of while loop to ask what room your adding into.
while (true)
{
Console.Write("Enter the room you're in: ");
//If user enters quit at anytime, the code will jump out of while statement and enter for loop below
string quit = Console.ReadLine();
if (quit == "quit")
//Break statement allows quit to jump out of loop
break;}}
private void SetRoom(int room, int value)
{
switch (room)
{
case 1:
room1 = value;
break;
case 2:
room2 = value;
break;
case 3:
room3 = value;
break;
case 4:
room4 = value;
break;
}
}
public int GetRoom(int room)
{
int count = int.Parse(Console.ReadLine());
switch (room)
{
case 1:
room1 += count;
break;
case 2:
room2 += count;
case 3:
room3 += count;
break;
case 4:
room4 += count;
break;
}
}
}
//This for statement lists the 4 rooms and their bottle count when the user has entered quit. An alternative to below
/*for (int i = 0; i < rooms.Length; ++i)
Console.WriteLine("Bottles collected in room {0} = {1}", i + 1, rooms[i]);*/
/* int maxValue = 0;//initiates the winner, contructor starts at 0
int maxRoomNumber = 0;//initiates the room number that wins
for (int i = 0; i < room[i].Length; ++i)//This loop goes through the array of rooms (4)
{
if (room[i] > maxValue)//Makes sure that the maxValue is picked in the array
{//Looking for room number for the
maxValue = room[i];
maxRoomNumber = i + 1;
}//Writes the bottles collected by the different rooms
Console.WriteLine("Bottles collected in room {0} = {1}", i + 1, rooms[i]);
}
//Outputs winner
Console.WriteLine("And the Winner is room " + maxRoomNumber + "!!!");
*/
}
Последняя часть программы была моей попыткой найти максимальное число, так как я использовал массив для запуска. Я не должен использовать массив.