如何通过用户输入的百分比来增加数组中的值?在C#中

时间:2016-02-24 21:29:09

标签: c#

所以我想在数组中存储多个值,然后我想修改我存储的值,我也输入了一个百分比。这就是我到目前为止,我只是不知道如何通过我输入的百分比来调用要修改的值。

static void Main(string[] args)
    {

    double[] array = new double[5];
    Console.WriteLine("Enter 5 values.");
    for (int i = 0; i < 5; i++)
    {
        array[i] = Convert.ToDouble(Console.ReadLine());
    }

    double sum = 0;

    foreach (double d in array)
    {
        sum += d;
    }

    Console.WriteLine("The values you've entered and their index number.");
    Console.WriteLine("{0}{1,8}", "index", "value");
    for (int counter = 0; counter < 5; counter++)
        Console.WriteLine("{0,5}{1,8}", counter, array[counter]);
    Console.WriteLine("Enter percent increase ");

    double percent;
        percent = 1+1;
    Console.WriteLine("The percent is " + percent);

    Console.WriteLine("The new values increased by Percent are ");
    Console.ReadLine();

    }

4 个答案:

答案 0 :(得分:1)

您可以使用Array.ConvertAll

double[] result = Array.ConvertAll(array, d => d + d * (percent/100));

答案 1 :(得分:0)

您可以使用简单的for循环。

var percentage = 1 + percent * 0.01;
for (int i = 0; i < 5; i++)
{
   array[i] = array[i] * percentage;
}

答案 2 :(得分:0)

在数学上,将值增加x%相当于乘以1+x/100.0。当x为负时,减少的工作方式相同。

您现在需要做的就是迭代数组,并将每个数字乘以1+x/100.0

答案 3 :(得分:0)

您可以像以下那样询问数字:

double[] array = new double[5];    
for (int i = 0; i < 5; i++)
    array[i] = double.Parse(Console.ReadLine());

要求百分比:

double percent = double.Parse(Console.ReadLine()); // value between 0-100

并增加数组的每个值:

for (int i = 0; i < 5; i++)
    array[i] += array[i] * percent / 100.0; // Add the percent