Rabu, 28 Oktober 2015

Kelebihan dan Kekurangan Array


Kelebihan Array :
1. Array sangat  baik jika digunakan untuk mengakses secara acak(random). Karena secara acak index di array dapat secara langsung tanpa melalui index lain lain
2. Jika berada di suatu lokasi index sangatlah mudah untuk mencari ke index yang sama
3. Jika index array adalah nilai - nilai tersendiri dan semuanya harus terjaga, maka penggunaan penyimpanannya sangatlah tepat
4. Tidak mudah crash
5. Cepatnya mengeksekusi data
6. Tidak banyak memekan memory

kekurangan Array :
1. Ukuran file yang sangatlah besar
2. Tidak efisien dalam penggunaan memory
3. jika array bertipe homogen , maka user tidak dapat mempunyai arry diman satu index adalah karakter utamanya

keimpulan Array adalah suatu struktur yang terdiri dari sejumlah index yang tipe datanya yang sama , Array dapat juga membantu user dalam mengkategorikan (mengurutkan ) tipe data yang sama,sehingga user dapat menggunakan 3 macam array yaitu :
1. Array 1 dimensi
2. Array 2 dimensi
3. Array 3 dimensi

M.Taufiqqurahman
142406034

Array

  ARRAY

Array adalah suatu tipe data atau sekumpulan data yang sama , pengaksesan array dapat dilakukan dengan menyertakan nama array atau index atau diikuti dengan banyaknya lokasi memory yang ingin dibuat

Array 1 dimensi

Setiap elemen array dapat diakses melalui indexnya , index array secara default dimulai dari 0 dan dideklerasikannya menjadi :
Tipe_Array_nama array_[ukuran/index]

Contoh Program :
#include<iostream>

using namespace std;

main()
{
    int pilih;
    char nama [10]={'A','B','C','D','E','F','G','H','I','J','K'};
    cout<<"Pilih  no 1-10, Hasil akan menurut alphabet"<<endl;
    cout<<Pilihan : ";cin>>pilih;
    cout<<Output : "<<nama[pilih-1];
    return 0;
}

outputnya :
M.Taufiqqurahman
142406034

Selasa, 27 Oktober 2015

Pointer Pada C++


PENGERTIAN POINTER PADA C++


Pointer adalah variabel yang berisi suatu alamat memory sebagai nilai dan kalo variable biasa dia berisi nilai tertentu. Dan bisa disebut juga pointer itu berisi alamat variabke yang mempunyai nilai tertentu. Dan CPU tidak bisa mengenal huruf, maka pointer itu hanya berisikan nilai.

Maka pointer dapat disebut variabel secara langsung menunjuk ke suatu nilai tertentu,dan variabel secara tidak langsung menunjuk ke nilai. Dan dari pointer ini kita bisa mengetahui letak alamat suatu variabel. Pointer berguna untuk mentransfer data atau memindahkan suatu data dari suatu fungsi ke fungsi lainnya. Cara paling sederhana adalah memindahkan data itu sendiri. Dan cara yang sangat efisien untuk memindahkan data yang sangat besar sehingga memakan memory yang double. Inilah kegunaan pointer, kita tidak perlu memindahkan datanya, kita hanya perlu hanya mengirim alamat sehingga kita dapat merujuk ke alamat tersebut sehingga kita dapat mengetahui nilai data nya.
Bentuk umum pernyataan variabel pointer yaitu :

Type * variable_nama :
-          Type adalah tipe dasar pointer
-          Variabel name adalah nama variabel pointer
-          * adalah operator memori fungsi nya mengembalikan nilai variabel pada alamat
Operator di bagi dua yaitu :
A.      Operator pointer
B.       Ekspresi pointer :
-          Pointer aritmatika
-          Pointer pembanding
C.       Pointer versus array
D.      Pointer indeks
E.       Konstanta string dan pointer
F.        Array pointer
G.      Masalah pada pointer :
-          Pointer yang tidak diinisilisasikan
-          Null pointer
-          Kesalahan dalam pointer pembanding
-          Pengembalian nilai pointer
-          Pointer dalam pointer

Contoh program dari pointer :
#include <iostream>
using namespace std;
main (){
int koma=40,*a;
a=&koma;
cout <<" KOM A jumlah yaitu : "<<koma<<endl;
cout <<" Alamat kom A : "<<a<<endl;
}











Batara Riswandana
142406025

Senin, 26 Oktober 2015

Algoritma Bubble Sort

Algoritma Bubble Sort

