program 1 menhitung dua nilai matrix
#include <iostream>
using namespace std;
main(){
int a[2][2];
int b[2][2];
int hasil[2][2];
for(int i=0;i<2;i++){
for(int j=0;j<2;j++){
cout<<"Masukkan nilai matrik 1 ["<<i<<"]["<<j<<"] : "; cin>>a[i][j];
}
}
for(int i=0;i<2;i++){
for(int j=0;j<2;j++){
cout<<"Masukkan nilai matrik 2 ["<<i<<"]["<<j<<"] : "; cin>>b[i][j];
}
}
for(int i=0;i<2;i++){
for(int j=0;j<2;j++){
cout<<" "<<a[i][j]<<" ";
}
cout<<endl;
}
cout<<endl<<endl;
for(int i=0;i<2;i++){
for(int j=0;j<2;j++){
cout<<" "<<b[i][j]<<" ";
}
cout<<endl;
}
for(int i=0;i<2;i++){
for(int j=0;j<2;j++){
hasil[i][j] = a[i][j] + b[i][j];
}
}
cout<<endl<<"Hasil penjumlahan dua matriks diatas adalah : "<<endl;
for(int i=0;i<2;i++){
for(int j=0;j<2;j++){
cout<<" "<<hasil[i][j]<<" ";
}
cout<<endl;
}
}
using namespace std;
main(){
int a[2][2];
int b[2][2];
int hasil[2][2];
for(int i=0;i<2;i++){
for(int j=0;j<2;j++){
cout<<"Masukkan nilai matrik 1 ["<<i<<"]["<<j<<"] : "; cin>>a[i][j];
}
}
for(int i=0;i<2;i++){
for(int j=0;j<2;j++){
cout<<"Masukkan nilai matrik 2 ["<<i<<"]["<<j<<"] : "; cin>>b[i][j];
}
}
for(int i=0;i<2;i++){
for(int j=0;j<2;j++){
cout<<" "<<a[i][j]<<" ";
}
cout<<endl;
}
cout<<endl<<endl;
for(int i=0;i<2;i++){
for(int j=0;j<2;j++){
cout<<" "<<b[i][j]<<" ";
}
cout<<endl;
}
for(int i=0;i<2;i++){
for(int j=0;j<2;j++){
hasil[i][j] = a[i][j] + b[i][j];
}
}
cout<<endl<<"Hasil penjumlahan dua matriks diatas adalah : "<<endl;
for(int i=0;i<2;i++){
for(int j=0;j<2;j++){
cout<<" "<<hasil[i][j]<<" ";
}
cout<<endl;
}
}
program kasus 2
#include <iostream>
#include <conio.h>
#include <cstdlib>
#include <stdio.h>
using namespace std;
void baca_matriks (int mat[10][10], int baris, int kolom){
int i,j;
for (i=0; i<baris; i++)
for (j=0; j<kolom; j++){
cout << "Data [" << i+1 << "," << j+1 << "] : ";
cin >> mat[i][j];
}
}
void kali_matriks(const int matriks1[10][10], const int matriks2[10][10],
int baris, int kolom, int barkol, int mat_kali[10][10])
{
//misal baris 1 = 2 , -->baris
//misal kolom 2 = 1 , -->kolom
//misal barkol = 3
int i,j,k;
for (i=0; i<baris; i++)
for (j=0; j<kolom; j++){
mat_kali[i][j] = 0;
for (k=0; k<barkol; k++)
mat_kali[i][j] = mat_kali[i][j] + matriks1[i][k] * matriks2[k][j];
}
}
void cetak_matriks (const int A[10][10], int baris, int kolom){
int i,j;
for (i=0; i<baris; i++){
for (j=0; j<kolom; j++)
cout << A[i][j];
cout << endl;
}
}
main(){
int m, n, p;
int matriks1[10][10], matriks2[10][10];
int hasil[10][10];
printf("Baris matriks ke-1 : "); scanf("%d",&m);
printf("Banyak kolom : "); scanf("%d",&p);
printf("Kolom matriks ke-2 : "); scanf("%d",&n);
printf("Data matriks ke-1\n");
baca_matriks(matriks1,m,p);
cetak_matriks(matriks1,m,p);
printf("Data matriks ke-2\n");
baca_matriks(matriks2,p,n);
cetak_matriks(matriks2,p,n);
kali_matriks(matriks1,matriks2,m,n,p,hasil);
printf("Hasil Perkalian : \n");
cetak_matriks(hasil,m,n);
}
#include <conio.h>
#include <cstdlib>
#include <stdio.h>
using namespace std;
void baca_matriks (int mat[10][10], int baris, int kolom){
int i,j;
for (i=0; i<baris; i++)
for (j=0; j<kolom; j++){
cout << "Data [" << i+1 << "," << j+1 << "] : ";
cin >> mat[i][j];
}
}
void kali_matriks(const int matriks1[10][10], const int matriks2[10][10],
int baris, int kolom, int barkol, int mat_kali[10][10])
{
//misal baris 1 = 2 , -->baris
//misal kolom 2 = 1 , -->kolom
//misal barkol = 3
int i,j,k;
for (i=0; i<baris; i++)
for (j=0; j<kolom; j++){
mat_kali[i][j] = 0;
for (k=0; k<barkol; k++)
mat_kali[i][j] = mat_kali[i][j] + matriks1[i][k] * matriks2[k][j];
}
}
void cetak_matriks (const int A[10][10], int baris, int kolom){
int i,j;
for (i=0; i<baris; i++){
for (j=0; j<kolom; j++)
cout << A[i][j];
cout << endl;
}
}
main(){
int m, n, p;
int matriks1[10][10], matriks2[10][10];
int hasil[10][10];
printf("Baris matriks ke-1 : "); scanf("%d",&m);
printf("Banyak kolom : "); scanf("%d",&p);
printf("Kolom matriks ke-2 : "); scanf("%d",&n);
printf("Data matriks ke-1\n");
baca_matriks(matriks1,m,p);
cetak_matriks(matriks1,m,p);
printf("Data matriks ke-2\n");
baca_matriks(matriks2,p,n);
cetak_matriks(matriks2,p,n);
kali_matriks(matriks1,matriks2,m,n,p,hasil);
printf("Hasil Perkalian : \n");
cetak_matriks(hasil,m,n);
}
program kasus 3
#include <stdio.h>
#include <math.h>
#include <conio.h>
#include <iostream>
using namespace std;
/* Daftar Variabel
A[],b[] : Matriks pembentuk persamaan simultan linear
G[] : Matriks Gabungan
x : Matriks hasil perhitungan */
float A[5][5]={{4,1,2},{1,3,1},{1,2,5}};
float G[5][6];
float b[5]={16,10,12};
float factor,dummy,x[5];
int i,j,k,n=3;
main(){
// bentuk matriks gabungan
for(i=0;i<n;i++) for(j=0;j<n;j++) G[i][j]=A[i][j];
for(j=0;j<n;j++) G[j][n]=b[j];
printf("Matriks penggabungan\n");
for(i=0;i<n;i++){
for(j=0;j<=n;j++) printf(" %10.3f",G[i][j]);
printf("\n");
}
// proses eliminasi
for(i=0;i<n-1;i++){
for(j=i+1;j<n;j++){
factor = G[j][i]/G[i][i];
for(k=i;k<=n;k++) G[j][k]=G[j][k]-factor*G[i][k];
}
}
printf("Matriks setelah eliminasi\n");
for(i=0;i<n;i++){
for(j=0;j<=n;j++) printf(" %10.3f",G[i][j]);
printf("\n");
}
// substitusi mundur
x[n-1]=G[n-1][n]/G[n-1][n-1];
for(i=n-2;i>=0;i--){
dummy = G[i][n];
for(j=i+1;j<n;j++) {
dummy = dummy - G[i][j]*x[j];
}
x[i]=dummy/G[i][i];
}
printf("Hasil akhir\n");
for(i=0;i<n;i++) printf("x[%2d] = %g\n",i,x[i]);
}
#include <math.h>
#include <conio.h>
#include <iostream>
using namespace std;
/* Daftar Variabel
A[],b[] : Matriks pembentuk persamaan simultan linear
G[] : Matriks Gabungan
x : Matriks hasil perhitungan */
float A[5][5]={{4,1,2},{1,3,1},{1,2,5}};
float G[5][6];
float b[5]={16,10,12};
float factor,dummy,x[5];
int i,j,k,n=3;
main(){
// bentuk matriks gabungan
for(i=0;i<n;i++) for(j=0;j<n;j++) G[i][j]=A[i][j];
for(j=0;j<n;j++) G[j][n]=b[j];
printf("Matriks penggabungan\n");
for(i=0;i<n;i++){
for(j=0;j<=n;j++) printf(" %10.3f",G[i][j]);
printf("\n");
}
// proses eliminasi
for(i=0;i<n-1;i++){
for(j=i+1;j<n;j++){
factor = G[j][i]/G[i][i];
for(k=i;k<=n;k++) G[j][k]=G[j][k]-factor*G[i][k];
}
}
printf("Matriks setelah eliminasi\n");
for(i=0;i<n;i++){
for(j=0;j<=n;j++) printf(" %10.3f",G[i][j]);
printf("\n");
}
// substitusi mundur
x[n-1]=G[n-1][n]/G[n-1][n-1];
for(i=n-2;i>=0;i--){
dummy = G[i][n];
for(j=i+1;j<n;j++) {
dummy = dummy - G[i][j]*x[j];
}
x[i]=dummy/G[i][i];
}
printf("Hasil akhir\n");
for(i=0;i<n;i++) printf("x[%2d] = %g\n",i,x[i]);
}
program latihan 1
#include <iostream>
using namespace std;
void tulis_matrik(int matrik[2][2], int baris, int kolom){
for(int i=0;i<baris;i++){
for(int j=0;j<kolom;j++){
string ket;
if(baris==1) ket = "vektor";
else ket="matrik";
cout<<"Masukkan nilai "<<ket<<"["<<i<<"]["<<j<<"] : ";cin>>matrik[i][j];
}
}
}
void baca_matrik(int matrik[2][2], int baris, int kolom){
for(int i=0;i<baris;i++){
for(int j=0;j<kolom;j++){
cout<<" "<<matrik[i][j]<<" ";
}
cout<<endl;
}
}
void kali_matriks(const int matriks1[2][2], const int matriks2[2][2],
int baris, int kolom, int barkol, int mat_kali[2][2])
{
//misal baris 1 = 2 , -->baris
//misal kolom 2 = 1 , -->kolom
//misal barkol = 3
int i,j,k;
for (i=0; i<baris; i++)
for (j=0; j<kolom; j++){
mat_kali[i][j] = 0;
for (k=0; k<barkol; k++)
mat_kali[i][j] = mat_kali[i][j] + matriks1[i][k] * matriks2[k][j];
}
}
main(){
//perkalian matrik dengan vektor
int mat[2][2];
int vek[2][2];
int hasil[2][2];
//memasukan nilai matrik
tulis_matrik(mat, 2, 2);
cout<<endl;
tulis_matrik(vek, 2, 1);
cout<<endl;
baca_matrik(mat, 2, 2);
cout<<endl;
baca_matrik(vek, 2, 1);
cout<<endl;
kali_matriks(mat,vek,2,1,2,hasil);
cout<<"Hasil perkalian matrik dengan vektor : "<<endl;
baca_matrik(hasil, 2,1);
//memasukan nilai vektor
}
using namespace std;
void tulis_matrik(int matrik[2][2], int baris, int kolom){
for(int i=0;i<baris;i++){
for(int j=0;j<kolom;j++){
string ket;
if(baris==1) ket = "vektor";
else ket="matrik";
cout<<"Masukkan nilai "<<ket<<"["<<i<<"]["<<j<<"] : ";cin>>matrik[i][j];
}
}
}
void baca_matrik(int matrik[2][2], int baris, int kolom){
for(int i=0;i<baris;i++){
for(int j=0;j<kolom;j++){
cout<<" "<<matrik[i][j]<<" ";
}
cout<<endl;
}
}
void kali_matriks(const int matriks1[2][2], const int matriks2[2][2],
int baris, int kolom, int barkol, int mat_kali[2][2])
{
//misal baris 1 = 2 , -->baris
//misal kolom 2 = 1 , -->kolom
//misal barkol = 3
int i,j,k;
for (i=0; i<baris; i++)
for (j=0; j<kolom; j++){
mat_kali[i][j] = 0;
for (k=0; k<barkol; k++)
mat_kali[i][j] = mat_kali[i][j] + matriks1[i][k] * matriks2[k][j];
}
}
main(){
//perkalian matrik dengan vektor
int mat[2][2];
int vek[2][2];
int hasil[2][2];
//memasukan nilai matrik
tulis_matrik(mat, 2, 2);
cout<<endl;
tulis_matrik(vek, 2, 1);
cout<<endl;
baca_matrik(mat, 2, 2);
cout<<endl;
baca_matrik(vek, 2, 1);
cout<<endl;
kali_matriks(mat,vek,2,1,2,hasil);
cout<<"Hasil perkalian matrik dengan vektor : "<<endl;
baca_matrik(hasil, 2,1);
//memasukan nilai vektor
}
laihan 2
#include <iostream>
#include <conio.h>
using namespace std;
void iden (int n){
for(int i=0; i<n; i++){
for(int j=0; j<n; j++){
if(i==j) cout<<"1 ";
else cout<<"0 ";
}
cout<<endl;
}
}
int main(){
int n;
cout<<"MENCETAK MATRIKS IDENTITAS"<<endl;
cout<<"----------------------------------"<<endl;
cout<<"Masukkan ordo matriks : ";
cin>>n;
cout<<endl;
iden(n);
}
#include <conio.h>
using namespace std;
void iden (int n){
for(int i=0; i<n; i++){
for(int j=0; j<n; j++){
if(i==j) cout<<"1 ";
else cout<<"0 ";
}
cout<<endl;
}
}
int main(){
int n;
cout<<"MENCETAK MATRIKS IDENTITAS"<<endl;
cout<<"----------------------------------"<<endl;
cout<<"Masukkan ordo matriks : ";
cin>>n;
cout<<endl;
iden(n);
}
latihan 3
#include <iostream>
using namespace std;
void masuk(int mat[2][2], int baris, int kolom){
for(int i=0;i<baris;i++){
for(int j=0;j<kolom;j++){
cout<<"Masukkan nilai ["<<i<<"]["<<j<<"] : ";cin>>mat[i][j];
}
}
}
void transpose(int mat[2][2], int baris, int kolom){
for(int i=0;i<baris;i++){
for(int j=0;j<kolom;j++){
cout<<" "<<mat[j][i]<<" ";
}
cout<<endl;
}
}
void tampil(int mat[2][2], int baris, int kolom){
for(int i=0;i<baris;i++){
for(int j=0;j<kolom;j++){
cout<<" "<<mat[i][j]<<" ";
}
cout<<endl;
}
}
main(){
int mat[2][2];
masuk(mat, 2, 2);
cout<<endl;
tampil(mat, 2, 2);
cout<<endl<<endl<<"Transpose diatas adalah : "<<endl;
transpose(mat, 2,2);
return 0;
}
using namespace std;
void masuk(int mat[2][2], int baris, int kolom){
for(int i=0;i<baris;i++){
for(int j=0;j<kolom;j++){
cout<<"Masukkan nilai ["<<i<<"]["<<j<<"] : ";cin>>mat[i][j];
}
}
}
void transpose(int mat[2][2], int baris, int kolom){
for(int i=0;i<baris;i++){
for(int j=0;j<kolom;j++){
cout<<" "<<mat[j][i]<<" ";
}
cout<<endl;
}
}
void tampil(int mat[2][2], int baris, int kolom){
for(int i=0;i<baris;i++){
for(int j=0;j<kolom;j++){
cout<<" "<<mat[i][j]<<" ";
}
cout<<endl;
}
}
main(){
int mat[2][2];
masuk(mat, 2, 2);
cout<<endl;
tampil(mat, 2, 2);
cout<<endl<<endl<<"Transpose diatas adalah : "<<endl;
transpose(mat, 2,2);
return 0;
}
latihan 4
#include<iostream>
using namespace std;
void input(int kolom, int baris,int k){
int matrik[100][100];
//input matrik
for (int x = 0;x<baris;x++){
for (int y =0;y<kolom;y++){
cout <<"masukan nilai matrik kedua baris ke-"<<(x+1)<<" kolom ke-"<<(y+1)<<" : ";
cin>>matrik[x][y];
}
}
cout<<endl;
for (int x = 0;x<baris;x++){
for (int y =0;y<kolom;y++){
cout<<matrik[x][y]<<" ";
}
cout<<endl;
}
cout<<endl;
cout<<"setelah di kali kontanta"<<endl;
for (int x = 0; x<baris; x++){
for (int y =0; y<kolom; y++){
matrik[x][y]=k*matrik[x][y];
cout<<matrik[x][y]<<" ";
}
cout<<endl;
}
}
main(){
int baris,kolom,k;
cout<<"masukan baris= " ; cin>>baris;
cout<<"masukan kolom= " ; cin>>kolom;
cout<<"masukan konstanta= "; cin>>k;
cout<<endl;
input(baris,kolom,k);
}
using namespace std;
void input(int kolom, int baris,int k){
int matrik[100][100];
//input matrik
for (int x = 0;x<baris;x++){
for (int y =0;y<kolom;y++){
cout <<"masukan nilai matrik kedua baris ke-"<<(x+1)<<" kolom ke-"<<(y+1)<<" : ";
cin>>matrik[x][y];
}
}
cout<<endl;
for (int x = 0;x<baris;x++){
for (int y =0;y<kolom;y++){
cout<<matrik[x][y]<<" ";
}
cout<<endl;
}
cout<<endl;
cout<<"setelah di kali kontanta"<<endl;
for (int x = 0; x<baris; x++){
for (int y =0; y<kolom; y++){
matrik[x][y]=k*matrik[x][y];
cout<<matrik[x][y]<<" ";
}
cout<<endl;
}
}
main(){
int baris,kolom,k;
cout<<"masukan baris= " ; cin>>baris;
cout<<"masukan kolom= " ; cin>>kolom;
cout<<"masukan konstanta= "; cin>>k;
cout<<endl;
input(baris,kolom,k);
}
latihan 5
#include <iostream>
#include <iomanip>
#include <conio.h>
using namespace std;
main(){
float hasilkali[2][2];
float mat[2][2];
float invers[2][2];
float det, pemdet,temp;
for(int i=0;i<2;i++){
for(int j=0;j<2;j++){
cout<<"Masukkan nilai matrik["<<i<<","<<j<<"] : ";cin>>mat[i][j];
}
}
cout<<endl<<endl;
for(int i=0;i<2;i++){
for(int j=0;j<2;j++){
cout<<" "<<mat[i][j]<<" ";
}
cout<<endl;
}
cout<<endl<<endl;
det = ((mat[0][0] * mat[1][1]) - (mat[0][1]*mat[1][0]));
pemdet = 1/det;
invers[0][0] = pemdet*mat[1][1];
invers[0][1] = -1*pemdet*mat[0][1];
invers[1][0] = -1*pemdet*mat[1][0];
invers[1][1] = pemdet*mat[0][0];
cout<<"Matrik invers nya : "<<endl;
for(int i=0;i<2;i++){
for(int j=0;j<2;j++){
cout<<" "<<invers[i][j]<<" ";
}
cout<<endl;
}
cout<<endl<<endl;
//rumus perkalian matrik
for (int x = 0;x<2;x++){
for (int y =0;y<2;y++){
hasilkali[x][y]=0;
for (int z =0;z<2;z++){
temp=mat[x][z]*invers[z][y];
hasilkali[x][y]=hasilkali[x][y]+temp;
}
}
}
cout<<endl<<endl<<"Hasil kali matrik dengan inversnya : "<<endl;
//menampilkan hasil kali
for(int i=0;i<2;i++){
for(int j=0;j<2;j++){
cout<<" "<<hasilkali[i][j]<<" ";
}
cout<<endl;
}
if(hasilkali[0][0] == 1 && hasilkali[1][1] == 1 && hasilkali[0][1] == 0 && hasilkali[1][0] ==0){
cout<<endl<<"Matriks identitas";
} else if(hasilkali[0][0] == 0 && hasilkali[1][1] == 0 && hasilkali[0][1] == 1 && hasilkali[1][0] ==1){
cout<<endl<<"Matriks identitas";
} else {
cout<<endl<<"Bukan matrik identitas";
}
return 0;
getch();
}
#include <iomanip>
#include <conio.h>
using namespace std;
main(){
float hasilkali[2][2];
float mat[2][2];
float invers[2][2];
float det, pemdet,temp;
for(int i=0;i<2;i++){
for(int j=0;j<2;j++){
cout<<"Masukkan nilai matrik["<<i<<","<<j<<"] : ";cin>>mat[i][j];
}
}
cout<<endl<<endl;
for(int i=0;i<2;i++){
for(int j=0;j<2;j++){
cout<<" "<<mat[i][j]<<" ";
}
cout<<endl;
}
cout<<endl<<endl;
det = ((mat[0][0] * mat[1][1]) - (mat[0][1]*mat[1][0]));
pemdet = 1/det;
invers[0][0] = pemdet*mat[1][1];
invers[0][1] = -1*pemdet*mat[0][1];
invers[1][0] = -1*pemdet*mat[1][0];
invers[1][1] = pemdet*mat[0][0];
cout<<"Matrik invers nya : "<<endl;
for(int i=0;i<2;i++){
for(int j=0;j<2;j++){
cout<<" "<<invers[i][j]<<" ";
}
cout<<endl;
}
cout<<endl<<endl;
//rumus perkalian matrik
for (int x = 0;x<2;x++){
for (int y =0;y<2;y++){
hasilkali[x][y]=0;
for (int z =0;z<2;z++){
temp=mat[x][z]*invers[z][y];
hasilkali[x][y]=hasilkali[x][y]+temp;
}
}
}
cout<<endl<<endl<<"Hasil kali matrik dengan inversnya : "<<endl;
//menampilkan hasil kali
for(int i=0;i<2;i++){
for(int j=0;j<2;j++){
cout<<" "<<hasilkali[i][j]<<" ";
}
cout<<endl;
}
if(hasilkali[0][0] == 1 && hasilkali[1][1] == 1 && hasilkali[0][1] == 0 && hasilkali[1][0] ==0){
cout<<endl<<"Matriks identitas";
} else if(hasilkali[0][0] == 0 && hasilkali[1][1] == 0 && hasilkali[0][1] == 1 && hasilkali[1][0] ==1){
cout<<endl<<"Matriks identitas";
} else {
cout<<endl<<"Bukan matrik identitas";
}
return 0;
getch();
}
Tidak ada komentar:
Posting Komentar