# Weighted Random Number Array generation in solidity

I have an array like this in the array,

uint256[] public numberArr= [0, 1, 2, 3, 4, 5, 6, 7, 8, 9];


Each number in an array have their own weight,

uint256[] public weightNumberArr = [1, 3, 9, 7, 15, 18, 36, 22, 12, 6];


Here you can say that the weight of number 0 is 1 and for number 2 it is 3 like that. So here Chance of arriving number 6 is more than a chance of arriving number 0.

How can I generate a random number array of 0 to 9 by using weighted probability in solidity?

Any help will be highly appreciated!

• Your question seems unrelated to Ethereum, but here is the same question from stackoverflow stackoverflow.com/questions/1761626/weighted-random-numbers. – Ismael Sep 8 at 22:09
• Thanks for reply @Ismael, I want to know how it can be unrelated to Ethereum, I was asking for it in solidity. Are you saying that this is not possible in solidity? – Mr. Sirja Sep 9 at 5:12
• I mean the more general questions can be asked in stackoverflow, and there are many more developers there that can help you. Now with the algorithm on hand it should be easy to write in solidity ;) – Ismael Sep 9 at 13:58
• Thanks @Ismael for you kind reply, really appreciate that. Btw I figured that out and followed the same way you said. Thanks brother! – Mr. Sirja Sep 10 at 7:13