Generate random integer array

조회 수: 1 (최근 30일)
Bill Symolon
Bill Symolon 2017년 1월 25일
답변: Image Analyst 2017년 1월 25일
I need to create an array of random integers. The array must consist of at least two numbers greater than one but there is no maximum array length. The elements of the array need to sum to less than 46. Thanks for your help.
  댓글 수: 5
John D'Errico
John D'Errico 2017년 1월 25일
Bill -
If you know n in advance, then this is pertinent information, although still insufficient. n is not simply random. It is arbitrary, but known.
What do you do when n is 16? You need to explain these things, otherwise, one is forced to guess what you want to do.
So can we assume that n is given by the user. Then you want to come up with the number of cards in each pile, that then sums to n? Must each number be greater than 2? How large can any single pile of cards then be?
Bill Symolon
Bill Symolon 2017년 1월 25일
편집: Bill Symolon 2017년 1월 25일
John,
I see what your asking and I should have been more clear. Sorry, I'm still new at this.
Let's assume that the user inputs n which is an arbitrary integer between 1 and 45, inclusive. The code should then "randomly" parse the input into an array of smaller integers. There are no restrictions on the length of the array or the size of each element, except that the elements need to be integers and need to sum to n.
Hopefully that's a bit more clear. Thanks for your help.

댓글을 달려면 로그인하십시오.

채택된 답변

Image Analyst
Image Analyst 2017년 1월 25일
I was about the say the same thing as Steven. Because it's card dealing, you need to use randperm(), not randi(). See my two attached car dealing demos.

추가 답변 (1개)

Steven Lord
Steven Lord 2017년 1월 25일
If you're looking to shuffle a deck of cards, use randperm. Once you have a vector representing the shuffled deck of cards, use indexing to extract subsets of the vector to represent each of your piles.

카테고리

Help CenterFile Exchange에서 Random Number Generation에 대해 자세히 알아보기

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by