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;
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++;
};
};
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;
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;
};
char wait;
cin >> wait;
return 0;
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;
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
//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 = ";
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;
n=5;
cout <<"masukan jumlah partisi m = ";
cin >> m;
//input data
i=1;
while (i<=n)
};
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 <<"\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;
char wait;
cin >> wait;
return 0;
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;
}
#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 = ";
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;
}