Bagaimana sebuah komputer mencari nilai cos ?. Mungkin beberapa akademisi pernah mengenal namanya deret Taylor. dengan menggunakan deret Taylor kita bisa mencari nilai dari sebuah cos nah berikut rumus dari deret taylor untuk mencari nilai cos :
Rumus Deret Taylor |
- Hitung f(x) = Cos(x);x=73(derajat);
- Cos x = 1- x^2/2! + x^4/4! - x^6/6! + ...
- Cari untuk angka bena=4;
clear;Berikut penjelasan beberapa codingannya, semoga membantu :
x=(73/180)* (22/7);
Tol=0.5*10^(2-4);
f0=1;
f1=f0-(x^2/factorial(2));
Galat=abs(f1-f0)/f1*100;
n=1;
y=4;
disp([n,f1,Galat]);
while Galat>Tol
f0=f1;
z=1;
for i=2:y
z=z*i;
end
c = mod(n,2);
if c==1
f1=f0+(x^y/z);
else
f1=f0-(x^y/z);
end
Galat = abs(f1-f0)/f1*100;
n=n+1;
disp([n,f1,Galat]);
y=y+2;
end
clear;clear berfungsi untuk membersihkan serta membebaskan(mengosongkan) memory *referensi : disini
x=(73/180)* (22/7);
Tol=x*10^(2-4);
f0=1;
x=(73/180)* (22/7) karena 73 yang dimaksud bernilai derajat maka kita akan merubahnya ke Radian dengan rumus x/180 * phi.
Tol=0.5*10^(2-4); variabel Tol menunjukan batas toleransi errornya yang ditentukan yaitu bena 4 (0.5*10^(2-bena)).
f0=1; dengan mendeklarasikan bahwa f0=1. untuk memenuhi rumus Cos x tersebut.
f1=f0-(x^2/factorial(2));f1=f0-(x^2/factorial(2)); untuk menentukan nilai f1 yang sesuai dengan rumus (x+x^2/2!).
Galat=abs(f1-f0)/f1*100;
Galat=abs(f1-f0)/f1*100; Rumus untuk menghitung nilai error.
n=1;n=1 .variabel n diberi nilai 1.
y=4;
disp([n,f1,Galat]);
y=4 .variabel y diberi nilai 4.
disp([n,f1,Galat]) .Fungsi untuk menampilkan nilai n, f1, dan Galat.
while Galat>Tolwhile Galat>Tol memulai pengulangan while dengan syarat Galat>Tol.
f0=f1;
z=1;
for i=2:y
z=z*i;
end
c = mod(n,2);
if c==1
f1=f0+(x^y/z);
else
f1=f0-(x^y/z);
end
Galat = abs(f1-f0)/f1*100;
n=n+1;
disp([n,f1,Galat]);
y=y+2;
end
f0 = f1 menimpa nilai f0 dengan f1.
Sub penjelasan :
z=1;codingan diatas merupakan codingan untuk mencari nilai factorial dari z;
for i=2:y
z=z*i;
end
c = mod(n,2);codingan diatas merupakan codingan untuk menentukan apakah selanjutnya dijumlah atau dikurangi mengikuti rumus deret taylor yang ada.
if c==1
f1=f0+(x^y/z);
else
f1=f0-(x^y/z);
end
Galat = abs(f1-f0)/f1*100;
n=n+1;
disp([n,f1,Galat]);
y=y+2;
Galat = abs(f1-f0)/f1*100; perhitungan nilai error.
n=n+1; untuk menaikan nilai n;
disp([n,f1,Galat]); menampilkan n,f1,Galat.
end
end : batas scope dari loop while.
Dan. berikut hasilnya :
Semoga bermanfaat....
thanks bro '-'/
BalasHapus