簡體   English   中英

如何讓我的程序選擇除數組之和的數字?

[英]How can I make my program select numbers that divide the sum of numbers from an array?

我希望我的程序讀取用戶輸入並將其保存到數組中,然后對用戶輸入的所有數字求和,並選擇那些除以總和的數字。 是否可以使用任何現成的c#方法(如FindAll()?)

我的程序的最終版本應列出除以所有輸入數字之和的所有數字。

我的代碼如下:

Console.WriteLine ("Please type 10 numbers");

        int[] numbers = new int[10];
        int sum = 0;

        for (int i = 0; i < numbers.Length; i++) {

            string input = Console.ReadLine ();
            int.TryParse (input, out numbers[i]);

            sum += numbers [i];
        }

        Console.WriteLine (sum);

沒有內置,但你可以這樣做:

int[] data = new [] {2, 3, 4, 5, 6};

int sum = data.Sum();

var dividers = from number in data
               where (sum % number) == 0
               select number;

foreach (var divider in dividers)
    Console.WriteLine(divider);

如果您可以使用LINQ,您可以執行以下操作:

int[] dividers = numbers.Where(number => number % sum == 0).ToArray();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM