Sabtu, 17 September 2016

Refleksi Minggu 2

Refleksi 2

Assalamualaikum wr.wb.

Pada minggu kedua ini kita mempelajari tentang  Struct dan Class, dimana pada pembelajaran kali ini kami diminta membuat grup yang terdiri dari 2 kelompok dimana nantinya kami diminta untuk mendalami materi tesebut , satu kelompok mendalami 1 materi dan kemudian kami diminta menjelaskan kepada kelompok lain tentang materi yang telah kelompok kami pelajari, dan kemudian setelah itu kami diminta untuk membuat laporan dari gabungan kedua kelompok yang materinya tentang struct dan class tadi. 

sekian dan terimakasih

Refleksi Minggu1

Refleksi 1

Assalamualaikum wr.wb.

Alhamdulillah setelah sekian lama saya recent dari dunia perblogan ini, kali ini kita dipertemukan lagi namun bukan dengan mata kuliah alpro  melainkan dengan mata kuliah struktur data .
Pada minggu pertama ini seperti biasa hanya kontrak kuliah yang kemudian dilanjutkan dengan pembahasan sedikit materi.
Pada materi minggu pertama ini kita mempelajari tentang dasar-dasar pemrograman C++, seperti : parameter nilai, fungsi template, reference nilai, const reference parameter,  Alokasi memori dinamis, Array satu dimensi dinamis, penanganan perkecualian, operator delete, method, method overloading, object dan class.

Sekian dan terimakasih  

Kamis, 09 Juni 2016

Refleksi 13

Rabu pukul 7.00 kuliah alpro dimulai, pertemuan kali ini pertemuan pertama kami di bulan Ramadhan, pada pertemuan ketigabelas ini kami berkelompok disuruh mengerjakan tentang IPK dan setiap anggota kelompok mendapat bagian masing-masing , diantaranya ada yang mengerjakan algoritma, struct, dan menghitung IPK .

sekian dan terimakasih ^^

Senin, 06 Juni 2016

program sederhana

1. Menghitung nilai rata-rata sederhana

Dev C++

source code :

#include <iostream>
#include <conio.h>

using namespace std;

int main() {
   
    float angka, total = 0, rata;
    int jumlah;
   
    cout << "1. Mencari Rata-rata. (jumlah angka ditentukan)" << endl;
    cout << endl;
    cout << "masukkan jumlah angka      : "; cin >> jumlah;
    cout << endl;
   
    for (int i = 1; i <= jumlah; i++) {
        cout << "Masukkan angka            : "; cin >> angka;
        total = total + angka;
    }
   
    cout << endl;
    cout << "Total                      : " << total << endl;
    rata = total / jumlah;
    cout << "Rata-rata                 : " << rata;
    return 0;
}

outputnya :

2. Mencari nilai max, min dan rata

Dev C++

source code :

#include <cstdlib>
#include <iostream>
 
using namespace std;
 
int main(int argc, char *argv[])
{
    int x[100],n,max,min,i;
    double a,b;
    cout<<"Masukkan Banyaknya Data : ";cin>>n;
    for (i=0;i<n;i++)
    {
     cout<<"Masukan Nilai " <<i+1<<" : ";cin>>x[i];
    }
    max = x[0];
    min = x[0];
    for (i=0;i<n;i++)
    {
     if (max < x[i])
     {
       max = x[i];
      }
     if (min > x[i])
     {
       min = x[i];
      }
    }
    cout<<"Nilai tertinggi = "<<max<<endl;
    cout<<"Nilai terendah = "<<min<<endl;
    a=0;
    for (int i=0;i<n;i++)
    {
     a=a+x[i];
    }
    b=a/n;
    cout<<"Rata-Rata : "<<a<<"/"<<n<<" = "<<b<<endl;
    system("PAUSE");
    return EXIT_SUCCESS;  

}

outputnya :

3. Mencari nilai pangkat

Dev C++

source code :

#include <iostream>

/* run this program using the console pauser or add your own getch, system("pause") or input loop */
using namespace std;

int kali(int i, int n, int p){
if(i<=n)
return p*kali(i+p,n,p);
}
int main(int argc, char** argv) {
int x,y,i=0;

cout<<"menghitung hasil perpangkatan\n";
cout<<"nilai pertama:";cin>>x;
cout<<"masukan hasil pangkat:";cin>>y;
cout<<"hasil="<<kali(i,y,x);
return 0;
}

outputnya :


Refleksi 12

Pada pertemuan ke 12 ini kami sudah memasuki ke materi record, pada pertemuan tadi kami membahas sedikit tentang bedanya record array, dan beda struct class. Sebenarnya minggu ini adalah minggu-minggu yang sibuk bagi kami. Kenapa? Karena minggu ini kami sudah harus mempresentasikan Tugas Proyek kami. 

Sekian dan Terimakasih ^^

Rabu, 25 Mei 2016

Mengalikan Vektor (2 elemen) dengan Matriks berukuran 2x3 dan Vektor (3 elemen)

Analisa Masalah


1. Identifikasi Masalah
=> Mengalikan Vektor (2 elemen) dengan Matriks berukuran 2x3 dan Vektor (3 elemen)

2. Menentukan input dan output
Input :
matrix [2] [3] = {4,7,2,6,3,1}
vektor [3] = {3,0,2}  
vek [2] = {2,5}
Output :
Hasil perkalian matrix 2x3 dan vektor 3 elemen :
16
20

Hasil perkalian vektor(elemen 2) dengan matrix elemen 2x3 dan vektor(elemen 3) :
32
100

3. Membuat Flowchart atau Algoritma
Algoritma Perkalian_Matrix
{ Menghitung hasil perkalian vektor(elemen 2) dengan matrix elemen 2x3 dan vektor(elemen 3)}

Deklarasi :
matrix [2] [3] = {4,7,2,6,3,1}              : integer
vektor [3] = {3,0,2}                            : integer
vek [2] = {2,5}                                  : integer
hasil [2] ={0}                                      : integer

Deskripsi :
Write('Matrik elemen 2x3 : \n')
            for i ß 0 to 2 do then i++
                        for j ß 0 to 3 then j++
                                    hasil[i] ß hasil[i]+(matrix[i][j]*vektor[j]);
            end for
                        end for

for i ß 0 to 2 do then i++
            for j ß 0 to 3 then j++ then
                        write(hasil[i][j])
            end for
                        end for

write(‘Vektor 3 elemen: \n’)
            for j ß 0 to 3 then j++ then
                        write(vektor[i])
end for

write(‘Vektor 2 elemen : \n’)
            for i ß 0 to 2 then i++ then
                        write(vek[i])
end for

write(‘Hasil perkalian matrix 2x3 dan vektor 3 elemen : \n’)
            for i ß 0 to 2 then i++
                        write(hasil[i])
end for

write(‘Hasil perkalian vektor(elemen 2) dengan matrix elemen 2x3 dan vektor(elemen 3) : \n’)
for i ß 0 to 2 then i++
                        hasil[i] ßhasil[i]*vek[i];
                        write(hasil[i])

end for

4. Test Menggunakan data
Input :
matrix [2] [3]:  | 4 7 2 |
 | 6 3 1 |
vektor [3]        : | 3 |
                          | 0 |
                          | 2 |
vek [2]   |  2  |
               | 5 |
Output :
Hasil perkalian matrix 2x3 dan vektor 3 elemen :
16
20

Kemudian hasilnya dikalikan dengan asil perkalian vektor(elemen 2) ,
Hasil akhirnya adalah :
32
100

5. Implementasi c++
#include <iostream>
using namespace std;
/* run this program using the console pauser or add your own getch, system("pause") or input loop */

void perkalian(int matrix[2][3],int vektor[3],int hasil[2]){
cout<<"Matrik elemen 2x3 : \n";
for(int i=0;i<2;i++){
for(int j=0;j<3;j++)
hasil[i]=hasil[i]+(matrix[i][j]*vektor[j]);
}
}

void cetakmatrix(int hasil[][3]){
for(int i=0;i<2;i++){
for(int j=0;j<3;j++)
cout<<hasil[i][j]<<" ";
cout<<endl;
}
}

void cetakvektor(int vektor[]){
cout<<"Vektor 3 elemen: \n";
for(int i=0;i<3;i++){
cout<<vektor[i]<<endl;
}
}

void cetakb(int vek[]){
cout<<"Vektor 2 elemen : \n";
for(int i=0;i<2;i++){
cout<<vek[i]<<endl;
}
}
void cetak(int hasil[]){
cout<<"Hasil perkalian matrix 2x3 dan vektor 3 elemen : \n";
for(int i=0;i<2;i++){
cout<<hasil[i]<<endl;
}
}

void cetaka(int vek[2],int hasil[]){
cout<<"Hasil perkalian vektor(elemen 2) dengan matrix elemen 2x3 dan vektor(elemen 3) : \n";
    for(int i=0;i<2;i++){
hasil[i]=hasil[i]*vek[i];
cout<<hasil[i]<<endl;
}
}

int main(int argc, char** argv) {
int matrix[2][3]={4,7,2,6,3,1}, vektor[3]={3,0,2},vek[2]={2,5},hasil[2]={0};
perkalian(matrix,vektor,hasil);
cetakmatrix(matrix);
cetakvektor(vektor);
cetak(hasil);
cetakb(vek);
cetaka(vek,hasil);
return 0;
}

6. Exekusi



Selasa, 24 Mei 2016

Program sederhana Array 2 dimensi dan Kasus Matriks

1. Program sederhana array 2 dimensi

Dev C++

source code :

#include<iostream>
#include<conio.h>
using namespace std;
int main()
{
int matrix[3][3];
int i,j;
for(i=0;i<=2;i++)
{
for(j=0;j<=2;j++)
{
cout<<"Masukkan Nilai Angka Pada Baris Ke "<<i<<" dan Kolom Ke "<<j<<" : ";
cin>>matrix[i][j];
}
cout<<endl;
}
for(i=0;i<=2;i++)
{
for(j=0;j<=2;j++)
{
cout<<matrix[i][j]<<" ";
}
cout<<endl;
}
return (0);

}

outputnya :

2. Program penjumlahan dan pengurangan array 2 dimensi

Dev C++

source code :

#include <iostream>
#include <conio.h>
#include <stdio.h>
using namespace std;
main()
{
//deklarasi
    int matrixa[3][3],matrixb[3][3],matrixc[3][3];
   int i,j;
   char opr;
//input nilai matriks ke-1 dari baris dan kolom
   for(i=1;i<=2;i++){
   for(j=1;j<=2;j++){
   cout<<"Masukkan matriks(1) nilai baris ke-"<<i<<" kolom ke-"<<j<<" : ";cin>>matrixa[i][j];
   }
   cout<<endl;
   }
//output matriks ke-1
   for(i=1;i<=2;i++){
   for(j=1;j<=2;j++){
   cout<<matrixa[i][j]<<"\t";
   }
   cout<<endl;
   }
//input nilai matriks ke-2 dari baris dan kolom
   for(i=1;i<=2;i++){
   for(j=1;j<=2;j++){
   cout<<"Masukkan matriks(2) nilai baris ke-"<<i<<" kolom ke-"<<j<<" : ";cin>>matrixb[i][j];
   }
   cout<<endl;
   }
//output matriks ke-2
   cout<<endl;
   for(i=1;i<=2;i++){
   for(j=1;j<=2;j++){
   cout<<matrixb[i][j]<<"\t";
   }
   cout<<endl;
   }
//Input Operator
   cout<<"Pilih Operator +,- :";cin>>opr;
//switching operator
   for(i=1;i<=2;i++){
   for(j=1;j<=2;j++){
   switch(opr){
       case '+' : matrixc[i][j] = matrixa[i][j] + matrixb[i][j];
      break;
      case '-' : matrixc[i][j] = matrixa[i][j] - matrixb[i][j];
      break;
      default:
      cout<<"keyword yang anda masukkan salah/tidak terdaftar";
   }
//Output Hasil matriks dari Operator
   cout<<matrixc[i][j]<<"\t";
   }
   cout<<endl;
   }
getch();
return 0;

}

