I have to generate an array of 10x1 in an ascending order. With a condition that the two consecutive elements should have a difference between 1 to 8
조회 수: 5 (최근 30일)
이전 댓글 표시
ai = randi(8,10,1);
댓글 수: 0
채택된 답변
Ameer Hamza
2020년 11월 2일
편집: Ameer Hamza
2020년 11월 2일
Following fulfills the conditions
x = 1:10
If you want to use randi() then do something like this
dx = randi(8,10,1);
x = cumsum(dx)
추가 답변 (1개)
Johannes Hougaard
2020년 11월 2일
This is not a super elegant solution but I think it'll do the trick for you
numbers = zeros(10,1);
numbers(1) = randi(8,1); %If 8 should be the maximum number you would start
for ii = 2:10
numbers(ii) = numbers(ii-1) + round(rand*7+1)
end
figure;plot(numbers,'.')
참고 항목
카테고리
Help Center 및 File Exchange에서 Genetic Algorithm에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!