2017-11-11 309 views
-1

我想生成10个元素的数组(10,10)之间的随机数。C#中的随机替换正数和负数数组#

和情景是数组可以包含间(0,10)为奇数位置 正数和含有(-10,0)之间负数为偶数位置

对于实施例:1,-2, 3,-4,7,-1,3,-3,2,-9

即时通讯完全停止生成-ve编号,因为即时通讯新编程。

任何帮助被赞赏,提前感谢

+0

[在JavaScript中生成两个数字之间的随机数]的可能重复(https://stackoverflow.com/questions/4959975/generate-random-number-between-two-numbers-in-javascript) –

+0

您可以生成两个序列随机数使用Random.next(),然后将它们与例如'.Zip()'LINQ方法交织。 – silkfire

+0

Thnx为您提供帮助,但是在编程方面我很新,因此对我来说会变得困难我想要简单而直接的答案 – Voodoo

回答

2

好的,我明白了你的观点。 尝试这个代码

Random rand = new Random(); 
     int[] arr = new int[10]; 
     for(int i = 0; i < 10; i++) 
     { 
      if(i % 2 == 0) 
       arr[i] = rand.Next(1,10); 

      else 
       arr[i] = (rand.Next(1,10)) * -1;     
     } 
     for(int i = 0; i < 10; i++) 
     { 
      Console.WriteLine(arr[i]); 
     } 

样本输出 -9 -8 -4 -6 -9

+0

PLZ upvote,如果你觉得它有帮助,谢谢 – Shubham

+1

工作像一个魅力thnx – Voodoo

+0

'i%2 == 0'奇数? – InBetween

0

试试:

using System; 

namespace ConsoleApp 
{ 
    class Program 
    { 
     static void Main (string[] args) 
     { 
      var random = new Random(); 

      var array = new int[10]; 

      for (int i = 0; i < array.Length; i++) 
      { 
       bool isOdd = (i % 2) == 1; // check remainder 

       int randomNumber = random.Next (0, 11); // 0..10 

       if (isOdd) randomNumber = -randomNumber; // change sign 

       array[i] = randomNumber; 
      } 
     } 
    } 
}