outputnya :


2. Program perkalian matriks ordo 2x3 dan matriks ordo 3x2

Dev C++

source code :


int main ()
{
    int matriks1[2][3];
    int matriks2[2][3];
    int perkalian[2][3];
    int transpose[3][2];
    int baris,kolom;

cout<<"-------------------\n";
cout<<"  Matriks Pertama  \n";
cout<<"-------------------\n";
for (baris=0;baris<2;baris++)
{
    for (kolom=0;kolom<3;kolom++)
    {
        cout<<"Masukan Angka ["<<baris<<"] ["<<kolom<<"] = ";
        cin>>matriks1[baris][kolom];
    }
        cout<<endl;
}
for (baris=0;baris<2;baris++)
{
    for (kolom=0;kolom<3;kolom++)
    {
        cout<<matriks1[baris][kolom]<<" ";
    }
        cout<<endl;
}
cout<<"------------------\n";
cout<<"  Matriks Kedua   \n";
cout<<"------------------\n";
for (baris=0;baris<2;baris++)
{
    for (kolom=0;kolom<3;kolom++)
    {
        cout<<"Masukan Angka ["<<baris<<"] ["<<kolom<<"] = ";
        cin>>matriks2[baris][kolom];
    }
        cout<<endl;
}
for (baris=0;baris<2;baris++)
{
    for (kolom=0;kolom<3;kolom++)
    {
        cout<<matriks2[baris][kolom]<<" ";
    }
        cout<<endl;
}
cout<<"     Matriks yang di Transpose    \n";
cout<<"----------------------------------\n";
    for(kolom=0;kolom<3;kolom++)
    {
        for(baris=0;baris<2;baris++)
        {
        transpose[kolom][baris]=matriks2[baris][kolom];
        cout<<transpose[kolom][baris]<<" ";
        }
        cout<<endl;
    }
cout<<"------------------------------\n";
cout<<"    Hasil Perkalian [2]x[2]   \n";
cout<<"------------------------------\n";
for (baris=0;baris<2;baris++)
{
    for (kolom=0;kolom<2;kolom++)
    {
        perkalian[0][0]=matriks1[0][0]*transpose[0][0]+matriks1[0][1]*transpose[1][0]+matriks1[0][2]*transpose[2][0];
        perkalian[0][1]=matriks1[0][0]*transpose[0][1]+matriks1[0][1]*transpose[1][1]+matriks1[0][2]*transpose[2][1];
        perkalian[1][0]=matriks1[1][0]*transpose[0][0]+matriks1[1][1]*transpose[1][0]+matriks1[1][2]*transpose[2][0];
        perkalian[1][1]=matriks1[1][0]*transpose[0][1]+matriks1[1][1]*transpose[1][1]+matriks1[1][2]*transpose[2][1];
        cout<<perkalian[baris][kolom]<<" ";
    }
        cout<<endl;
}


}

outpunya :





Refleksi 11

Rabu, 25 Mei 2016 jam 7.00 adalah pertemuan alpro yang ke 11 . Pada pertemuan alpro kali ini kami membahas tentang array 2 dimensi dan kasus matriks . Kali ini kami harus membuat algoritma dengan enam langkah sesuai dengan yang telah dipelajari . Menurut saya pada pertemuan ini cukup mudah namun  membingungkan . Pada materi array 2 dimensi dan kasus matriks inikami mempelajari array 2 dimensi, penjumlahan matriks ordo 2x3 dan perkalian matriks ordo 2x3 dengan matriks ordo 3x2.

