c#我需要在循环中为同一个变量添加不同的值

时间:2017-11-22 22:23:00

标签: c#

我有一个重复5次的循环。在那个循环中,我生成了随机数。我找到了最大的数字并将它们加起来总计。

问题是,每次迭代的总数是不同的,我需要将每个总数加在一起才能找到总数,但我不确定如何。

        Random random = new Random();

for(int i = 0; i < 5; i++)

    {

    int Rnd1R1 = random.Next(1, 7);
    int Rnd1R2 = random.Next(1, 7);
    int Rnd1R3 = random.Next(1, 7);
    int Rnd1R4 = random.Next(1, 7);
    int Rnd1R5 = random.Next(1, 7);
    int Rnd1R6 = random.Next(1, 7);
    int Rnd2R1 = random.Next(1, 7);
    int Rnd2R2 = random.Next(1, 7);
    int Rnd2R3 = random.Next(1, 7);
    int Rnd2R4 = random.Next(1, 7);
    int Rnd3R1 = random.Next(1, 7);
    int Rnd3R2 = random.Next(1, 7);

    Console.WriteLine("~~~~~~New Round~~~~~~");
    Console.WriteLine("~~~~~~First Roll~~~~~~");
    Console.WriteLine("~~~~~~Press Enter~~~~~~");
    Console.ReadKey();
    Console.WriteLine("Player 1 rolls... (Press Enter)");
    Console.ReadKey();
    Console.WriteLine(Rnd1R1);
    Console.WriteLine(Rnd1R2);
    Console.WriteLine(Rnd1R3);
    Console.WriteLine("Player 2 rolls... (Press Enter)");
    Console.ReadKey();
    Console.WriteLine(Rnd1R4);
    Console.WriteLine(Rnd1R5);
    Console.WriteLine(Rnd1R6);

    Console.WriteLine("~~~~~~Second Roll~~~~~~");
    Console.WriteLine("~~~~~~Press Enter~~~~~~");
    Console.ReadKey();
    Console.WriteLine("Player 1 rolls... (Press Enter)");
    Console.ReadKey();
    Console.WriteLine(Rnd2R1);
    Console.WriteLine(Rnd2R2);
    Console.WriteLine("Player 2 rolls... (Press Enter)");
    Console.ReadKey();
    Console.WriteLine(Rnd2R3);
    Console.WriteLine(Rnd2R4);

    Console.WriteLine("~~~~~~Third Roll~~~~~~");
    Console.WriteLine("~~~~~~Press Enter~~~~~~");
    Console.ReadKey();
    Console.WriteLine("Player 1 rolls... (Press Enter)");
    Console.ReadKey();
    Console.WriteLine(Rnd3R1);
    Console.WriteLine("Player 2 rolls... (Press Enter)");
    Console.ReadKey();
    Console.WriteLine(Rnd3R2);
    Console.WriteLine("~~~~~~End of Round~~~~~~");

    int Max1 = (Math.Max(Math.Max(Rnd1R1, Rnd1R2), Rnd1R3)) + (Math.Max(Rnd2R1, Rnd2R2)) + Rnd3R1;
    int Max2 = (Math.Max(Math.Max(Rnd1R4, Rnd1R5), Rnd1R6)) + (Math.Max(Rnd2R3, Rnd2R4)) + Rnd3R2;
    Console.WriteLine(Max1);
    Console.WriteLine(Max2);

1 个答案:

答案 0 :(得分:0)

如果我理解正确

0 1 2

% 0 = index to the first palette color, pure red
% 1 = index to the second palette color, pure green
% 2 = index to the third palette color, pure blue

int total=0;  //before loop

total+=Max1+Max2;  //in loop after Max2

这样,你的总和会在每次迭代中被记住