Setting bounds on a calculated array

조회 수: 2 (최근 30일)
Alex Spoor
Alex Spoor 2018년 3월 29일
답변: David Fletcher 2018년 3월 30일
I have a program that will randomly generate a number [-1 1] and add it to a random position in a vector. The program is supposed to work its way to an integer that corresponds with the ASCII digit so when converted it displays a target phrase.
The problem is that the vector in question is being displayed as characters and I need to limit it to numbers between 1:127. I discovered that when left to calculate it ends up in the several thousands both positive and negative.
  댓글 수: 1
Jos (10584)
Jos (10584) 2018년 3월 30일
This is all quite vague ... What have you tried so far? Did you write some (pseudo-) code or flowchart to start with? What is the expected input and expected output of this "program", in proper matlab variables?

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

답변 (1개)

David Fletcher
David Fletcher 2018년 3월 30일
It's easy enough to index the places where the values in the vector are greater than 127 or less than 1
indices=charVector<0 | charVector>127
You need to then decide what to do with the values that are outside the bounds - if you want to set the values to the (same) in-range random number you can use
a(indices)=randi(127)

카테고리

Help CenterFile Exchange에서 Creating and Concatenating Matrices에 대해 자세히 알아보기

제품

Community Treasure Hunt

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

Start Hunting!

Translated by