sekian dan terimakasih ^^

Jumat, 20 Mei 2016

Searching

1. Pencarian data angka ditemukan

Dev C++

source code :

#include <conio.h>
#include <iostream>
using namespace std;
main(){
int c,i,posisi;
int A[20]={3,2,4,10,20,1,5,8,7,9,6,5,11,12,14,13,16,15,17,19};


cout<<"Data : ";
for(i=0;i<20;i++){
 cout<<A[i]<<" ";
}

cout<<"\nData yang ingin dicari : ";
cin>>c;
i=0;
posisi=0;
while(i<19 && A[i]!=c){
 i++;
}
if (A[i]!=c){
 cout<<"Maaf data yang dicari tidak ada";
}else if(posisi=i+1)
   cout<<"ditemukan pada posisi ke "<<posisi;
getch();

}

outputnya :

2. Pencarian Linear

Dev C++

source code :

#include <cstdlib>


#include <iostream>

using namespace std;

int main(int argc, char *argv[])
{

int X,i,k;
int L[10] = {20,15,22,14,12,10,24,19,18,16};
cout<<"Data yang akan dicari = ";cin>>X;
k = 0;
for(i=0;i<=9;i++)
                 {
                 if(L[i]==X)
                             {
                             cout<<"Data ditemukan di elemen \n";cin>>i;
                             k++;
                             }
                 }
if(k==0) 
{
cout<<"Data tidak ditemukan \n";


cout<<"Jumlah data yang ditemukan = "; cin >>k;
cout<<"\n\n";
}
    system("PAUSE");
    return EXIT_SUCCESS;
}


outputnya :

3. Pencarian Binary

Dev C++

source code :

#include<iostream>


using namespace std;
int main () {
 int n, angka[12], kiri, kanan, tengah, temp, key;
 bool ketemu = false;

 cout<<"Masukan jumlah data : ";
 cin>>n;

 for(int i=0; i<n; i++)
 {
  cout<<"Angka ke - ["<<i<<"] : ";
  cin>>angka[i];
 }
 for (int i=0; i<n; i++)
 {
  for(int j=0; j< n-i-1; j++)
  {
   if(angka [j] > angka [j+1])
   {
    temp=angka[j];
    angka[j]=angka[j+1];
    angka[j+1]=temp;
   }
  }
 }
 cout<<"Data yang telah diurutkan adalah : ";
 for(int i=0; i<n; i++)
 {
  cout<<angka[i]<<" ";
 }
 cout<<"\n Masukan angka yang dicari : ";
 cin>>key;

 kiri=0;
 kanan=n-1;

 while(kiri<=kanan)
 {
  tengah=(kiri + kanan)/2;
  if(key == angka[tengah])
  {
   ketemu=true;
   break;
  }
  else if (key < angka [tengah])
  {
   kanan = tengah -1;
  }
  else
  {
   kiri = tengah +1;
  }
 }
 if (ketemu == true)
  cout<<"Angka ditemukan!";
 else 
  cout<<"Angka tidak ditemukan";
  return 0;
 }


outputnya :





Pointer, Pengenalan struktur Data

Soal : Modifikasilah struktur data dari algoritma 9.1. dan algoritma 9.2.

Algoritma 

Algoritma 9.1.
Procedure Membuat Daftar Berantai(output Ptr_Kepala : PMhs)
Deklarasi
Type PMhs = ^Mhs
Mhs = Record <
Nama : String[20]
Nim : String[10]
berikut : PMhs >
Ptr_Baru : pMhs
Deskripsi
1. Ptr_Kepala Å NULL
2. NEW(Ptr_Baru)
3. Ptr_Baru->Nama Å 'ANI'
4. Ptr_Baru->Nim  Å '101'
5. Ptr_Baru->berikut Å Ptr_Kepala
6. Ptr_Kepala Å Ptr_Baru
7. Jika masih menambah simpul, kembali kelangkah 2;

