2015-08-31 27 views
4

我正在使用C#,我試圖找到5個值的平均值,但我只能使用2個變量。使用一個變量輸入5個整數C#

你怎麼能輸入5個整數到一個變量,並顯示該整數

+1

嘗試使用整數數組或列表

+0

你也許是指2 **整數**變量?你也可以有類的變量,這會使這個限制變得相當微不足道(並且有些奇怪)。儘管2個整數變量也相當簡單。 – Dukeling

+0

在什麼情況下,你會受到像這樣的變量數量的限制? – L0laapk3

回答

4

採取輸入值在整數列表或數組然後使用下面的代碼

List<int> intlist=new List<int>(); 
intlist.Add(2); 
intlist.Add(3); 
.. 
.. 
var average= intlist.Average(); 

使用Average意願計算在列表中的所有整數的序列的平均值。

UPDATE:或外殼是用只能爲整數,那麼你需要使用下面的代碼(記住驗證readline()項)

public decimal Average() 
{ 
int value = 0; 
for(int i=0;i<5;i++) 
{ 
    value+=ConvertToInt32(Console.ReadLine()); 
} 
return value/5; 
} 
6

的平均可以使用List這樣的:

var list = new List<int>(){ 1, 2, 3, 4, 5 }; 
var average = list.Average(); 

使用Average你會得到列表中的所有值的平均值

Here你有Enumerable的所有功能,你可以爲例如與Sum

6

使用集合像List<int>和擴展方法Enumerable.Average總結的所有值:

List<int> numbers = new List<int>{ 10, 20, 30, 40, 50 }; 
double average = numbers.Average(); // 30.0 

使用List.Add添加單個整數:

有關使用數組
numbers.Add(1); 
numbers.Add(2); 
numbers.Add(3); 
// ... 
3

什麼?我認爲陣列是你的情況下的一個變量

int[] input = new int[5]; 
     input[0] = 5; 
     input[1] = 40; 
     input[2] = 15; 
     input[3] = 50; 
     input[4] = 25; 

     int sum = 0; 
     foreach(int i in input) 
     { 
      sum = sum + i; 
     } 
     sum = sum/input.Length; 
     Console.WriteLine(sum.ToString()); 

@up是的,這是更好的方法!

2

如果你只是想解決方案,而List<int>那就來這裏吧是

int[] arr=new int[5]; 
arr[0]=10;arr[1]=20;...arr[4]=50; 
int sum=0; 
foreach(int x in arr) 
    { 
    s+=x; 

    } 
s=s/arr.Length;//s is average 

如果你想列表

List<int> list = new List<int>(){ 1, 2, 3, 4, 5 }; 
var average = list.Average(); 
3

你不需要數組,或列表或任何遠程類似的東西。僞代碼:

private int sum = 0; 
private int count = 0; 

while (user inputs valid number) 
{ 
    sum += userInput; 
    count++; 
} 

return sum/count; 

只有兩個變量。

相關問題