我想圓了cx_n其最接近的數字,如果cx_n值不相匹配yt。使用下面的代碼,我可以四舍五入,但它一直到 1。例如,其中一個cx_n值是 0.58,我想四舍五入 0.6,而不是 1.0。我怎樣才能做到這一點?
這是我的 MATLAB 代碼:
Fn = 3; %Nyquist Frequency
Fnr = 6; %Nyquist Rate
Fs = Fnr*5; %Sampling frequency
Ts = 1 / Fs; %Sampling period
T = 1 / 3;
N = T / Ts; %Number of samples per period
start = 0;
stop =N-1;
c_increment = 1;
c_n = start:c_increment:stop;
c_nTs = c_n*Ts;
cx_n = sin(2*pi*3*c_nTs);
for m_d = 1:length(cx_n)
for quantisation = 1:length(yt)
if (m_d ~= quantisation )
p = round(cx_n);
stem(c_nTs, p);
end
end
end
uj5u.com熱心網友回復:
只需替換 p = round(cx_n);為 p = round(cx_n,1);

請參閱 MATLAB 檔案:圓形
Y = round(X,N) 舍入為 N 位:
- N > 0:四舍五入到小數點右邊的 N 位。
- N = 0:四舍五入到最接近的整數。
- N < 0:四舍五入到小數點左邊的 N 位。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/318498.html
