Saturday, March 21, 2009
Program Matrik, Determinan Dan Vektor
Tugas Lagi Tugas Lagi,.. yah yang namanya kuliah mesti ada tugas , kali ne aku diberi tugas membuat program matrik,determinan, dan vektor menggunakan bahasa C++, tepatnya memakai Software CodeBlock, pada mata kuliah Aljabar Linear & Matrik.
Silakan liat source kode programnya berikut ini
// *************************************************************
// PROGRAM MENGHITUNG MATRIK DETERMINAN //
// //
// Written by //
// Andwi Prima Valentine //
// 08523379 //
// //
// *************************************************************
#include
double determinan(int M[20][20],int n)
{
int baris,kolom;
int i,minor;
int det;
int subM[20][20];
if(n==2)
{
det = M[0][0]*M[1][1] - M[0][1]*M[1][0];
}
else
{
det = 0;
for (kolom=0; kolom<=(kolom-1); i++) { for (baris=1; baris<<"\n\n\t\t Determinan Matriks A[20][20] = \n\n"; for(int i=0;i<20;i++) j="0;j<20;j++)" cout=""><<<"\n = "<
int A[20][20] ={{6,4,3,2,3,1,3,2,4,2,3,4,1,2,3,4,3,4,3,2},{4,3,5,3,4,2,3,2,3,1,2,1,1,1,1,2,3,2,3,3},
{1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,3},{3,2,1,3,2,1,3,2,1,3,2,1,3,2,1,3,2,1,3,2},
{2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1,1,1,1,1},{3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,2},
{4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4},{1,2,3,1,2,3,1,2,3,1,2,3,1,2,3,1,2,3,1,2},
{2,2,2,2,1,1,1,1,1,3,3,3,3,3,3,1,1,1,1,1},{1,1,1,1,1,2,2,2,2,2,3,3,3,3,3,4,4,4,4,4},
{2,2,2,2,2,2,2,2,2,2,1,1,1,1,1,1,1,1,1,1},{1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,2},
{3,3,3,3,3,3,3,3,3,3,1,1,1,1,1,1,1,1,1,1},{1,1,1,1,1,1,1,1,1,3,3,3,3,3,3,3,3,3,3,3},
{2,2,2,2,2,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3},{3,3,3,3,3,3,3,3,3,3,2,2,2,2,2,2,2,2,2,2},
{4,4,4,4,4,4,4,2,2,2,2,2,2,2,1,1,1,1,1,1},{1,1,1,1,1,1,2,2,2,2,2,2,4,4,4,4,4,4,4,4},
{3,3,3,3,3,3,3,3,3,3,3,2,2,2,2,1,1,1,1,1},{1,2,3,4,5,6,7,8,9,9,8,7,6,5,4,3,2,1,2,3}};
int B[20][20] ={{1,2,3,1,1,1,1,2,2,2,3,3,3,3,1,1,1,1,2,2},{2,2,2,1,1,1,1,2,2,2,1,1,1,2,2,2,1,1,2,2},
{2,2,2,2,1,1,1,1,2,2,2,3,3,3,3,1,1,1,2,2},{1,1,1,1,2,2,2,3,4,3,2,2,1,2,3,4,5,2,3,2},
{3,3,3,3,2,2,2,2,1,1,1,2,2,2,2,3,3,3,2,2},{1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5},
{5,5,5,5,5,5,5,5,5,1,1,1,1,1,1,1,1,1,2,2},{2,2,2,2,2,1,1,1,1,1,1,1,4,4,4,4,4,4,4,4},
{3,3,3,3,3,4,4,4,4,4,4,5,5,5,5,5,5,6,6,6},{4,4,4,4,4,4,4,4,2,2,2,2,2,2,2,2,1,1,1,1},
{3,3,3,3,3,3,3,2,2,2,2,2,3,3,3,3,4,4,4,4},{7,7,7,7,7,7,7,7,6,6,6,6,3,3,3,3,2,2,2,2},
{6,6,6,6,5,5,5,5,5,4,4,4,4,3,3,3,3,2,2,2},{4,4,4,4,4,3,3,3,3,3,2,2,2,3,3,3,2,2,2,2},
{4,4,4,4,4,4,4,3,3,3,3,2,2,2,2,1,1,1,1,1},{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1},
{2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2},{3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3},
{4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4},{5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5}};
int C[20][20] = {};
int main()
{
for(int i=0;i<20;i++) j="0;j<20;j++)" k="0;k<20;k++)" i="0;i<20;i++)" k="0;k<20;k++)" cout=""><
#include
#include
#include
int x = 100,x2 = 300,x3 = 300,x4 = 230;
int y = 200,y2 = 200,y3 = 150,y4 = 120;
int z = 20,z2 = 30,z3 = 40,z4 = 60;
void grafik()
{
int gd=DETECT,gm;
initgraph(&gd,&gm,"");
setcolor(BLUE);
outtextxy(150,20,"Gambar Tetrahedron");
line(x,y,x2,y2);
line(x,y,x4,y4);
line(x2,y2,x3,y3);
line(x2,y2,x4,y4);
line(x3,y3,x4,y4);
for(int i=200;i>=150;i-=2)
{
putpixel(900+(-4*i),i,BLUE);
}
delay(2000);
}
int main()
{
int Xvek1,Yvek1,Zvek1,Xvek2,Yvek2,Zvek2,Xvek3,Yvek3,Zvek3,vol_tetra;
float kalivek12,kalivek13,kalivek23,sudut_vek1,sudut_vek2,sudut_vek3;
int panjangvek1,panjangvek2,panjangvek3;
Xvek1 = x2-x;
Yvek1 = y2-y;
Zvek1 = z2-z;
Xvek2 = x3-x;
Yvek2 = y3-y;
Zvek2 = z3-z;
Xvek3 = x4-x;
Yvek3 = y4-y;
Zvek3 = z4-z;
panjangvek1 = sqrt(pow(Xvek1,2) + pow(Yvek1,2) + pow(Zvek1,2));
panjangvek2 = sqrt(pow(Xvek2,2) + pow(Yvek2,2) + pow(Zvek2,2));
panjangvek3 = sqrt(pow(Xvek3,2) + pow(Yvek3,2) + pow(Zvek3,2));
kalivek12 = Xvek1*Xvek2 + Yvek1*Yvek2 + Zvek1*Zvek2;
kalivek13 = Xvek1*Xvek3 + Yvek1*Yvek3 + Zvek1*Zvek3;
kalivek23 = Xvek2*Xvek3 + Yvek2*Yvek3 + Zvek2*Zvek3;
vol_tetra = Xvek1*Yvek2*Zvek3 + Yvek1*Zvek2*Xvek3 + Zvek1*Xvek2*Yvek3 -
Zvek1*Yvek2*Xvek3 - Yvek1*Xvek2*Zvek3 - Xvek1*Zvek2*Yvek3;
sudut_vek1 = (acos(kalivek12/(panjangvek1*panjangvek2))/3.14)*180;
sudut_vek2 = (acos(kalivek13/(panjangvek1*panjangvek3))/3.14)*180;
sudut_vek3 = (acos(kalivek23/(panjangvek2*panjangvek3))/3.14)*180;
cout<<"Panjang vektor1 dengan titik("<<<","<<<","<<<") = "<
<<<"Panjang vektor2 dengan titik("<<<","<<<","<<<") = "<
<<<"Panjang vektor3 dengan titik("<<<","<<<","<<<") = "<
<<<<"Sudut antara vektor1 dan vektor2 = "<<<(char)248<<<"Sudut antara vektor1 dan vektor3 = "<<<(char)248<<<"Sudut antara vektor2 dan vektor3 = "<<<(char)248<<<<"Volume Tetrahedron = "<<<<"\n\n\nTetrahedron akan muncul setelah 2 detik, beware!!"; delay(2000); grafik(); return 0; }
Bagi yang bekeinginan mempelajari scrip diatas hub ym: valentformatics ato valentine90_v ntr tak kasih file cpp nya.
programnya banyak yang error cuy!
ReplyDelete,...saya mang sengaja menghilangkan sebagian script pada nya,,..br /saudara pake sofware ap?br /saya pake codeblock, gk taw jg sofware laen maw jalan,...br /script lengkapnya silahkan Download di sinibr /br /http://apvalentine.co.cc/web_documents/08523379_tugas_aljabar_kls_b.docbr /br /br /setelah saudara download, tukar extension file nya dari doc menjadi zip,. selamat mencoba.
ReplyDeletewaduh2 lak ok mbulet g karuan gini yah nulisnya...coba lebih rapi pasti asyik diliatnya....neh ku jga lagi kebingungan buat matrik dterminan by cpp....
ReplyDelete;)
bagus bgt sh sbenarnya !! tp seperti ktny mas dedhy, kurang rapi, jdnya agak bingung pengurutannya
ReplyDeleteduh ribet amat ne ...
ReplyDeletetambah pucing dh nyari penyelesaian tugas matrik ordo lebih dari 3 ne......
da yang lebih simpel g'?
mat mlam mas,,,,minta coding atau programnya yang bisa menghitung bidang dalam ruang 3 dimensi dan ruang n-eucliden karna ini nsalah satu bagian mata kuliah aljabar linier,,,terimaksih,,,atas bantuannya
ReplyDelete