Algoritma 9.2.
procedure Menampilkan Isi Daftar Berantai(input Ptr_Kepala : PMhs)
Deklarasi
Type PMhs = ^Mhs
Mhs = Record <
Nama : String[20]
Nim : String[10]
berikut : PMhs >
Deskripsi
while (Ptr_Kepala <> NULL) do
write(Ptr_Kepala->Nama)
writePtr_Kepala->Nim)
Ptr_Kepala Å Ptr_Kepala->berikut { ke node berikutnya }
endwhile


Dev C++

source code :

#include <iostream>
#include <conio.h>
#include <windows.h>
/* run this program using the console pauser or add your own getch, system("pause") or input loop */
using namespace std;
class Mhs{
public:
void Buat_berikut_list();
char Nama[20];
char Nim[10];
int Nilai;

Mhs *berikut;
};
void Mhs::Buat_berikut_list(){
Mhs *Ptr_Kepala = NULL;
Mhs *Ptr_Baru;
char lagi;
do{
Ptr_Baru= new Mhs;
cout<<"\nNama Mahasiswa : ";
cin>>Ptr_Baru->Nama;
cout<<"Nim Mahasiswa : ";
cin>>Ptr_Baru->Nim;
cout<<"Nilai Mahasiswa : ";
cin>>Ptr_Baru->Nilai;
Ptr_Baru->berikut=Ptr_Kepala;
Ptr_Kepala=Ptr_Baru;

cout<<"Tambah (y/t) : ";
cin>>lagi;

} while (lagi=='Y' || lagi=='y');
system("cls");
cout<<"\nAnda telah memasukkan data : "<<endl;
Mhs *cetak= Ptr_Kepala;
cout<<"Nama \t\t Nim \t\t Nilai Angka \t\t Nilai Huruf"<<endl;
while (cetak !=NULL){
cout<<cetak->Nama<<" \t\t"<<cetak->Nim<<" \t\t"<<cetak->Nilai<<" \t\t";

if (cetak->Nilai>=0&&cetak->Nilai<20)
cout<<"E"<<endl;
else if(cetak->Nilai>=20&&cetak->Nilai<40)
cout<<"D"<<endl;
else if(cetak->Nilai>=40&&cetak->Nilai<60)
cout<<"C"<<endl;
else if(cetak->Nilai>=60&&cetak->Nilai<80)
cout<<"B"<<endl;
else
cout<<"A"<<endl;
cetak=cetak->berikut;
}
}
int main(int argc, char** argv) {
Mhs *simpul;
simpul->Buat_berikut_list();
getch();

}

outputnya :

Array 2 Dimensi dan Kasus Matriks

2. Diberikan suatu matriks berordo n. Buatlah algoritma dan program untuk mencetak matriks identitas berodo n.
Dev C++

source code :

#include"iostream"
using namespace std;
main(){ int i,j,n;
cout<<"masukkan ordo matriks : "; cin>>n;
for(i=1;i<=n;i++){
for(j=1;j<=n;j++){
if(i==j) cout<<"1 ";
else cout<<"0 ";
}
cout<<endl;
}

}

output :

raptor 

3. Buatlah  program untuk menghasilkan transpose suatu matriks.
Dev C++

source code :

#include <iostream>
using namespace std;
main(){ int i,j,m,n,o;
cout<<"Program transpose matriks C(m,n)\nMasukkan nilai m : ";
cin>>m; cout<<"masukkan nilai n : "; cin>>n;
int mat[m][n];
for(i=0;i<m;i++){
for(j=0;j<n;j++){
cout<<"nilai C("<<i+1<<","<<j+1<<")=";
cin>>mat[i][j];
}
cout<<endl;
}
system("cls");
cout<<"matriks diatas diilustrasikan seperti gambaran dibawah ini\n\n";
for(i=0;i<m;i++){
for(j=0;j<n;j++){
cout<<mat[i][j]<<" ";
}
cout<<endl;
}
o=m; m=n; n=o;
cout<<"\nTranspose matriksnya adalah seperti gambar dibawah ini\n\n";
for(j=0;j<m;j++){
for(i=0;i<n;i++){
cout<<mat[i][j]<<" ";
}
cout<<endl;
}
}

