검색어 입력폼

수치해석 1학기 리포트 모음 Matlab 소스 포함

저작시기 2007.08 |등록일 2008.10.11 한글파일한컴오피스 (hwp) | 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번 반복한 결과 오차가 아주 작은 결과를 얻게 되었다.

참고 자료

없음
다운로드 맨위로