Вы не можете легко заменить массив отдельными переменными. Если у вас есть объявление типа
int room1 = 0, room2 = 0, room3 = 0, room4 = 0;
и хотите получить доступ к номеру комнаты i
, тогда вы должны написать
switch (i) {
case 1:
Console.WriteLine(room1);
break;
case 2:
Console.WriteLine(room2);
break;
case 3:
Console.WriteLine(room3);
break;
case 4:
Console.WriteLine(room4);
break;
}
С массивом вы можете просто написать
Console.WriteLine(rooms[i]);
Если вы действительно хотите пойти без массива, я предлагаю вам использовать вспомогательные методы:
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)
{
switch (room) {
case 1:
return room1;
case 2:
return room2;
case 3:
return room3;
case 4:
return room4;
default:
return 0;
}
}
Вы должны объявить переменные room1 - room4 как члены класса, чтобы сделать эту работу.
Теперь вы можете написать:
Console.WriteLine(GetRoom(i));
или вместо rooms[i] += n;
SetRoom(i, GetRoom(i) + n);