Algoritma :

  1. Langkah pertama adalah membandingkan data ke-i dengan data ke-i+1 atau data setelahnya.
  2. Kemudian ketika data yang diberikan tidak sesuai, maka tukar (data ke-i adalah data ke-1+1 dan data ke-1+1 adalah data ke-i. Maksud data tidak sesuai adalah ketika kita menginginkan algoritma menghasilkan data dengan urutan ascending, kondisi yang tidak sesuai adalah data ke-i lebih besar data ke-i+1, dan sebaliknya untuk urutan descending.
  3. Membandingkan data ke-i+1 dengan data ke-i+2. Yaitu dengan membandingkan bilangan ini sampai data yang terakhir. Sebagai contoh : 1 dengan 2, 2 dengan 3, 3 dengan 4, 4 dengan 5, sampai seterusnya.
  4. Selesai satu iterasi, yaitu ketika kita sudah selesai membandingkan antara n+1 dengan n. Dan melanjutkan ke iterasi berikutnya seperti mulai dari data ke-1 dengan data ke-2, dan seterusnya.
  5. Proses akan berhenti jika tidak ada pertukaran dalam satu iterasi. Dan menghasilkan output berupa urutan data angka yang telah kita masukkan sebelumnya, secara ascending ataupun descending


Berikut contoh penggalan program Bubble Sort yang memiliki batasan.


#include<iostream>
using namespace std;

int main()
{
    int i, j, a, simpan, angka[50];

        cout<<"PROGRAM BUBBLE SORT BERBATAS"<<endl<<endl;
        cout<<"Masukkan batas : ";
        cin>>a;
    for (int i=0; i<a; i++){

        cout<<"Masukkan data angka : ";
        cin>>angka[i];
    }

    cout<<"Data sebelum diurutkan : "<<endl<<endl;
    for(i=0; i<a; i++){
        cout<<"  "<<angka[i];
    }
    cout<<endl;

    for(i=0; i<6; i++){
        for(j=i+1; j<a; j++)
        if(angka[i]>angka[j]){
            simpan=angka[i];
            angka[i]=angka[j];
            angka[j]=simpan;
        }
    }
cout<<"Data setelah diurutkan : "<<endl<<endl;
for(i=0; i<a; i++){
    cout<<"  "<<angka[i];
}
return 0;
}



Hasil output program :







Fachriza Agung
142406027


 

Kelebihan Dan Kekurangan Metode Bubble Sort

Kelebihan Dan Kekurangan Metode Bubble Sort


Kelebihan Bubble Sort :
 
  1.  Proses penghitungan Bubble sort merupakan metode yang paling sederhana
  2. Algoritma Bubble Sort mudah dipahami
  3. Langkah atau tahapan dalam pengurutan data sangat sederhana.
 
 
Kekurangan Bubbe Sort :
 
  1.  Proses penghitungan Bubble Sort menggunakan metode pengurutan termasuk paling tidak efisien walaupun dianggap sederhana. Karena proses pengurutan data dilakukan dengan tahapana satu - satu, mulai dari data paling awal sebelah kiri, sampai data terakhir
  2. Ketika data yang kita punya banyak atau dalam jumlah yang besar, maka proses penghitungan akan semakin lama dan lambat. Karena proses pengurutan data secara tunggal (satu - satu).
  3. Jumlah pengulangan akan tetap sama sampai ke data yang terakhir, walaupun sebagian data yang ada telah terurut.
 
 
Berikut penggalan program Bubble Sort.
 
 
#include<iostream>
using namespace std;

int main()
{
    int i, j, simpan, angka[50];


    for (int i=0; i<7; i++){

        cout<<"Masukkan data angka : ";
        cin>>angka[i];
    }

    cout<<"Data sebelum diurutkan : "<<endl<<endl;
    for(i=0; i<7; i++){
        cout<<"  "<<angka[i];
    }
    cout<<endl;

    for(i=0; i<6; i++){
        for(j=i+1; j<7; j++)
        if(angka[i]>angka[j]){
            simpan=angka[i];
            angka[i]=angka[j];
            angka[j]=simpan;
        }
    }
cout<<"Data setelah diurutkan : "<<endl<<endl;
for(i=0; i<7; i++){
    cout<<"  "<<angka[i];
}
return 0;
}

Hasil output program :

 
 


Fachriza Agung
142406027

Bubble Sort

BUBBLE SORT

Bubble sort adalah suatu proses atau tahapan dalam pengurutan data dari data terkecil ke data terbesar ataupun sebaliknya, dari data terbesar ke data terkecil dengan menggunakan metode sorting yang sederhana. Data tersebut berupa elemen angka - angka yang akan diurutkan dan di sorting. Proses pengurutan data dilakukan ketika semua kriteria telah terpenuhi, dan tahapan pengurutan data yaitu dengan membandingkan sebuah bilangan awal yang dimulai dari sebelah kiri, dengan seluruh bilangan yang terletak setelah bilangan tersebut.



Berikut contoh program dari Bubble Sort.
 

#include<iostream>
using namespace std;

int main()
{   int a,k,c,d,g;
    k=4;
    int b[4];

    cout<<"CONTOH PROGRAM BUBBLE SORT"<<endl;
    cout<<"Mengurutkan Angka Dari Besar Ke Kecil"<<endl<<endl;
    for(a=0;a<k;a++)
    {
        cout<<"Masukkan Angka "<<a+1<<" : ";cin>>b[a];
    }
    for(a=0;a<k-1;a++)
    {

        for(d=a+1;d<k;d++)
        {
        c=a;
            if(b[c]<b[d])
            {
                c=d;
            }
        g=b[c];
        b[c]=b[a];
        b[a]=g;
        }

    }
    cout<<"\nAngka Setelah Diurutkan Menjadi : ";
    for(a=0;a<k;a++)
    {
        cout<<b[a]<<" ";
    }
}

 

Hasil output program bubble sort :



Fachriza Agung
142406027

Array 2 Dimensi

ARRAY 2 DIMENSI

Array 2 dimensi merupakan sebuah variabel yang menyimpan sekumpulan data yang memiliki tipe sama dan elemen yang akan diakses melalui 2 indeks atau subskrip yaitu indeks baris dan indeks kolom.

Bentuk umum pendeklarasian : nama_array[jumlah_elemen_baris][jumlah_elemen_kolom];
Contoh programnya dalam C++ :

#include<iostream>
using namespace std;

int main()
{
int a[2][3], b, c;

for(b=0;b<=1;b++)
{
for(c=0;c<=2;c++)
{
cout<<"Nilai Baris "<<b+1<<" Kolom "<<c+1<<" : ";
cin>>a[b][c];
}
cout<<endl;
}
for(b=0;b<=1;b++)
{
for(c=0;c<=2;c++)
{
cout<<a[b][c]<<" ";
}
cout<<endl;
}
return 0;
}

Hasil output dari program tsb :













Muhammad Khairul Muaz
142406028

Array 1 Dimensi

ARRAY 1 DIMENSI
 
Array 1 dimensi merupakan sebuah variabel yang menyimpan sekumpulan data yang memiliki tipe sama dan elemen yang akan diakses hanya melalui 1 indeks atau subskrip.

Bentuk umum pendeklarasian : nama_array[jumlah_elemen];

Contoh programnya dalam C++ :

#include<iostream>
using namespace std;

int main()
{
int nil[5];
int x;

for(x=1;x<6;x++)
{
cout<<" Data : ";
cin>>nil[x];
}
for(x=1;x<6;x++)
{
cout<<"Nilai yang anda masukkan ke : "<<x<<" = "<<nil[x]<<endl;
}
return 0;


Nama :Muhammad Khairul Muaz
NIM  :142406028


Minggu, 25 Oktober 2015

Array 3 Dimensi


ARRAY 3 DIMENSI

Pengertian :
Array 3 dimensi bisa digambarkan sebagai suatu benda ruang. Untuk deklarasi pada array 3 dimensi tidak jauh berbeda pada array 1 dimensi dan 2 dimensi, kecuali pada indeks array nya.

Bentuk umum array 3 dimensi :
Bentuk umum dari array dimensi 3 pada C++ bisa dilihat sebagai berikut :
tipe data nama variabel [jumlah baris][jumlah kolom][panjang karakter].

Contoh program sederhana array 3 dimensi pada C++ :

#include<iostream>
using namespace std;

int main(){

char data [2][3][6] = {"1", "2", "3", "4", "5", "6"};

int i,j;

for(i=0; i<2; i++)
{
for(j=0; j<3; j++)
{
cout<<data[i][j];
}
cout<<"\n";
}
return 0;
}

Hasil output dari program tersebut :














Muhammad Alif Djordy
142406036

Array Multi-Dimensi

ARRAY MULTI-DIMENSI


Pengertian array Multi-dimensi :
Array Multi-dimensi merupakan array yang hampir sama dengan array 2 dimensi namun array Multi-dimensi dapat memiliki memori yang lebih besar. Tidak seperti array 2 dimensi atau 1 dimensi, array Multi-dimensi ini tidak terlalu sering digunakan karena array Multi-dimensi ini sering digunakan jika dimensi yang dibutuhkan dalam jumlah besar.

Bentuk umum dari array Multi-dimensi :
Array Multi-dimensi merupakan array yang mempunyai ukuran lebih dari dua. Bentuk pendeklarasian array multidimensi sama saja dengan deklarasi array dimensi satu maupun dimensi dua.
Deklarasi array :
Tipe_array nama_array [ukuran 1][ukuran 2] . . . [ukuran N]

Berikut contoh program sederhana array Multi-dimensi pada C++ :

#include <iostream>
using namespace std;

main()
{
int nilai[5][3]={{7,8,9},{3,4,7},{7,4,9},{5,9,4},{6,8,5}};
int m,n=0;
cout<<"Daftar Nilai\n";
cout<<"----------\n";
cout<<"|No|M|F|S|\n";
cout<<"----------\n";
for(n=0;n<5;n++)
{
cout<<"|"<<(n+1)<<" |";
for(m=0;m<3;m++)
cout<<nilai[n][m]<<"|";
cout<<"\n";
}
cout<<"----------";
return 0;
}

Hasil output dari program tsb :
 












Muhammad Alif Djordy
142406036