output :

raptor 


4. Buatlah  program mengalikan matriks dengan suatu skalar (konstanta).
Dev C++

source code :

#include <iostream>
#include <stdio.h>
#include <stdlib.h>
using namespace std;
void Masukan(int *q, int brs, int klm) {
    int i, j;
    for(i = 0; i < brs; i++) {
        for(j = 0; j < klm; j++) {
            cout << " Elemen [" << (i + 1) << "][" << (j + 1) << "]? ";
            scanf("%d", (q + i * klm + j));
        }
    }
}

void Tampilkan(int *q, int brs, int klm) {
    int i, j;
    for(i = 0; i < brs; i++) {
        cout << endl;
        for(j = 0; j < klm; j++) {
            cout <<" ";
            cout << *(q + i * klm + j) << "\t";
        }
    }
    cout << endl;
}

void Kali(int *p, int *q, int *z, int bA, int kA, int bB, int kB) {
    int i, j, k;
    for(i = 0; i < bA; i++) {
        for(j = 0; j < kB; j++) {
            *(z + i * bB + j) = 0;
            for(k = 0; k < kA; k++) {
                *(z + i * bB + j) += *(p + i * kA + k) * (*(q + k * kB + j));
            }
        }
    }
}

int main() {
cout<<"\t\t\tPROGRAM    : PERKALIAN MATRIKS DENGAN SKALAR\n";
awal:
    int *a, *b, *c, brsA, klmA, brsB, klmB;
    cout<<"\n SYARAT...!!!\n";
    cout<<" Jumlah Kolom A HARUS SAMA dengan Baris B\n\n";
    cout << " Jumlah Baris Matriks A? ";
    cin >> brsA;
    cout << " Jumlah Kolom Matriks A? ";
    cin >> klmA;
    cout << " Jumlah Baris Matriks B? ";
    cin >> brsB;
    cout << " Jumlah Kolom Matriks B? ";
    cin >> klmB;
    if(klmA != brsB) {
        cout << " Perkalian TIDAK Dapat Dilakukan." << endl;
        cout << " Jumlah Kolom A TIDAK Sama Dengan Jumlah Baris B." << endl;
    } else {
        a = (int *) malloc(brsA * klmA * 4);
        b = (int *) malloc(brsB * klmB * 4);
        c = (int *) malloc(brsA * klmB * 4);

        cout << "\n Kordinat Inputan [y][x]" ;
        cout << "\n Contoh: ordo 2x2" ;
        cout << "\n [1][1]\t[1][2]\t" ;
        cout << "\n [2][1]\t[2][2]\t" ;
        cout << "\n\n Input Matriks A:\n" ;
        cout << " ----------------\n";
        Masukan(a, brsA, klmA);
        cout << "\n Input Matriks B:\n" ;
        cout << " ----------------\n";
        Masukan(b, brsB, klmB);

        cout << "\n Matriks A:" << endl;
        Tampilkan(a, brsA, klmA);
        cout << "\n Matriks B:" << endl;
        Tampilkan(b, brsB, klmB);
        Kali(a, b, c, brsA, klmA, brsB, klmB);
        cout << "\n Matriks A x B:" << endl;
        Tampilkan(c, brsA, klmB);
    }
cout<<"\n\n Apakah Anda Ingin Mengulang [Y/N] ? "  ;
char m ;
cin>>m;
if (m == 'y' || m== 'Y')
goto awal;
else if (m == 'n' || m== 'N')
{
goto akhir;
}
akhir:
cout<<"\n\n\t\t\t    \"TERMA KASIH\"";
    return 0;

outputnya :


untuk diktat bab 9, silahkan kunjungi :