2017-07-29 64 views
-1

我是C#的初學者,我有一個任務來創建一個程序來排序兩個數組,並根據用戶顏色輸入查找最大的魚。我不知道如何使它工作。任何人都可以給我一些指點嗎?這是我到目前爲止。在數組中搜索並找到最大的對象

Console.WriteLine("Select a fish color. \nEnter only the number.\n1. 
Black\n2. Green\n3. Red\n4. Blue\n5. Yellow\nEnter Your Selection:"); 

string userColor = Console.ReadLine(); 
int value; 
while (!(int.TryParse(userColor, out value) && value >=1 && value <=5)) 
{ 
    Console.WriteLine("Please type only numbers from 1 to 5"); 
    userColor = Console.ReadLine(); 
} 

int color = int.Parse(userColor); 

string[] colors = new string[] { "Black", "Black", "Green", "Red", "Blue", "Yellow", "Black", "Green", "Red", "Blue", "Yellow", "Black", "Green", "Red", "Blue","Yellow"}; 

double[] lenght = new double[] { 8.5, 9.8, 10.9, 40, 36, 45, 43, 12, 17.8, 13.5, 14.9, 27.7, 26.9, 50, 60,13 }; 

Console.WriteLine("You chose " + colors[color]); 
Console.WriteLine("The biggest " + colors[color] + " fish is " + lenght[color]+ " inches long."); 
+0

解決方案很簡單。我希望你癢癢你的腦細胞,以便你成爲美妙的堆棧溢出社區的一部分。 ZIP是Linq閱讀的方式之一 – Ramankingdom

+0

https://msdn.microsoft.com/zh-cn/library/dd267698(v=vs.110).aspx – Ramankingdom

回答

0

所以,你需要做兩件事情:

  1. 找到匹配您正在尋找的顏色,每個魚。
  2. 找到該顏色的魚內最大的對應數字。

我會盡力給你一個地方開始,和一個工具例如,你可以使用:

  • 你應該使用一個for循環,因爲這將很容易循環讓你通過兩個列表中的值。
  • 將用戶輸入編號映射爲字符串的顏色後,可以使用==比較魚的顏色。
  • 您可以跟蹤迄今爲止發現的最大魚類長度,並在需要時更新。

(PS我故意讓事情變得模糊和友善,如果我爲自己解決問題,我可能會設法找到解決2-3行問題的方法,但這需要更多理解比你到目前爲止。)