?? test.asv
字號:
close all
clc
clear all
Simulari=10; % efectuam mai multe simulari pt a avea un grafic mai relevant cand comparam rezultatele.
N=16; %ordinul polinomului, multiplu de 4
for i=1:Simulari
x(i)=-1+2*rand(1); %genereaza o matrice de 1X1 elemente aleatoare din intervalul nr fractionare (intre -1 si 1)
end
fid=fopen('..\x.dat','w','b');
fwrite(fid,x.*2^15,'int16'); %introducem x in fisier, in format binar, pe 16 biti
fclose(fid);
a=-1+2*rand(1,N); %genereaza o matrice de 1XN elemente cu valori aleatoare din intervalul nr fractionare(intre -1 si 1)
fid=fopen('..\a.dat','w','b');
fwrite(fid,a.*2^15,'int16'); %introducem vectorul a in fisier, in format binar, pe 16 biti
fclose(fid);
for i=0:Simulari
for k=0:(N-1)
P_ref(i)=0;
P_ref(i)=P_ref(i) + a(k+1)*(x(i)^k); %calculam valoarea de referinta a functiei cerute(polinomiala)
end
end
pause
fid=fopen('..\p.dat','r','b');
P=fread(fid,Simulari,'int32');
fclose(fid);
P=P/(2^31);
n=0:Simulari;
figure(1), plot(n,P,'x',n,P_ref,'o'), grid on
figure(2), plot(n,P_ref-P'), grid on
% Erorile aparute sunt din cauza erorilor ce apar in C din cauza preciziei
% mai mici de reprezentare, precum si din trunchierile ce se fac la
% inmultiri si la scrierea/citirea din fisiere.
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -