我們被要求創建一個計劃,需要2輸入(我已經解析),用於在飛機座位乘客和隨機放置的乘客座位上的平面內一個輸出,以及因爲將剩下的座位放在次要產出中。剩餘值到二次出
我想知道是否有一種簡單的方法,將HashSet
中的剩餘值替換爲listBoxLedige
。
由於現在的工作,座位被分配但在次級輸出值的arent相關的第一輸出。
if(passengers > seats)
{
MessageBox.Show("For mange passagerer");
}
else
{
HashSet<int> check = new HashSet<int>();
for(int i = 0; i <= passengers - 1; i++)
{
int resultat = rnd.Next(1, seats + 1);
while(check.Contains(resultat))
{
resultat = rnd.Next(1, seats + 1);
}
check.Add(resultat);
int[] passagerer01 = new int[passengers];
passagerer01[i] = i+1;
listBoxFulde.Items.Add("Passager #" + passagerer01[i] + "på sæde #" + resultat);
}
HashSet<int> ledige01 = new HashSet<int>();
for(int i = 0; i <= (seats - passengers - 1); i++)
{
int tilbage = rnd.Next(1, seats + 1);
while(ledige01.Contains(tilbage))
{
ledige01.Add(tilbage);
}
listBoxLedige.Items.Add("Sæde #" + tilbage);
難道你不能使用['HashSet.ExceptWith'](http://msdn.microsoft.com/en-us/library/bb299875.aspx)從集合中刪除集合中的所有元素?所以剩下的值就是你想要添加到列表框的所有項目。 –