수치해석 1학기 리포트 모음 Matlab 소스 포함
- 최초 등록일
- 2008.10.11
- 최종 저작일
- 2007.08
- 32페이지/ 한컴오피스
- 가격 3,000원
소개글
수치해석 Homework #.1
1. for 문과 while의 반복문을 사용하여 10! 20! 30! 40!의 값을 구하시오.
1) for 구문
sum=1
n=0
for n=1 : 1 : x
sum=n*sum
end ① 10! : 옆의 x자리에 10을 대입한다. 답) 3,628,800
② 20! : 옆의 x자리에 20을 대입한다. 답) 2.4329e+018
③ 30! : 옆의 x자리에 30을 대입한다. 답) 2.6525e+032
④ 40! : 옆의 x자리에 40을 대입한다. 답) 8.1592e+047
2) while 구문
sum=1
n=0
while n < x
n=n+1
sum=n*sum
end ① 10! : 옆의 x자리에 10을 대입한다. 답) 3,628,800
② 20! : 옆의 x자리에 20을 대입한다. 답) 2.4329e+018
③ 30! : 옆의 x자리에 30을 대입한다. 답) 2.6525e+032
④ 40! : 옆의 x자리에 40을 대입한다. 답) 8.1592e+047
목차
수치해석 Homework #.1
수치해석 Homework #.2
수치해석 Homework #.3
수치해석 Homework #.4
수치해석 Homework #.5
본문내용
MATLAB사용.
a=0;b=1;
h=0.01;s=20; % s를 가정
eps=0.001; %오차 한도
m=1; % while문 들어가기 위해 1로 초기화.
count=0; % 반복 횟수 체크 위한 변수
fprintf(` x y ya 오차 반복 횟수 n`)
while m>=eps
x=0;y1=2;y2=s;w1=0;w2=1;
for n=1:(b-a)/h
ya=y1+h*(y2);
yb=y2+h*(-(2*y2^2)/(y1-1));
wa=w1+h*(w2);
wb=w2+h*(1/(y1-1)*((-2*y2*w2)+(2*y2^2*w1)/(y1-1)));
y1=ya;
y2=yb;
w1=wa;
w2=wb;
x=x+h;
y=1+(7*x+1)^(1/3);
end
sa= s -(ya-3)/wa;
m = abs(sa-s);
s = sa;
count = count +1;
end
fprintf(`%5.4f %5.4f %5.4f %5.4f %5.0fn`,x,y,ya,y-ya,count)
결과.
>> x y ya 오차 반복 횟수
1.0000 3.0000 3.0004 -0.0004 15
즉 s값을 수정해가면서 15번 반복한 결과 오차가 아주 작은 결과를 얻게 되었다.
참고 자료
없음