[version 2]
a1000=randi([950 1050],1,12);
a=a1000/1000;
[row_a, col_a]=size(a);
c=[];
for i=1:1:49
b=a(0.95+0.001*i<a & a<1.05-0.001*i);
if size(b,2)==0
break;
else
c=[c;b zeros(1,col_a-size(b,2))];
end
end
final_a=c
==================分隔線==================
[version 1]
a=[];
for i = 1:1:49
lower_bound=950+i;
upper_bound=1050-i;
a = [a, randi([lower_bound,upper_bound],12,1)];
end
final_a = a/1000
是這樣嗎?
※ 引述《benny5116 (班尼5116)》之銘言:
: 各位大大好
: 小弟有個問題想請教
: a =
: 0.9963
: 0.9561
: 1.0481
: 1.0038
: 0.9985
: 1.0030
: 0.9994
: 1.0025
: 1.0013
: 1.0030
: 1.0040
: 1.0015
: 要讓a裡面的值在0.95<a<1.05
: 之後算完再將此上下限增減0.001 如0.96<a<1.04
: 要讓這兩個上下限一直往內逼近
: 但這邊卡在一個問題
: for i=1:49
: a(0.95+0.001*i<a & a<1.05-0.001*i)
: end
: 只想到用這樣的方式
: 但不知道該如何計算一次後就將值給存起來以n*1的矩陣形式
: 得到49個n*1的矩陣這樣