problem with getting for loop to work

1 Ansicht (letzte 30 Tage)
Espen
Espen am 12 Nov. 2011
function int=calculateintegral(from,to,subinterval)
inttemp=0;
if rem(subinterval,2)>0
int='subinterval must be devidable on two'
else
for x=from+subinterval:subinterval*2:to-subinterval
y1=4*exp(-(x)^2)
y2=2*exp(-(x+((to-from)/subinterval))^2)
inttemp=inttemp+y1+y2
end
end
int=inttemp
when i ran it in matlab it does not seem to loop through the for-loop or the if-condition:
>> calculateintegral(0,1,1000)
int =
0
ans =
0
>> calculateintegral(0,1,1001)
int =
0
ans =
0

Akzeptierte Antwort

Fangjun Jiang
Fangjun Jiang am 12 Nov. 2011
Use your input argument, your for-loop looks like this:
for x=1000:2000:-999
No loop is executed at all.
I don't think your subinterval is defined correctly. Running calculateintegral(0,100,2) seems to give you some results.

Weitere Antworten (0)

Kategorien

Mehr zu Loops and Conditional Statements finden Sie in Help Center und File Exchange

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by