Vous êtes sur la page 1sur 18

1.

ALGORITMA PENYELESAIAN PERSAMAAN KEADAAN GAS NYATA SOAVE-REDLICH KWONG


MENGGUNAKAN METODE NEWTON-RAPHSON
#include "iostream"
#include "math.h"
using std::cout;
using std::cin;
int main()
{
int n,i;
double V[1000];
double P,T,fungsi,turunan,galat,alfa,delta,toleransi,R,Pc,Tc,omega,a,b,Tr;
//judul
cout
<<"*******************************************************************************\n";
cout <<"\n
Penyelesaian Persamaan Keadaan Soave-Redlich Kwong\n";
cout <<"\n
Menggunakan Metode Newton-Raphson Pada Microsoft Visual Studio 2010
C++\n\n";
cout
<<"*******************************************************************************\n";
cout <<"\n\nBentuk umum Persamaan Keadaan Gas Nyata : Soave-Redlich Kwong \n\n";
cout <<"P
= RT/(V-b) - a*alfa/(V*(V+b))\n\n";
cout <<"\nPersamaan Keadaan Soave-Redlich Kwong dalam fungsi V\n";
cout <<"\nf(V) = P*V^3 + (P*b-P*b-R*T)*V^2 - (P*b*b+b*R*T-a*alfa)*V - a*alfa*b =
0\n\n";
cout <<"\nPersamaan Keadaan Soave-Redlich Kwong dalam fungsi turunan V\n";
cout <<"\nf'(V)
= 3*P*V^2 + 2*(P*b-P*b-R*T)*V - (P*b*b+b*R*T-a*alfa)\n\n";
cout
<<"\n*******************************************************************************\n\n";
//looping input konstanta
cout << "Masukkan nilai P (bar) : ";
cin
>> P;
cout << "Masukkan nilai T (K) : ";
cin >> T;
cout << "Masukkan nilai R (cm^3 bar mol^(-1) K^(-1)) : ";
cin >> R;
cout << "Masukkan nilai Pc (bar) : ";
cin >> Pc;
cout << "Masukkan nilai Tc (K) : ";
cin >> Tc;
cout << "Masukkan nilai omega : ";
cin >> omega;
a=0.42747*pow(R,2)*pow(Tc,2)/Pc;
b=0.08664*R*Tc/Pc;
Tr=T/Tc;
alfa=pow(1+(0.48+1.574*omega-0.176*pow(omega,2))*(1-pow(Tr,0.5)),2);
i=0;
//looping mencari Volum Molar
toleransi=0.0000001;
galat=0.1;
i=1;

V[i]=R*T/P;
while (galat>=toleransi)
{
// mencari nilai fungsi turunan
fungsi=P*pow(V[i],3)+(P*b-P*b-R*T)*pow(V[i],2)-(P*b*b+b*R*T-a*alfa)*V[i]a*alfa*b ;

};

turunan=3*P*pow(V[i],2)+2*(P*b-P*b-R*T)*V[i]-(P*b*b+b*R*T-a*alfa);
V[i+1]=V[i]-fungsi/turunan;
delta=V[i+1]-V[i];
galat=abs(delta);
V[i]=V[i+1];
i=i+1;

//hasil iterasi
cout <<"\nfungsi
= "<<fungsi<<"\n \n";
cout <<"\nturunan
= "<<turunan<<"\n \n";
cout <<"\ndelta
= "<<delta<<"\n \n";
cout <<"\ngalat
= "<<galat<<"\n \n";
cout <<"\nVolum Molar = "<<V[i]<<"\n";
char wait;
cin >> wait;
return 0;

2. ALGORITMA PERHITUNGAN PERKALIAN MATRIX


#include "iostream"
#include "conio.h"
using std::cout;
using std::cin;
using std::endl;
int main()
{
int m,n,p,i,j,k;
double A[100][100],B[100][100],C[100][100];
double sumC;
// JUDUL
cout << "PERKALIAN MATRIK A dan B";
cout << "Ukuran Matrik A mxn dan Matrik B nxp \n \n";
//INPUT DATA MATRIK A dan B
cout <<"Masukan Jumlah Baris Matrik A = ";
cin >>m;
cout <<"Masukan Jumlah Kolom Matrik A = ";
cin >>n;
cout <<"Masukan Jumlah Kolom Matrik B = ";
cin >>p;
i=1;
while (i<=m)
{

j=1;
while (j<=n)
{
cout <<"Masukkan nilai A["<<i<<"]["<<j<<"] = ";
cin >> A[i][j];
j=j++;
};
i=i++;
};
i=1;
while (i<=n)
{
j=1;
while (j<=p)
{
cout <<"Masukkan nilai B["<<i<<"]["<<j<<"] = ";
cin >> B[i][j];
j=j++;
};
i=i++;
};

// PERHITUNGAN KALI MATRIK


i=1;
while (i<=m)
{
sumC=0;
k=1;
while (k<=p)
{
j=1;
while (j<=n)
{
sumC=A[i][j]*B[j][k]+sumC;
j=j++;
};
C[i][k]=sumC;
k=k++;
};
i=i++;
};
//OUTPUT
cout <<"Matriks A" << endl;
i=1;
while (i<=m)
{
j=1;
while (j<=n)
{
cout <<A[i][j]<<" ";
j=j++;
};
cout <<endl;
i=i++;

};
cout <<"Matriks B" << endl;
i=1;
while (i<=n)
{
j=1;
while (j<=p)
{
cout <<B[i][j]<<" ";
j=j++;
};
cout <<endl;
i=i++;
};
cout <<"Hasil kali adalah Matrik C" << endl;
i=1;
while (i<=n)
{
j=1;
while (j<=p)
{
cout <<C[i][j]<<" ";
j=j++;
};
cout <<endl;
i=i++;
};

char wait;
cin >> wait;
return 0;

3. ALGORITMA PENYELESAIAN NATURAL CUBIC SPLINE


#include "iostream"
using std::cin;
using std::cout;
int main()
{
int n,i;
double f[1000],t[1000],p[1000],q[1000],r[1000],s[1000],h[1000];
double a[1000],b[1000],c[1000],d[1000],x[1000],y[1000],alfa[1000],beta[1000];
cout <<"NATURAL CUBIC SPLINE \n \n";
cout <<"aturan persamaan output yang digunakan \n";
cout <<"g(t[i]) = p + q*(t[i+1]-t[i]) + r*(t[i+1]-t[i])^2 + s*(t[i+1]-t[i])^3 \n \n";
cout <<"-------------------------------------------------------------------------------- \n \n";
cout <<"masukan jumlah data = ";

cin >> n;
//input data
i=1;
while (i<=n)
{
cout <<"masukan f["<<i<<"] =";
cin >> f[i];
cout <<"masukan t["<<i<<"] =";
cin >> t[i];
cout << "\n \n";
i=i++;
};
//PROSEDURE CUBIC SPLINE
i=1;
while (i<=n)
{
p[i]=f[i];
h[i]=t[i-1]-t[i];
i=i++;
};
a[1]=1;
b[n+1]=0;
c[n+1]=0;
i=2;
while (i<=n)
{
a[i]=2*(h[i-1]+h[i]);
b[i]=h[i-1];
c[i]=h[i];
i=i++;
};
d[1]=0;
d[n]=0;
i=2;
while (i<=n)
{
d[i]=3*(p[i+1]-p[i])/h[i] - 3*(p[i]-p[i-1])/h[i-1];
i=i++;
};
// PROSEDURE THOMAS
alfa[1]=a[1];
i=2;
while (i<=n)
{
beta[i]=b[i]/alfa[i-1];
alfa[i]=a[i]-beta[i]*c[i-1];
i=i+1;
};
y[1]=d[1];
i=2;

while (i<=n)
{
y[i]=d[i]-beta[i]*y[i-1];
i=i+1;
};
x[n]=y[n]/alfa[n-1];
i=n-1;
while (i>=1)
{
x[i]=(y[i]-c[i]*x[i+1])/alfa[i];
i=i-1;
};

//PROSEDURE CUBIC SPLINE LANJUTAN


i=1;
while (i<=n)
{
r[i]=x[i];
i=i++;
};
i=1;
while (i<=n)
{
q[i]=(p[i+1]-p[i])/h[i] - h[i]*(2*r[i]+r[i+1])/3;
s[i]=(r[i+1]-r[i])/(3*h[i]);
i=i++;
};
//OUTPUT DATA
i=1;
while (i<=n)
{
cout << " untuk t["<<t[i-1]<<"] ke t["<<t[i]<<"] maka p = "<<p[i]<<" q =
"<<q[i]<<" r = "<<r[i]<<" s = "<<s[i]<<" \n";
i=i++;
};

char wait;
cin >> wait;
return 0;

4. ALGORITMA PERHITUNGAN RATA-RATA


#include "iostream"
using std::cout;
using std::cin;

int main()
{
char wait;
double d[100];
int i,n;
double rata2;
cout <<"Masukan jumlah n data = ";
cin >> n;
i=1;
do
{
cout <<"masukan data ke"<< i <<" = \n";
cin >> d[i];
i=i++;
}
while (i<=n);
i=1;
double sum;
sum=0;
do
{
sum=sum+d[i];
i=i++;
}
while (i<=n);
rata2=sum/n;
cout <<"hasil rata-rata adalah \n" <<rata2<<" ";
cin >> wait;
return 0;
}
5. ALGORITMA PENYELESAIAN METODE RUNGE-KUTTA ORDE 3
#include
#include
#include
#include

"iostream"
"conio.h"
"math.h"
"string"

using std::cout;
using std::cin;
int main()
{
int i,n;
double a,b,p,q,r,s,alfa,h,d,c,k1,k2,k3,fungsi;
double y[1000],t[1000];
cout <<"PROGRAM PENYELESAIAN DEFERENSIAL \n";
cout <<"METODE RUNGE KUTTA 3 \n \n";
cout <<"Persamaan yang digunakan adalah dy/dt = p*y + q*t^s + r \n";
cout <<"a, b, dan r merupakan konstanta \n \n";
//INPUT
cout <<"masukan nilai p = ";
cin >> p;
cout <<"masukan nilai q = ";
cin >> q;

cout <<"masukan nilai r = ";


cin >> r;
cout <<"masukan nilai s = ";
cin >> s;
cout <<"masukan batas a = ";
cin >> a;
cout <<"masukan batas b = ";
cin >> b;
cout <<"masukan jumlah partisi n = ";
cin >> n;
cout <<"nilai awal y = ";
cin >> alfa;
//RK3
h=(b-a)/n;
y[1]=alfa;
i=1;
while(i<=n+1)
{
t[i]=a+(i-1)*h;
d=y[i];
c=t[i];
fungsi=p*d + q*pow(c,s) + r;
k1=h*fungsi;
d=y[i]+k1*3/4;
c=t[i]+h/2;
fungsi=p*d + q*pow(c,s) + r;
k2=h*fungsi;
d=y[i]-k1+2*k2;
c=t[i]+h;
fungsi=p*d + q*pow(c,s) + r;
k3=h*fungsi;
y[i+1]=y[i]+(k1+4*k2+k3)/6;
};

i=i++;

//OUTPUT
i=1;
while (i<=n)
{
cout <<"y = "<<y[i]<<" pada saat x = "<<t[i]<< " \n";
i=i++;
};
char wait;
cin >> wait;
return 0;
}
6. ALGORITMA PENYELESAIAN METODE RUNGE-KUTTA ORDE 4

#include "iostream"
#include "math.h"
using std::cout;
using std::cin;
int main()
{
int i,n;
double a,b,p,q,r,s,alfa,h,d,c,k1,k2,k3,k4,fungsi;
double y[1000],t[1000];
cout
cout
cout
cout

<<"PROGRAM PENYELESAIAN DEFERENSIAL \n";


<<"METODE RUNGE KUTTA 4 \n \n";
<<"Persamaan yang digunakan adalah dy/dt = p*y + q*t^s + r \n";
<<"a, b, dan r merupakan konstanta \n \n";

//INPUT
cout <<"masukan
cin >> p;
cout <<"masukan
cin >> q;
cout <<"masukan
cin >> r;
cout <<"masukan
cin >> s;

nilai p = ";
nilai q = ";
nilai r = ";
nilai s = ";

cout <<"masukan batas a = ";


cin >> a;
cout <<"masukan batas b = ";
cin >> b;
cout <<"masukan jumlah partisi n = ";
cin >> n;
cout <<"nilai awal y = ";
cin >> alfa;
//RK4
h=(b-a)/n;
y[1]=alfa;
t[1]=a;
i=2;
while(i<=n+1)
{
t[i-1]=a+(i-2)*h;
d=y[i-1];
c=t[i-1];
fungsi=p*d + q*pow(c,s) + r;
k1=h*fungsi;
d=y[i-1]+k1/2;
c=t[i-1]+h/2;
fungsi=p*d + q*pow(c,s) + r;
k2=h*fungsi;
d=y[i-1]+k2/2;
c=t[i-1]+h/2;

fungsi=p*d + q*pow(c,s) + r;
k3=h*fungsi;
d=y[i-1]+k3;
c=t[i-1]+h;
fungsi=p*d + q*pow(c,s) + r;
k4=h*fungsi;
y[i]=y[i-1]+(k1+2*k2+2*k3+k4)/6;
i=i++;
};
//OUTPUT
i=1;
while (i<=n)
{
cout <<"y = "<<y[i]<<" pada saat x = "<<t[i]<< " \n";
i=i++;
};

char wait;
cin >> wait;
return 0;

7. ALGORITMA PENYELESAIAN METODE INTEGRASI SIMPSON


#include "iostream"
#include "math.h"
using std::cin;
using std::cout;
int main()
{
int n,i,m;
double p,q,b,h,fungsi1,fungsi2,fungsi3,sigma1,sigma2,sigma3,Integrasi,fungsip,fungsiq;
double a[10000],x[10000];
cout
cout
cout
cout
cout
cout

<<"PROGRAM PENYELESAIAN INTEGRAL POLINOMIAL PANGKAT 5\n";


<<"METODE SIMPSON38 \n \n";
<<"Persamaan yang digunakan adalah \n \n";
<<"a1*x^5 + a2*x^4 + a3*x^3 + a4*x^2 + a5*x + a6 \n \n";
<<"a merupakan konstanta \n \n";
<<"dengan integrasi p sampai q dan jumlah partisi adalah m \n \n";

n=5;
cout <<"masukan jumlah partisi m = ";
cin >> m;
//input data
i=1;
while (i<=n)

cout <<"masukan konstanta a["<<i<<"] = ";


cin >> a[i];
i=i++;

};
cout <<"masukan konstanta a["<<n+1<<"] = ";
cin >> a[n+1];
cout <<"masukan batas p =";
cin >> p;
cout <<"masukan batas q =";
cin >> q;
//perhitungan fungsi
h = (q - p)/m;
x[1] = p;
x[n+1] = q;
sigma1 = 0;
sigma2 = 0;
sigma3 = 0;
i = 4;
while (i <= m)
{
x[i] = p + (i-1)*h;

fungsi1=a[1]*pow(x[i],5)+a[2]*pow(x[i],4)+a[3]*pow(x[i],3)+a[4]*pow(x[i],2)+a[5]*pow(x[i],1)+a
[6];
sigma1 =sigma1 +fungsi1;
i = i + 3;
};
i = 2;
while (i <= m-1)
{
x[i] = p + (i-1)*h;

fungsi2=a[1]*pow(x[i],5)+a[2]*pow(x[i],4)+a[3]*pow(x[i],3)+a[4]*pow(x[i],2)+a[5]*pow(x[i],1)+a
[6];
sigma2 =sigma2 + fungsi2;
i = i + 3;
};
i = 3;
while (i <= m-2)
{
x[i] = p + (i-1)*h;

fungsi3=a[1]*pow(x[i],5)+a[2]*pow(x[i],4)+a[3]*pow(x[i],3)+a[4]*pow(x[i],2)+a[5]*pow(x[i],1)+a
[6];
sigma3 =sigma3 + fungsi3;
i = i + 3;
};

fungsip=a[1]*pow(p,5)+a[2]*pow(p,4)+a[3]*pow(p,3)+a[4]*pow(p,2)+a[5]*pow(p,1)+a[6];

fungsiq=a[1]*pow(q,5)+a[2]*pow(q,4)+a[3]*pow(q,3)+a[4]*pow(q,2)+a[5]*pow(q,1)+a[6];
Integrasi = 3*h*(fungsip + 2*sigma1 + 3*sigma2 + 3*sigma3 + fungsiq)/8;
cout <<"Hasil integrasi = "<<Integrasi<<" ";
char wait;
cin >> wait;
return 0;
}
8. ALGORITMA PENYELESAIAN METODE THOMAS
#include "iostream"
using std::cout;
using std::cin;
int main()
{
int i,j,n;
double a[1000],b[1000],c[1000],alfa[1000],beta[1000],d[1000],y[1000],x[1000];
cout <<"Thomas \n \n";
cout <<"masukan jumlah data vektor = ";
cin >> n;
//input a
i=1;
while (i<=n)
{
cout <<"Masukan a["<<i<<"] = ";
cin >> a[i];
i=i+1;
};
cout <<"\n";
//input b
i=1;
while (i<=n)
{
cout <<"Masukan b["<<i<<"] = ";
cin >> b[i];
i=i+1;
};
cout <<"\n";
//input c
i=1;
while (i<=n)
{

cout <<"Masukan c["<<i<<"] = ";


cin >> c[i];
i=i+1;

};
cout <<"\n";

//input d
i=1;
while (i<=n)
{
cout <<"Masukan d["<<i<<"] = ";
cin >> d[i];
i=i+1;
};
cout <<"\n";
//thomas
alfa[1]=a[1];
i=2;
while (i<=n)
{
beta[i]=b[i]/alfa[i-1];
alfa[i]=a[i]-beta[i]*c[i-1];
i=i+1;
};
y[1]=d[1];
i=2;
while (i<=n)
{
y[i]=d[i]-beta[i]*y[i-1];
i=i+1;
};
x[n]=y[n]/alfa[n-1];
i=n-1;
while (i>=1)
{
x[i]=(y[i]-c[i]*x[i+1])/alfa[i];
i=i-1;
};
//output
i=1;
while (i<=n)
{
cout << "Hasil x["<<i<<"] = "<<x[i]<< " \n";
j=j+1;
};

char wait;
cin >> wait;
return 0;

9. ALGORITMA PENYELESAIAN PERSAMAAN KEADAAN GAS NYATA SOAVE-REDLICH KWONG


#include "iostream"
#include "math.h"
using std::cout;
using std::cin;
int main()
{
int i,n;
double T[1000],P[1000];
double Tc,Pc,R,b,a,Tr,omega,alfa,V,Ta,Tb,Temp,h;
cout << "PERSAMAAN KEADAAN SOAVE-REDLICH KWONG\n \n";
cout << "Hubungan Temperature dan Tekanan Gas pada Volume Reaktor Konstan \n \n";
cout << "Volume Reaktor (m^3) = ";
cin >> V;
cout <<"\n \n";
cout <<"critical temperature and pressure and acentric factor \n";
cout << " Tc (Kelvin) = ";
cin >> Tc;
cout << " Pc (Pa) = ";
cin >> Pc;
cout << " Omega = ";
cin >> omega;
cout <<"\n \n";
cout << "Input Range Temperature \n";
cout << "T awal (Kelvin) = ";
cin >> Ta;
cout << "T akhir (Kelvin)= ";
cin >> Tb;
cout << "Jumlah partisi = ";
cin >> n;
R=8.314;
a=0.42747*pow(R,2)*pow(Tc,2)/Pc;
b=0.08664*R*Tc/Pc;
i=1;
h=(Tb-Ta)/n;
Temp=Ta-h;
i=1;
while (i<=n+1)
{
T[i]=Temp+h;
Tr=T[i]/Tc;

alfa=pow((1+(0.480 + 1.574*omega - 0.176*pow(omega,2))*(1-pow(Tr,0.5))),2);


P[i]=R*T[i]/(V-b) - a*alfa/(V*(V+b));
Temp=T[i];
i=i++;
};
cout << "Pada Reaktor dengan Fluida ..... , V reaktor = "<<V<<"\n";
i=1;
while (i<=n+1)
{
cout << "T operasi = "<<T[i]<<" ; P operasi = "<<P[i]<<"\n";
i=i++;
};

char wait;
cin >> wait;
return 0;

10. ALGORITMA PERSAMAAN KEADAAN REDLICH KWONG MENGGUNAKAN NEWTON RAPHSON


#include "iostream"
#include "math.h"
using std::cout;
using std::cin;
int main()
{
int n,i;
double V[1000];
double P,T,fungsi,turunan,galat,delta,toleransi,R,Pc,Tc,a,b,Tr;
//judul
cout
<<"*******************************************************************************\n";
cout <<"\n
Penyelesaian Persamaan Keadaan Redlich Kwong\n";
cout <<"\n
Menggunakan Metode Newton-Raphson Pada Microsoft Visual Studio 2010
C++\n\n";
cout
<<"*******************************************************************************\n";
cout <<"\n\nBentuk umum Persamaan Keadaan Gas Nyata : Redlich Kwong \n\n";
cout <<"P
= RT/(V-b) - a*/(T^1/2*V*(V-b))\n\n";
cout <<"\nPersamaan Keadaan Redlich Kwong dalam fungsi V\n";
cout <<"\nf(V) = P*V^2*T^1/2 - (P*T^1/2*b + R*T^3/2)*V + a = 0\n\n";
cout <<"\nPersamaan Keadaan Redlich Kwong dalam fungsi turunan V\n";
cout <<"\nf'(V)
= 2*P*V*T^1/2 - (P*T^1/2*b + R*T^3/2) \n\n";
cout
<<"\n*******************************************************************************\n\n";
//looping input konstanta
cout << "Masukkan nilai P (bar) : ";
cin
>> P;
cout << "Masukkan nilai T (K) : ";
cin >> T;
cout << "Masukkan nilai R (cm^3 bar mol^(-1) K^(-1)) : ";

cin >> R;
cout << "Masukkan nilai Pc (bar) : ";
cin >> Pc;
cout << "Masukkan nilai Tc (K) : ";
cin >> Tc;
a=0.42747*pow(R,2)*pow(Tc,2)/Pc;
b=0.08664*R*Tc/Pc;
Tr=T/Tc;
i=0;
//looping mencari Volum Molar
toleransi=0.0000001;
galat=0.1;
i=1;
V[i]=R*T/P;
while (galat>=toleransi)
{
// mencari nilai fungsi turunan
fungsi=P*pow(V[i],2)*pow(T,0.5)-(P*pow(T,0.5)*b+R*pow(T,1.5))*V[i]+a;
turunan=2*P*V[i]*pow(T,0.5)-(P*pow(T,0.5)*b+R*pow(T,1.5));
V[i+1]=V[i]-fungsi/turunan;
delta=V[i+1]-V[i];
galat=abs(delta);
V[i]=V[i+1];
i=i+1;
};
//hasil iterasi
cout <<"\nfungsi
= "<<fungsi<<"\n \n";
cout <<"\nturunan
= "<<turunan<<"\n \n";
cout <<"\ndelta
= "<<delta<<"\n \n";
cout <<"\ngalat
= "<<galat<<"\n \n";
cout <<"\nVolum Molar = "<<V[i]<<"\n";
char wait;
cin >> wait;
return 0;
}

11.ALGORITMA PENYELESAIAN RUNGE-KUTTA BUTCHER

#include
#include
#include
#include

"iostream"
"conio.h"
"math.h"
"string"

using std::cout;
using std::cin;
int main()
{
int i,n;
double a,b,p,q,r,s,alfa,h,d,c,k1,k2,k3,k4,k5,k6,fungsi;
double y[1000],t[1000];
cout <<"PROGRAM PENYELESAIAN DEFERENSIAL \n";
cout <<"METODE RUNGE KUTTA BUTCHER \n \n";
cout <<"Persamaan yang digunakan adalah dy/dt = p*y + q*t^s + r \n";
cout <<"a, b, dan r merupakan konstanta \n \n";
//INPUT
cout <<"masukan
cin >> p;
cout <<"masukan
cin >> q;
cout <<"masukan
cin >> r;
cout <<"masukan
cin >> s;

nilai p = ";
nilai q = ";
nilai r = ";
nilai s = ";

cout <<"masukan batas a = ";


cin >> a;
cout <<"masukan batas b = ";
cin >> b;
cout <<"masukan jumlah partisi n = ";
cin >> n;
cout <<"nilai awal y = ";
cin >> alfa;
//RK BUTCHER
h=(b-a)/n;
y[1]=alfa;
i=1;
while(i<=n+1)
{
t[i]=a+(i-1)*h;
d=y[i];
c=t[i];
fungsi=p*d + q*pow(c,s) + r;
k1=h*fungsi;
d=y[i]+k1*1/4;
c=t[i]+h*1/4;
fungsi=p*d + q*pow(c,s) + r;
k2=h*fungsi;
d=y[i]+k1*1/8+k2*1/8;
c=t[i]+h*1/4;

fungsi=p*d + q*pow(c,s) + r;
k3=h*fungsi;
d=y[i]-k2*h*1/2+k3;
c=t[i]+h*1/2;
fungsi=p*d + q*pow(c,s) + r;
k4=h*fungsi;
d=y[i]+k1*3/16+k4*9/16;
c=t[i]+h*3/4;
fungsi=p*d + q*pow(c,s) + r;
k5=h*fungsi;
d=y[i]-k1*3/7+k2*2/7+k3*12/7-k4*12/7+k5*8/7;
c=t[i]+h;
fungsi=p*d + q*pow(c,s) + r;
k6=h*fungsi;
y[i+1]=y[i]+(7*k1+32*k3+12*k4+32*k5+7*k6)/90;
};

i=i++;

//OUTPUT
i=1;
while (i<=n)
{
cout <<"y = "<<y[i]<<" pada saat t = "<<t[i]<< " \n";
i=i++;
};
char wait;
cin >> wait;
return 0;
}

Vous aimerez peut-être aussi