Avatar billede heeelp Nybegynder
13. juni 2005 - 09:16 Der er 1 løsning

for-løkke driller

Jeg skal lave en funktion I MATLAB som finder det første tal under tol (tolerancen som i dette tilfælde er 1*10^(-8)).

Jeg har lavet nedenstående funktion som printer talene nederst i dette spørgsmål. Men jeg skal ha' den til at stoppe når Res<tol. (I dette tilfælde skal den stoppe når N=36)

-------------------------------------------------------
clear, clc
% funktion
f=@(x) 1./(1+x.^2);

% start argumenter
tol = 1*10^(-8);
a = 0;
b = realsqrt(3);
N = [2:2:64];

% hvis tol er mindre end maskinpræcisionen
% (eps) sættes tolerancen til eps:
tol = max(tol, eps);
S=[];
for (K=N) 
    S=[S, Simpsum(f,a,b,K)]; 
    Res = (pi/3)-S;
end
fprintf(1,'N:\t\t\t\t    Res:\n\n')
fprintf(1,'%-7.6g\t\t\t %-7.6g\n',[N;Res])
-------------------------------------------------------

N:                    Res:

2                  0.0265248
4                  0.000800665
6                  3.21443e-005
8                  4.48181e-006
10                1.63678e-006
12                7.83236e-007
14                4.22635e-007
16                2.4775e-007
18                1.54674e-007
20                1.01484e-007
22                6.93155e-008
24                4.89417e-008
26                3.55331e-008
28                2.64177e-008
30                2.00467e-008
32                1.54857e-008
34                1.21511e-008
36                9.66764e-009
38                7.78747e-009
40                6.34294e-009
42                5.21836e-009
44                4.33232e-009
46                3.6266e-009
48                3.05891e-009
50                2.59807e-009
52                2.22084e-009
54                1.90966e-009
56                1.65112e-009
58                1.43489e-009
60                1.25293e-009
62                1.09892e-009
64                9.67858e-010
Avatar billede heeelp Nybegynder
13. juni 2005 - 09:35 #1
Jeg fandt selv svaret:
for x = 1:length(Res)
      if Res(x) <= 1*10^-8
        Fejl = Res(x)
        break;
      end
end
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester