17.04.2014 Views

Matlab Hogyan - Hidrodinamikai Rendszerek Tanszék

Matlab Hogyan - Hidrodinamikai Rendszerek Tanszék

Matlab Hogyan - Hidrodinamikai Rendszerek Tanszék

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

3. FEJEZET. CIKLUSUTASÍTÁSOK, ELÁGAZÁSOK 14<br />

Az eljárást függvényként definiáljuk kimenet nélkül, max rel hiba bemenettel stirling.m :<br />

stirling.m<br />

function stirling(max_rel_hiba)<br />

fprintf(’\n pi szamitasa Stirling-fromulaval \n’);<br />

eps=1.e5;<br />

n=1;<br />

while eps>max_rel_hiba<br />

a=1;<br />

for i=1:n<br />

a=a*i/n*exp(1);<br />

end;<br />

pii=a^2/2/n;<br />

eps=abs(pi-pii)/pi;<br />

n=n+1;<br />

end;<br />

fprintf(’\n n = %d \n kozelito ertek: %10.8f \n ...<br />

hiba: %10.8e \n \n’,n,pii,eps);<br />

A futtatás eredménye:<br />

>> stirling(1e-4)<br />

pi szamitasa Stirling-fromulaval<br />

n = 1668<br />

kozelito ertek: 3.14190677<br />

hiba: 9.99850013e-005<br />

Az eredmények:<br />

eps 10 −1 10 −2 10 −3 10 −4<br />

n 3 18 168 1668<br />

3.3. if<br />

A parancsok feltételes elvégzése. Szintaxis:<br />

if kifejezés1<br />

parancs1;<br />

parancs2;<br />

elseif kifejezés2<br />

parancsok<br />

else<br />

parancsok<br />

end<br />

Természetesen az elseif rész kihagyható, az else sem kötelező egyszintes if esetén. A feltételvizsgálatnál<br />

több kifejezés is összekapcsolható a logikai és &, vagy | ill. a nem ~ operátorokkal. Majd ha lesz valami jó,<br />

nemtriviális ötletem példaprogramra, írok egyet.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!