SlideShare una empresa de Scribd logo
1 de 47
Algoritma dan
Struktur Data


 ARRAY DAN
  STRING

      JURUSAN TEKNIK ELEKTRO
 UIN SUNAN NGUNUNG DJATI BANDUNG
               2012
Tujuan Pembelajaran
                         Mahasiswa mampu
Mahasiswa dapat lebih
                        mengimplementasikan
 memahami tentang
                            array dalam
       Array
                           pemrograman


             Mahasiswa mampu
               menyelesaikan
              masalah dengan
             menggunakan array.
Struktur
                    Data
                               Pemaham
      String
                                an Array



 Array
                   Materi           Deklarasi
Multidim
                pembelajaran         Array
 ensi



    Array Dua                   Elemen
     Dimensi                     array
                   Array
                    Satu
                  Dimensi
Overview

algoritma



                 Program
                Komputer
Struktur
  data
Syarat Program yang Baik
• Program yang baik haruslah memenuhi
  beberapa kriteria, antara lain:
1. Program haruslah sesuai dengan tujuan dan
  memenuhi spesifikasi yang telah ditentukan.
2. Fleksibel
3. Tidak mengandung kesalahan
4. Didokumentasi secara baik
5. Cepat dalam waktu penggunaannya
6. Efesien dalam penggunaan memori komputer
Memori
• Memori merupakan tempat
  software berada
  – Jadi, isinya dapat berupa Sistem
    Operasi, program atau data
  – Jika ditelusuri lebih rinci lagi, setiap
    lokasi di memori dapat berisi
    perintah dan/atau data (angka,
    alamat, nilai, dsb.)
• Memori merupakan subsistem
  komputer yang sering
  menjadi fokus pemrogram:
  – Temporary storage area dalam hal
    ini RAM
Review Sistem Komputer
                                  Alamat
                                  (disederhanakan)
                                                   RAM
      OUTPUT
      (CONSOLE)                            0
                                           1
                                           2
                                           3
                                           4
HDD     CPU                                5
                                          …




                                                     ...



                                                           ...
                                          …
                                       81345
      INPUT                            81346
      (KEYBOARD)                       81347

                                                     ...



                                                           ...
                   IF2031-Algoritma dan Struktur
                                                                 7
                   Data/Hamonangan Situmorang
Review Sistem Komputer
Proses penerjemahan bahasa C/C++ ke bahasa mesin
       Keterangan: bahasa mesin di bawah-kanan ini sebenarnya berupa angka-
        angka biner (‘dimanusiawikan’ untuk memudahkan pemahaman)



x=1;                        set memory[801] to hold 00000001

i=0;                        set memory[802] to hold 00000000

while (i!=10) {             if memory[802] = 10 jump to inst #8

    i++;                    increment memory[802]


                        {
    x=x*2;                  set memory[803] to 2 times memory[801]

}                           put memory[803] in to memory[801]

                            jump to instruction #3

printf("%d",x);             print memory[801]
                             IF2031-Algoritma dan Struktur
                                                                          8
                             Data/Hamonangan Situmorang
Review Sistem Komputer
• Biasanya, proses penterjemahan itu beberapa
  tahap
        – Melalui bahasa assembly
       Bahasa C            Bahasa Assembly                                  Bahasa Mesin



x=1;                          ST 1,[801]                            00000000001001011101001100000000
                              ST 0,[802]                            00000000001001001101010000000000
i=0;
                    TOP:      BEQ [802],10,BOT                      00000000100010100100100111110000
while (i!=10) {               INCR [802]                            00000000010001000101010000000000
                                                                    00000000010010001010011110100011
    i++;                      MUL [801],2,[803]
                                                                    00000000111001011010101100000010
    x=x*2;                    ST [803],[801]                        00000000001010010000000000000000
                              JMP         TOP                       00000000110101010000000000000000
}
                    BOT:      LD A,[801]                            00000000110101001010100000000000
printf("%d",x);               CALL PRINT                            00000000100100010100010000000000



                                    IF2031-Algoritma dan Struktur
                                                                                                 9
                                    Data/Hamonangan Situmorang
Pengertian Struktur Data
• A data structure is a way of organizing input
  data and operations which can be performed
  on this data (ex: add, delete, search an
  elemen).
• Struktur data adalah cara pengaturan data
  agar dapat disimpan memori komputer secara
  efisien
• Struktur data adalah pengaturan data didalam
  memori komputer.
Struktur Data
• Tujuannya : Supaya lebih mudah/efisien dalam
  pengaksesan/pemrosesan data tersebut.

• Secara umum, terdapat beberapa struktur data:
• Static -> Pengalokasian memori statis : ruang
  memori yang dipakai oleh data tidak dapat dihapus
  bila data tersebut sudah tidak digunakan lagi pada
  saat program dijalankan.
• Dinamic -> Pengalokasian memori dinamis
Struktur Data
Basic         Static    Dinamic
                          Linked
Integer        Array
                            list

Double         Struct     Queue


boolean                   Stacks


                          trees
ARRAY
Latar Belakang Array
• Sejauh ini Program yang kita pelajari dan yang kita
  buat masih sangat terbatas, hanya berupa pemberian
  satu nilai pada satu variabel
• Padahal sering kali kita perlu untuk meng-assign
  ataupun memanipulasi banyak nilai ke sekelompok
  variabel
• Sebagai contoh jika anda diminta membuat program
  untuk menyimpan 6000 nilai yang berbeda...
• Berarti program Anda membutuhkan 6000 variabel
  berbeda, maka daripada Anda susah-susah mencari
  nama untuk tiap variabel Anda,   gunakanlah
  array!!.
                                                        14
Pemahaman Array
• Array adalah sekumpulan data
  yang memiliki tipe yang sama.
• Elemen-elemen array tersusun
  secara berurutan dalam
  memori
• Array memiliki alamat yang
  besebelahan/berdampingan
  tergantung lebar tipe datanya.   a[0]
• Elemen-elemen array dapat        a[1]
  diakses secara random di         a[2]
  dalam memori.                    a[3]
• Array dapat berupa array 1       a[4]
  dimensi, 2 dimensi, bahkan n-    a[5]
  dimensi.                         anu
• Contoh penggunaan array :
   – Kumpulan nama mahasiswa
     pada satu kelas
   – Kumpulan alfabet
Contoh Kasus
 Untuk lebih memahami tentang manfaat array
 marilah kita analisa contoh program berikut :

• Program untuk memasukkan 3 nilai input dari
  user dan menampilkannya ke layar.
Tanpa Array
              3 nilai = 10 Baris




          TIDAK PRAKTIS !!!
Dengan Array
                 Hanya 6 Baris



               PRAKTIS &
               EFFISIEN!



           Tidak perlu menambah
           perintah jika data lebih
           banyak.
Struktur Array
          berupa bilangan bulat yang terurut secara
          ascending dimulai dari nol sampai n-1

 index    digunakan untuk mengakses element array.
          Dimana n adalah panjang dari array.


                                               Array Satu Dimensi
                          array                Array Dua Dimensi
                                               Array Multi Dimens

element
          digunakan untuk menyimpan data. Jenis data yang dapat disimpan
               tergantung pada tipe data yang diberikan array.
Ilustrasi Array
                                         Penjelasan :
                                            Nama array adalah bil.
bil[0]                                      Terdiri dari 5 element.
bil[1]                                      Element= 3,4,5,6,7
                                            index = 0,1,2,3,4
                                          (panjang array (n) =5)
bil[4]                                      – data 3 disimpan pada element
                                              index ke-0
                                            – data 4, disimpan pada element
            element        index              index ke-1
                                            – data 5 (element index ke-?)
                                            – data terakhir (element index
                                              ke-?)
         int bil [5] = 3, 4, 5, 6, 7 ;
Deklarasi (Array 1 dimensi)
• Bentuk penulisan perintah :
         tipe_data nama_array [jumlah_maks_data];
  – tipe_data : tipe data yang ada di C/C++, contoh : int, float, char,
    dll.
  – nama_array : identifier, aturan sama seperti aturan penamaan
    variabel.
  – jumlah_maks_data : banyak data yang disimpan pada array.
• Contoh deklarasi array : char alfabet[26];
  (membuat array bernama alfabet, dengan maksimal data yang bisa
  ditampung sebanyak 26 bertipe char)
Contoh deklarasi array
double nilai[10];
(membuat array bernama nilai, dengan maksimal data yang bisa
ditampung sebanyak 10 bertipe double)
• Representasi :
  nilai[0]   nilai[1]   nilai[2]   nilai[3]   nilai[4]   nilai[5]   nilai[9]



  Index element yang bisa diakses dari 0 sampai 9.
Contoh Program
• Deklarasi array
Latihan
1. Deklarasikan array untuk menyimpan data
   angka {1,2,3,4,5,6,7,8,9,10}.
2. Deklarasikan array untuk menyimpan data
   {c,i,n,t,a}.
3. Deklarasikan array untuk menyimpan data
   {1.2, 3.4, 5.6, 7.8, 9.0}.
Inisialisasi (array 1 dimensi)
• Pemberian nilai pada array menggunakan index.
• Bentuk penulisan perintah :
          nama_array[index] = nilai;
• Penjelasan :
  nama_array = sesuai dengan nama yang telah
  dideklarasikan.
  index = disesuaikan dengan index element yang ingin
  diakses.
  nilai = disesuaikan dengan tipe data.
Contoh inisialisasi array
• Contoh inisialisasi pada array nilai :
  nilai[0] = 5;
  nilai[9] = 100;
  nilai[-1] = 50; error!
Deklarasi + Inisialisasi
• Inisialisasi array juga dapat dilakukan ketika deklarasi.
• Contoh :
  int nilai[] = {1,2,3,4,5};
  membuat array bernama nilai dengan jumlah
  element 5 sekaligus inisialisasi. Dimana :
  data element index ke-0 = 1
  data element index ke-1 = 2
  data element index ke-2 = 3
  data element index ke-3 = 4
  data element index ke-4 = 5
Deklarasi + Inisialisasi
• Contoh deklarasi sekaligus inisialisasi pada array tipe
  char.
  char alfabet[] = {„a‟,‟b‟,‟c‟};
  membuat array bernama nilai dengan jumlah
  element 5 sekaligus inisialisasi. Dimana :
  data element index ke-0 = a
  data element index ke-1 = b
  data element index ke-2 = c
Contoh Program (1)
Pengaksesan Array
• Pengaksesan data pada element array
  menggunakan index.
• Bentuk penulisan perintah :

             nama_array[index];
• Penjelasan :
  nama_array = sesuai dengan nama yang telah
  dideklarasikan.
  index = disesuaikan dengan index element yang ingin
  diakses.
Contoh pengaksesan Array
• Menggunakan variabel penampung data :
  char huruf;
  huruf = alfabet[0];
  (variabel huruf berisi data element array index
  ke-0 dari array alfabet, yaitu a).
• Menggunakan printf :
  printf(“%c”, alfabet[0]);
  (akan mencetak huruf a ke-layar).
Contoh program (2)
• Pengaksesan data menggunakan printf




                                        32
Contoh Program (3)
• Deklarasi sekaligus inisialisasi, dan
  pengaksesan data menggunakan kombinasi
  printf dan perulangan




                                           33
Contoh Program (5)




                     34
Latihan
1. Buatlah array untuk menyimpan data bilangan
   {1,2,3,4,5,6,7,8,9,10} dan tampilkan elemen ke 2 dan
   5.
2. Buatlah array bertipe integer yang dapat menampung
   data maksimal 5, kemudian tampilkan alamat masing-
   masing elemen array tersebut
3. Buatlah array untuk menyimpan data {m,e,r,a,p,i} dan
   tampilkan elemen ke 0,1,2.
4. Buatlah array untuk menyimpan data {1.2, 3.4, 5.6,
   7.8, 9.0} dan tampilkaan elemen ke awal dan akhir.
Latihan
4. Buatlah array untuk menyimpan 50 bilangan ganjil
    mulai dari 1 (gunakan perulangan), kemudian
    tampilkan isinya ke layar.
5. Buatlah array untuk menyimpan angka 1 s/d 100.
   (gunakan perulangan)
6. Buatlah array untuk menyimpan 50 angka genap
   pertama. (gunakan perulangan)
7. Buatlah program yang akan membaca 10 karakter
   dari user dan disimpan dalam array 10 elemen.
Latihan
8. Buatlah sebuah array yang menyimpan
   karakter {u,i,n,s,a,g,e,d,e,b,a,n,d,u,n,g}.
   Perintahkan user menebak satu karakter
   untuk dibandingkan dengan array tersebut.
   Jika input user sama dengan salah satu
   karakter pada array maka tampilkan index
   dari karakter tersebut. Jika tidak ada yang
   sama tampilkan pesan “karakter tidak ada”.
Ilustrasi Array 1 Dimensi char

 0   1      2      3      4       5          6      7
                                                               indeks



                                                               value



                                                               alamat
21da 21db   21dc   21dd    21de       21df   21e0       21e1




                       %x adalah hexadesimal
Kalau lampumu tak bersumbu
                           dan tak berminyak, jangan
Kalaulah dirimu tidak            bayangkan api.
mempraktekkan dan         Kalau gelasmu retak, jangan
membuat source code      mimpi menuangkan minuman.
   nya..... Jangan       Kalau mentalmu rapuh, jangan
bayangkan nilai A      rindukan rasukan tenaga dalam.
                        Kalau kaca jiwamu masih kumuh
                          oleh kotoran-kotoran dunia,
                           jangan minta cahaya akan
                          memancarkan dengan jernih
                                 atasmu. (EAN)
Array Dua Dimensi
• C/C++ mendukung array multidimensi.
• Array satu dimensi berpadanan dengan vektor
• Array dua dimensi berpadanan dengan matrik
Array 2 Dimensi
• Deklarasi Array:
   – int data [2][3];
   – char a[2][3];
• Inisialisasi Array:
   – data[0][0] = 1;
   – int matrikA [2][3] = {{1,2,3},{4,5,6}};
Pengaksesan Array:
   – printf("%d",matrikA[i][j]);
Contoh Array Dua Dimensi
Arrray 2 dimensi
• char a[3][5]
• Sama dengan matriks berukuran 3x5
• Pada kenyataan di memory:
LATIHAN
• Buatlah Array datamahasiswa, berdimensi 2,
  dengan data sebagai berikut
    NIM       NILAI

    29801     75

    29802     80

    29803     85
LATIHAN
2. Buatlah sebuah array dua dimensi untuk menyimpan
    sebuah kata bahasa indonesia beserta kata padanan
    bahasa inggrisnya.
    petunjuk :
  –   Kata yg disimpan diberikan 5 kata.
  –   Element 1 digunakan untuk menyimpan kata bahasa
      indonesia
  –   Element 2 digunakan untuk menyimpan kata bahasa
      inggris
  –   Cobalah mengakses kata bahasa inggris dari kata bahasa
      indonesia yang dipilih pleh user.
Array Dimensi Banyak
• Array ini seperti array dimensi dua tetapi
  dapat memiliki ukuran yang lebih besar.
  Sebenarnya array ini tidak terlalu sering
  digunakan, tetapi sewaktu-waktu jika dimensi
  yang dibutuhkan banyak, maka tentu saja
  array ini memgang peranan penting
• Contoh :
• int dataktp [2][7][8][5];
Referensi
• Rinaldi Munir, “Algoritma dan Pemrograman
  dalam Bahasa Pascal dan C”
• Andri Kristanto, Algoritma & Struktur Data
  dengan C++, Graha Ilmu, 2009
• Hamonangan Situmorang, “Array dalam
  Bahasa C”, Materi Kuliah, STEI ITB
• Dari berbagai sumber

Más contenido relacionado

La actualidad más candente

Siklus pengambilan (fetch cycle)
Siklus pengambilan (fetch cycle)Siklus pengambilan (fetch cycle)
Siklus pengambilan (fetch cycle)Lusiana Diyan
 
Tipe manajemen memori pada sistem operasi
Tipe manajemen memori pada sistem operasi Tipe manajemen memori pada sistem operasi
Tipe manajemen memori pada sistem operasi Shary Armonitha
 
Jenis dan proses interupsi
Jenis dan proses interupsiJenis dan proses interupsi
Jenis dan proses interupsilaurensius08
 
Penyederhanaan Karnaugh Map
Penyederhanaan Karnaugh MapPenyederhanaan Karnaugh Map
Penyederhanaan Karnaugh MapCheria Asyifa
 
Perbandingan algoritma brute force , divide and conquer
Perbandingan algoritma brute force , divide and conquerPerbandingan algoritma brute force , divide and conquer
Perbandingan algoritma brute force , divide and conquerohohervin
 
Sistem input output
Sistem input outputSistem input output
Sistem input outputKruduk Bisa
 
HALF AND FULL SUBTRACTOR
HALF AND FULL SUBTRACTOR HALF AND FULL SUBTRACTOR
HALF AND FULL SUBTRACTOR Delmaqo Delmaqo
 
MOTHERBOARD dan fungsi komponennya
MOTHERBOARD dan fungsi komponennyaMOTHERBOARD dan fungsi komponennya
MOTHERBOARD dan fungsi komponennyaziko ardiansyah
 
Analisis Algoritma - Strategi Algoritma Dynamic Programming
Analisis Algoritma - Strategi Algoritma Dynamic ProgrammingAnalisis Algoritma - Strategi Algoritma Dynamic Programming
Analisis Algoritma - Strategi Algoritma Dynamic ProgrammingAdam Mukharil Bachtiar
 
Kriptografi - Serangan Terhadap Kriptografi
Kriptografi - Serangan Terhadap KriptografiKriptografi - Serangan Terhadap Kriptografi
Kriptografi - Serangan Terhadap KriptografiKuliahKita
 
Pertemuan 9 pengalamatan
Pertemuan 9 pengalamatanPertemuan 9 pengalamatan
Pertemuan 9 pengalamatanBuhori Muslim
 
STATISTIKA-Regresi dan korelasi
STATISTIKA-Regresi dan korelasiSTATISTIKA-Regresi dan korelasi
STATISTIKA-Regresi dan korelasiYousuf Kurniawan
 
Graf ( Matematika Diskrit)
Graf ( Matematika Diskrit)Graf ( Matematika Diskrit)
Graf ( Matematika Diskrit)zachrison htg
 

La actualidad más candente (20)

Siklus pengambilan (fetch cycle)
Siklus pengambilan (fetch cycle)Siklus pengambilan (fetch cycle)
Siklus pengambilan (fetch cycle)
 
Tipe manajemen memori pada sistem operasi
Tipe manajemen memori pada sistem operasi Tipe manajemen memori pada sistem operasi
Tipe manajemen memori pada sistem operasi
 
Jenis dan proses interupsi
Jenis dan proses interupsiJenis dan proses interupsi
Jenis dan proses interupsi
 
Penyederhanaan Karnaugh Map
Penyederhanaan Karnaugh MapPenyederhanaan Karnaugh Map
Penyederhanaan Karnaugh Map
 
Perbandingan algoritma brute force , divide and conquer
Perbandingan algoritma brute force , divide and conquerPerbandingan algoritma brute force , divide and conquer
Perbandingan algoritma brute force , divide and conquer
 
Sistem input output
Sistem input outputSistem input output
Sistem input output
 
Pert.4 set instruksi arm
Pert.4 set instruksi armPert.4 set instruksi arm
Pert.4 set instruksi arm
 
bahasa pemrograman perangkat keras VHDL
bahasa pemrograman perangkat keras VHDLbahasa pemrograman perangkat keras VHDL
bahasa pemrograman perangkat keras VHDL
 
HALF AND FULL SUBTRACTOR
HALF AND FULL SUBTRACTOR HALF AND FULL SUBTRACTOR
HALF AND FULL SUBTRACTOR
 
MOTHERBOARD dan fungsi komponennya
MOTHERBOARD dan fungsi komponennyaMOTHERBOARD dan fungsi komponennya
MOTHERBOARD dan fungsi komponennya
 
Abc01 algoritma-dan-flowchart
Abc01 algoritma-dan-flowchartAbc01 algoritma-dan-flowchart
Abc01 algoritma-dan-flowchart
 
Analisis Algoritma - Strategi Algoritma Dynamic Programming
Analisis Algoritma - Strategi Algoritma Dynamic ProgrammingAnalisis Algoritma - Strategi Algoritma Dynamic Programming
Analisis Algoritma - Strategi Algoritma Dynamic Programming
 
Graf Pohon
Graf PohonGraf Pohon
Graf Pohon
 
Kriptografi - Serangan Terhadap Kriptografi
Kriptografi - Serangan Terhadap KriptografiKriptografi - Serangan Terhadap Kriptografi
Kriptografi - Serangan Terhadap Kriptografi
 
Modul Pemrograman Bahasa Assembly
Modul Pemrograman Bahasa AssemblyModul Pemrograman Bahasa Assembly
Modul Pemrograman Bahasa Assembly
 
Bab 3 flip flop
Bab 3   flip flopBab 3   flip flop
Bab 3 flip flop
 
Pertemuan 9 pengalamatan
Pertemuan 9 pengalamatanPertemuan 9 pengalamatan
Pertemuan 9 pengalamatan
 
STATISTIKA-Regresi dan korelasi
STATISTIKA-Regresi dan korelasiSTATISTIKA-Regresi dan korelasi
STATISTIKA-Regresi dan korelasi
 
Graf ( Matematika Diskrit)
Graf ( Matematika Diskrit)Graf ( Matematika Diskrit)
Graf ( Matematika Diskrit)
 
Jaringan perceptron
Jaringan perceptronJaringan perceptron
Jaringan perceptron
 

Similar a Week 4-array dan string

Array_dalam_Bahasa_C_bahan4.ppt
Array_dalam_Bahasa_C_bahan4.pptArray_dalam_Bahasa_C_bahan4.ppt
Array_dalam_Bahasa_C_bahan4.pptfauziahUG
 
Kontrak Perkuliahan
Kontrak PerkuliahanKontrak Perkuliahan
Kontrak Perkuliahanformatik
 
Kontrak Perkuliahan
Kontrak PerkuliahanKontrak Perkuliahan
Kontrak Perkuliahanformatik
 
Penjelasan strukturdata
Penjelasan strukturdataPenjelasan strukturdata
Penjelasan strukturdatadonasiilmu
 
Pertemuan vi
Pertemuan viPertemuan vi
Pertemuan viwindi1
 
Pengenalan matlab
Pengenalan matlab Pengenalan matlab
Pengenalan matlab Kinko Gua
 
Data structure bab 1
Data structure   bab 1Data structure   bab 1
Data structure bab 1Aviv Barkah
 
6 adp array (larik)
6   adp array (larik)6   adp array (larik)
6 adp array (larik)Fisma Ananda
 
6 adp array (larik)
6   adp array (larik)6   adp array (larik)
6 adp array (larik)Faisal Amir
 
6 adp array (larik)
6   adp array (larik)6   adp array (larik)
6 adp array (larik)Avenzz Venzz
 
6.adp array (larik)
6.adp array (larik)6.adp array (larik)
6.adp array (larik)Hardini_HD
 
Sd pertemuan 1 & 2
Sd   pertemuan 1 & 2Sd   pertemuan 1 & 2
Sd pertemuan 1 & 2biedoen
 
Sd pertemuan 1 & 2
Sd   pertemuan 1 & 2Sd   pertemuan 1 & 2
Sd pertemuan 1 & 2muissyahril
 
Sd pertemuan 1 & 2
Sd   pertemuan 1 & 2Sd   pertemuan 1 & 2
Sd pertemuan 1 & 2muissyahril
 

Similar a Week 4-array dan string (20)

Array_dalam_Bahasa_C_bahan4.ppt
Array_dalam_Bahasa_C_bahan4.pptArray_dalam_Bahasa_C_bahan4.ppt
Array_dalam_Bahasa_C_bahan4.ppt
 
Struktur data
Struktur dataStruktur data
Struktur data
 
Kontrak Perkuliahan
Kontrak PerkuliahanKontrak Perkuliahan
Kontrak Perkuliahan
 
Kontrak Perkuliahan
Kontrak PerkuliahanKontrak Perkuliahan
Kontrak Perkuliahan
 
Laporan praktikum jawaban 10 algoritma(1)
Laporan praktikum jawaban 10 algoritma(1)Laporan praktikum jawaban 10 algoritma(1)
Laporan praktikum jawaban 10 algoritma(1)
 
Penjelasan strukturdata
Penjelasan strukturdataPenjelasan strukturdata
Penjelasan strukturdata
 
Array & dimensi array
Array & dimensi arrayArray & dimensi array
Array & dimensi array
 
Pertemuan IV Teori
Pertemuan IV TeoriPertemuan IV Teori
Pertemuan IV Teori
 
Pertemuan vi
Pertemuan viPertemuan vi
Pertemuan vi
 
Pengenalan matlab
Pengenalan matlab Pengenalan matlab
Pengenalan matlab
 
207 p09
207 p09207 p09
207 p09
 
Data structure bab 1
Data structure   bab 1Data structure   bab 1
Data structure bab 1
 
6 adp array (larik)
6   adp array (larik)6   adp array (larik)
6 adp array (larik)
 
6 adp array (larik)
6   adp array (larik)6   adp array (larik)
6 adp array (larik)
 
6 adp array (larik)
6   adp array (larik)6   adp array (larik)
6 adp array (larik)
 
6 adp array (larik)
6   adp array (larik)6   adp array (larik)
6 adp array (larik)
 
6.adp array (larik)
6.adp array (larik)6.adp array (larik)
6.adp array (larik)
 
Sd pertemuan 1 & 2
Sd   pertemuan 1 & 2Sd   pertemuan 1 & 2
Sd pertemuan 1 & 2
 
Sd pertemuan 1 & 2
Sd   pertemuan 1 & 2Sd   pertemuan 1 & 2
Sd pertemuan 1 & 2
 
Sd pertemuan 1 & 2
Sd   pertemuan 1 & 2Sd   pertemuan 1 & 2
Sd pertemuan 1 & 2
 

Último

1. Kisi-kisi PAT IPA Kelas 7 Kurmer 2024
1. Kisi-kisi PAT IPA Kelas 7 Kurmer 20241. Kisi-kisi PAT IPA Kelas 7 Kurmer 2024
1. Kisi-kisi PAT IPA Kelas 7 Kurmer 2024DessyArliani
 
Prakarsa Perubahan dan kanvas ATAP (1).pptx
Prakarsa Perubahan dan kanvas ATAP (1).pptxPrakarsa Perubahan dan kanvas ATAP (1).pptx
Prakarsa Perubahan dan kanvas ATAP (1).pptxHaryKharismaSuhud
 
Pengenalan Figma, Figma Indtroduction, Figma
Pengenalan Figma, Figma Indtroduction, FigmaPengenalan Figma, Figma Indtroduction, Figma
Pengenalan Figma, Figma Indtroduction, FigmaAndreRangga1
 
MODUL AJAR IPAS KELAS 3 KURIKULUM MERDEKA.pdf
MODUL AJAR IPAS KELAS 3 KURIKULUM MERDEKA.pdfMODUL AJAR IPAS KELAS 3 KURIKULUM MERDEKA.pdf
MODUL AJAR IPAS KELAS 3 KURIKULUM MERDEKA.pdfAndiCoc
 
PANDUAN PENGEMBANGAN KSP SMA SUMBAR TAHUN 2024 (1).pptx
PANDUAN PENGEMBANGAN KSP SMA SUMBAR TAHUN 2024 (1).pptxPANDUAN PENGEMBANGAN KSP SMA SUMBAR TAHUN 2024 (1).pptx
PANDUAN PENGEMBANGAN KSP SMA SUMBAR TAHUN 2024 (1).pptxfitriaoskar
 
Aksi Nyata Sosialisasi Profil Pelajar Pancasila.pdf
Aksi Nyata Sosialisasi Profil Pelajar Pancasila.pdfAksi Nyata Sosialisasi Profil Pelajar Pancasila.pdf
Aksi Nyata Sosialisasi Profil Pelajar Pancasila.pdfJarzaniIsmail
 
power point bahasa indonesia "Karya Ilmiah"
power point bahasa indonesia "Karya Ilmiah"power point bahasa indonesia "Karya Ilmiah"
power point bahasa indonesia "Karya Ilmiah"baimmuhammad71
 
Panduan Memahami Data Rapor Pendidikan 2024
Panduan Memahami Data Rapor Pendidikan 2024Panduan Memahami Data Rapor Pendidikan 2024
Panduan Memahami Data Rapor Pendidikan 2024RahmadLalu1
 
MODUL AJAR BAHASA INDONESIA KELAS 6 KURIKULUM MERDEKA.pdf
MODUL AJAR BAHASA INDONESIA KELAS 6 KURIKULUM MERDEKA.pdfMODUL AJAR BAHASA INDONESIA KELAS 6 KURIKULUM MERDEKA.pdf
MODUL AJAR BAHASA INDONESIA KELAS 6 KURIKULUM MERDEKA.pdfAndiCoc
 
AKSI NYATA Numerasi Meningkatkan Kompetensi Murid_compressed (1) (1).pptx
AKSI NYATA  Numerasi  Meningkatkan Kompetensi Murid_compressed (1) (1).pptxAKSI NYATA  Numerasi  Meningkatkan Kompetensi Murid_compressed (1) (1).pptx
AKSI NYATA Numerasi Meningkatkan Kompetensi Murid_compressed (1) (1).pptxnursariheldaseptiana
 
MODUL AJAR MATEMATIKA KELAS 3 KURIKULUM MERDEKA.pdf
MODUL AJAR MATEMATIKA KELAS 3 KURIKULUM MERDEKA.pdfMODUL AJAR MATEMATIKA KELAS 3 KURIKULUM MERDEKA.pdf
MODUL AJAR MATEMATIKA KELAS 3 KURIKULUM MERDEKA.pdfAndiCoc
 
Prov.Jabar_1504_Pengumuman Seleksi Tahap 2_CGP A11 (2).pdf
Prov.Jabar_1504_Pengumuman Seleksi Tahap 2_CGP A11 (2).pdfProv.Jabar_1504_Pengumuman Seleksi Tahap 2_CGP A11 (2).pdf
Prov.Jabar_1504_Pengumuman Seleksi Tahap 2_CGP A11 (2).pdfIwanSumantri7
 
PPT Mean Median Modus data tunggal .pptx
PPT Mean Median Modus data tunggal .pptxPPT Mean Median Modus data tunggal .pptx
PPT Mean Median Modus data tunggal .pptxDEAAYUANGGREANI
 
MODUL AJAR BAHASA INDONESIA KELAS 5 KURIKULUM MERDEKA.pdf
MODUL AJAR BAHASA INDONESIA KELAS 5 KURIKULUM MERDEKA.pdfMODUL AJAR BAHASA INDONESIA KELAS 5 KURIKULUM MERDEKA.pdf
MODUL AJAR BAHASA INDONESIA KELAS 5 KURIKULUM MERDEKA.pdfAndiCoc
 
SOAL PUBLIC SPEAKING UNTUK PEMULA PG & ESSAY
SOAL PUBLIC SPEAKING UNTUK PEMULA PG & ESSAYSOAL PUBLIC SPEAKING UNTUK PEMULA PG & ESSAY
SOAL PUBLIC SPEAKING UNTUK PEMULA PG & ESSAYNovitaDewi98
 
TUGAS RUANG KOLABORASI 1.3 PRAKARSA PERUBAHAN
TUGAS RUANG KOLABORASI 1.3 PRAKARSA PERUBAHANTUGAS RUANG KOLABORASI 1.3 PRAKARSA PERUBAHAN
TUGAS RUANG KOLABORASI 1.3 PRAKARSA PERUBAHANwawan479953
 
PELAKSANAAN + Link2 Materi BimTek _PTK 007 Rev-5 Thn 2023 (PENGADAAN) & Perhi...
PELAKSANAAN + Link2 Materi BimTek _PTK 007 Rev-5 Thn 2023 (PENGADAAN) & Perhi...PELAKSANAAN + Link2 Materi BimTek _PTK 007 Rev-5 Thn 2023 (PENGADAAN) & Perhi...
PELAKSANAAN + Link2 Materi BimTek _PTK 007 Rev-5 Thn 2023 (PENGADAAN) & Perhi...Kanaidi ken
 
RENCANA & Link2 Materi Pelatihan_ "Teknik Perhitungan TKDN, BMP, Preferensi H...
RENCANA & Link2 Materi Pelatihan_ "Teknik Perhitungan TKDN, BMP, Preferensi H...RENCANA & Link2 Materi Pelatihan_ "Teknik Perhitungan TKDN, BMP, Preferensi H...
RENCANA & Link2 Materi Pelatihan_ "Teknik Perhitungan TKDN, BMP, Preferensi H...Kanaidi ken
 
MODUL PENDIDIKAN PANCASILA KELAS 6 KURIKULUM MERDEKA.pdf
MODUL PENDIDIKAN PANCASILA KELAS 6 KURIKULUM MERDEKA.pdfMODUL PENDIDIKAN PANCASILA KELAS 6 KURIKULUM MERDEKA.pdf
MODUL PENDIDIKAN PANCASILA KELAS 6 KURIKULUM MERDEKA.pdfAndiCoc
 
PPT MODUL 6 DAN 7 PDGK4105 KELOMPOK.pptx
PPT MODUL 6 DAN 7 PDGK4105 KELOMPOK.pptxPPT MODUL 6 DAN 7 PDGK4105 KELOMPOK.pptx
PPT MODUL 6 DAN 7 PDGK4105 KELOMPOK.pptxriscacriswanda
 

Último (20)

1. Kisi-kisi PAT IPA Kelas 7 Kurmer 2024
1. Kisi-kisi PAT IPA Kelas 7 Kurmer 20241. Kisi-kisi PAT IPA Kelas 7 Kurmer 2024
1. Kisi-kisi PAT IPA Kelas 7 Kurmer 2024
 
Prakarsa Perubahan dan kanvas ATAP (1).pptx
Prakarsa Perubahan dan kanvas ATAP (1).pptxPrakarsa Perubahan dan kanvas ATAP (1).pptx
Prakarsa Perubahan dan kanvas ATAP (1).pptx
 
Pengenalan Figma, Figma Indtroduction, Figma
Pengenalan Figma, Figma Indtroduction, FigmaPengenalan Figma, Figma Indtroduction, Figma
Pengenalan Figma, Figma Indtroduction, Figma
 
MODUL AJAR IPAS KELAS 3 KURIKULUM MERDEKA.pdf
MODUL AJAR IPAS KELAS 3 KURIKULUM MERDEKA.pdfMODUL AJAR IPAS KELAS 3 KURIKULUM MERDEKA.pdf
MODUL AJAR IPAS KELAS 3 KURIKULUM MERDEKA.pdf
 
PANDUAN PENGEMBANGAN KSP SMA SUMBAR TAHUN 2024 (1).pptx
PANDUAN PENGEMBANGAN KSP SMA SUMBAR TAHUN 2024 (1).pptxPANDUAN PENGEMBANGAN KSP SMA SUMBAR TAHUN 2024 (1).pptx
PANDUAN PENGEMBANGAN KSP SMA SUMBAR TAHUN 2024 (1).pptx
 
Aksi Nyata Sosialisasi Profil Pelajar Pancasila.pdf
Aksi Nyata Sosialisasi Profil Pelajar Pancasila.pdfAksi Nyata Sosialisasi Profil Pelajar Pancasila.pdf
Aksi Nyata Sosialisasi Profil Pelajar Pancasila.pdf
 
power point bahasa indonesia "Karya Ilmiah"
power point bahasa indonesia "Karya Ilmiah"power point bahasa indonesia "Karya Ilmiah"
power point bahasa indonesia "Karya Ilmiah"
 
Panduan Memahami Data Rapor Pendidikan 2024
Panduan Memahami Data Rapor Pendidikan 2024Panduan Memahami Data Rapor Pendidikan 2024
Panduan Memahami Data Rapor Pendidikan 2024
 
MODUL AJAR BAHASA INDONESIA KELAS 6 KURIKULUM MERDEKA.pdf
MODUL AJAR BAHASA INDONESIA KELAS 6 KURIKULUM MERDEKA.pdfMODUL AJAR BAHASA INDONESIA KELAS 6 KURIKULUM MERDEKA.pdf
MODUL AJAR BAHASA INDONESIA KELAS 6 KURIKULUM MERDEKA.pdf
 
AKSI NYATA Numerasi Meningkatkan Kompetensi Murid_compressed (1) (1).pptx
AKSI NYATA  Numerasi  Meningkatkan Kompetensi Murid_compressed (1) (1).pptxAKSI NYATA  Numerasi  Meningkatkan Kompetensi Murid_compressed (1) (1).pptx
AKSI NYATA Numerasi Meningkatkan Kompetensi Murid_compressed (1) (1).pptx
 
MODUL AJAR MATEMATIKA KELAS 3 KURIKULUM MERDEKA.pdf
MODUL AJAR MATEMATIKA KELAS 3 KURIKULUM MERDEKA.pdfMODUL AJAR MATEMATIKA KELAS 3 KURIKULUM MERDEKA.pdf
MODUL AJAR MATEMATIKA KELAS 3 KURIKULUM MERDEKA.pdf
 
Prov.Jabar_1504_Pengumuman Seleksi Tahap 2_CGP A11 (2).pdf
Prov.Jabar_1504_Pengumuman Seleksi Tahap 2_CGP A11 (2).pdfProv.Jabar_1504_Pengumuman Seleksi Tahap 2_CGP A11 (2).pdf
Prov.Jabar_1504_Pengumuman Seleksi Tahap 2_CGP A11 (2).pdf
 
PPT Mean Median Modus data tunggal .pptx
PPT Mean Median Modus data tunggal .pptxPPT Mean Median Modus data tunggal .pptx
PPT Mean Median Modus data tunggal .pptx
 
MODUL AJAR BAHASA INDONESIA KELAS 5 KURIKULUM MERDEKA.pdf
MODUL AJAR BAHASA INDONESIA KELAS 5 KURIKULUM MERDEKA.pdfMODUL AJAR BAHASA INDONESIA KELAS 5 KURIKULUM MERDEKA.pdf
MODUL AJAR BAHASA INDONESIA KELAS 5 KURIKULUM MERDEKA.pdf
 
SOAL PUBLIC SPEAKING UNTUK PEMULA PG & ESSAY
SOAL PUBLIC SPEAKING UNTUK PEMULA PG & ESSAYSOAL PUBLIC SPEAKING UNTUK PEMULA PG & ESSAY
SOAL PUBLIC SPEAKING UNTUK PEMULA PG & ESSAY
 
TUGAS RUANG KOLABORASI 1.3 PRAKARSA PERUBAHAN
TUGAS RUANG KOLABORASI 1.3 PRAKARSA PERUBAHANTUGAS RUANG KOLABORASI 1.3 PRAKARSA PERUBAHAN
TUGAS RUANG KOLABORASI 1.3 PRAKARSA PERUBAHAN
 
PELAKSANAAN + Link2 Materi BimTek _PTK 007 Rev-5 Thn 2023 (PENGADAAN) & Perhi...
PELAKSANAAN + Link2 Materi BimTek _PTK 007 Rev-5 Thn 2023 (PENGADAAN) & Perhi...PELAKSANAAN + Link2 Materi BimTek _PTK 007 Rev-5 Thn 2023 (PENGADAAN) & Perhi...
PELAKSANAAN + Link2 Materi BimTek _PTK 007 Rev-5 Thn 2023 (PENGADAAN) & Perhi...
 
RENCANA & Link2 Materi Pelatihan_ "Teknik Perhitungan TKDN, BMP, Preferensi H...
RENCANA & Link2 Materi Pelatihan_ "Teknik Perhitungan TKDN, BMP, Preferensi H...RENCANA & Link2 Materi Pelatihan_ "Teknik Perhitungan TKDN, BMP, Preferensi H...
RENCANA & Link2 Materi Pelatihan_ "Teknik Perhitungan TKDN, BMP, Preferensi H...
 
MODUL PENDIDIKAN PANCASILA KELAS 6 KURIKULUM MERDEKA.pdf
MODUL PENDIDIKAN PANCASILA KELAS 6 KURIKULUM MERDEKA.pdfMODUL PENDIDIKAN PANCASILA KELAS 6 KURIKULUM MERDEKA.pdf
MODUL PENDIDIKAN PANCASILA KELAS 6 KURIKULUM MERDEKA.pdf
 
PPT MODUL 6 DAN 7 PDGK4105 KELOMPOK.pptx
PPT MODUL 6 DAN 7 PDGK4105 KELOMPOK.pptxPPT MODUL 6 DAN 7 PDGK4105 KELOMPOK.pptx
PPT MODUL 6 DAN 7 PDGK4105 KELOMPOK.pptx
 

Week 4-array dan string

  • 1. Algoritma dan Struktur Data ARRAY DAN STRING JURUSAN TEKNIK ELEKTRO UIN SUNAN NGUNUNG DJATI BANDUNG 2012
  • 2. Tujuan Pembelajaran Mahasiswa mampu Mahasiswa dapat lebih mengimplementasikan memahami tentang array dalam Array pemrograman Mahasiswa mampu menyelesaikan masalah dengan menggunakan array.
  • 3. Struktur Data Pemaham String an Array Array Materi Deklarasi Multidim pembelajaran Array ensi Array Dua Elemen Dimensi array Array Satu Dimensi
  • 4. Overview algoritma Program Komputer Struktur data
  • 5. Syarat Program yang Baik • Program yang baik haruslah memenuhi beberapa kriteria, antara lain: 1. Program haruslah sesuai dengan tujuan dan memenuhi spesifikasi yang telah ditentukan. 2. Fleksibel 3. Tidak mengandung kesalahan 4. Didokumentasi secara baik 5. Cepat dalam waktu penggunaannya 6. Efesien dalam penggunaan memori komputer
  • 6. Memori • Memori merupakan tempat software berada – Jadi, isinya dapat berupa Sistem Operasi, program atau data – Jika ditelusuri lebih rinci lagi, setiap lokasi di memori dapat berisi perintah dan/atau data (angka, alamat, nilai, dsb.) • Memori merupakan subsistem komputer yang sering menjadi fokus pemrogram: – Temporary storage area dalam hal ini RAM
  • 7. Review Sistem Komputer Alamat (disederhanakan) RAM OUTPUT (CONSOLE) 0 1 2 3 4 HDD CPU 5 … ... ... … 81345 INPUT 81346 (KEYBOARD) 81347 ... ... IF2031-Algoritma dan Struktur 7 Data/Hamonangan Situmorang
  • 8. Review Sistem Komputer Proses penerjemahan bahasa C/C++ ke bahasa mesin Keterangan: bahasa mesin di bawah-kanan ini sebenarnya berupa angka- angka biner (‘dimanusiawikan’ untuk memudahkan pemahaman) x=1; set memory[801] to hold 00000001 i=0; set memory[802] to hold 00000000 while (i!=10) { if memory[802] = 10 jump to inst #8 i++; increment memory[802] { x=x*2; set memory[803] to 2 times memory[801] } put memory[803] in to memory[801] jump to instruction #3 printf("%d",x); print memory[801] IF2031-Algoritma dan Struktur 8 Data/Hamonangan Situmorang
  • 9. Review Sistem Komputer • Biasanya, proses penterjemahan itu beberapa tahap – Melalui bahasa assembly Bahasa C Bahasa Assembly Bahasa Mesin x=1; ST 1,[801] 00000000001001011101001100000000 ST 0,[802] 00000000001001001101010000000000 i=0; TOP: BEQ [802],10,BOT 00000000100010100100100111110000 while (i!=10) { INCR [802] 00000000010001000101010000000000 00000000010010001010011110100011 i++; MUL [801],2,[803] 00000000111001011010101100000010 x=x*2; ST [803],[801] 00000000001010010000000000000000 JMP TOP 00000000110101010000000000000000 } BOT: LD A,[801] 00000000110101001010100000000000 printf("%d",x); CALL PRINT 00000000100100010100010000000000 IF2031-Algoritma dan Struktur 9 Data/Hamonangan Situmorang
  • 10. Pengertian Struktur Data • A data structure is a way of organizing input data and operations which can be performed on this data (ex: add, delete, search an elemen). • Struktur data adalah cara pengaturan data agar dapat disimpan memori komputer secara efisien • Struktur data adalah pengaturan data didalam memori komputer.
  • 11. Struktur Data • Tujuannya : Supaya lebih mudah/efisien dalam pengaksesan/pemrosesan data tersebut. • Secara umum, terdapat beberapa struktur data: • Static -> Pengalokasian memori statis : ruang memori yang dipakai oleh data tidak dapat dihapus bila data tersebut sudah tidak digunakan lagi pada saat program dijalankan. • Dinamic -> Pengalokasian memori dinamis
  • 12. Struktur Data Basic Static Dinamic Linked Integer Array list Double Struct Queue boolean Stacks trees
  • 13. ARRAY
  • 14. Latar Belakang Array • Sejauh ini Program yang kita pelajari dan yang kita buat masih sangat terbatas, hanya berupa pemberian satu nilai pada satu variabel • Padahal sering kali kita perlu untuk meng-assign ataupun memanipulasi banyak nilai ke sekelompok variabel • Sebagai contoh jika anda diminta membuat program untuk menyimpan 6000 nilai yang berbeda... • Berarti program Anda membutuhkan 6000 variabel berbeda, maka daripada Anda susah-susah mencari nama untuk tiap variabel Anda, gunakanlah array!!. 14
  • 15. Pemahaman Array • Array adalah sekumpulan data yang memiliki tipe yang sama. • Elemen-elemen array tersusun secara berurutan dalam memori • Array memiliki alamat yang besebelahan/berdampingan tergantung lebar tipe datanya. a[0] • Elemen-elemen array dapat a[1] diakses secara random di a[2] dalam memori. a[3] • Array dapat berupa array 1 a[4] dimensi, 2 dimensi, bahkan n- a[5] dimensi. anu • Contoh penggunaan array : – Kumpulan nama mahasiswa pada satu kelas – Kumpulan alfabet
  • 16. Contoh Kasus Untuk lebih memahami tentang manfaat array marilah kita analisa contoh program berikut : • Program untuk memasukkan 3 nilai input dari user dan menampilkannya ke layar.
  • 17. Tanpa Array 3 nilai = 10 Baris TIDAK PRAKTIS !!!
  • 18. Dengan Array Hanya 6 Baris PRAKTIS & EFFISIEN! Tidak perlu menambah perintah jika data lebih banyak.
  • 19. Struktur Array berupa bilangan bulat yang terurut secara ascending dimulai dari nol sampai n-1 index digunakan untuk mengakses element array. Dimana n adalah panjang dari array. Array Satu Dimensi array Array Dua Dimensi Array Multi Dimens element digunakan untuk menyimpan data. Jenis data yang dapat disimpan tergantung pada tipe data yang diberikan array.
  • 20. Ilustrasi Array Penjelasan : Nama array adalah bil. bil[0] Terdiri dari 5 element. bil[1] Element= 3,4,5,6,7 index = 0,1,2,3,4 (panjang array (n) =5) bil[4] – data 3 disimpan pada element index ke-0 – data 4, disimpan pada element element index index ke-1 – data 5 (element index ke-?) – data terakhir (element index ke-?) int bil [5] = 3, 4, 5, 6, 7 ;
  • 21. Deklarasi (Array 1 dimensi) • Bentuk penulisan perintah : tipe_data nama_array [jumlah_maks_data]; – tipe_data : tipe data yang ada di C/C++, contoh : int, float, char, dll. – nama_array : identifier, aturan sama seperti aturan penamaan variabel. – jumlah_maks_data : banyak data yang disimpan pada array. • Contoh deklarasi array : char alfabet[26]; (membuat array bernama alfabet, dengan maksimal data yang bisa ditampung sebanyak 26 bertipe char)
  • 22. Contoh deklarasi array double nilai[10]; (membuat array bernama nilai, dengan maksimal data yang bisa ditampung sebanyak 10 bertipe double) • Representasi : nilai[0] nilai[1] nilai[2] nilai[3] nilai[4] nilai[5] nilai[9] Index element yang bisa diakses dari 0 sampai 9.
  • 24. Latihan 1. Deklarasikan array untuk menyimpan data angka {1,2,3,4,5,6,7,8,9,10}. 2. Deklarasikan array untuk menyimpan data {c,i,n,t,a}. 3. Deklarasikan array untuk menyimpan data {1.2, 3.4, 5.6, 7.8, 9.0}.
  • 25. Inisialisasi (array 1 dimensi) • Pemberian nilai pada array menggunakan index. • Bentuk penulisan perintah : nama_array[index] = nilai; • Penjelasan : nama_array = sesuai dengan nama yang telah dideklarasikan. index = disesuaikan dengan index element yang ingin diakses. nilai = disesuaikan dengan tipe data.
  • 26. Contoh inisialisasi array • Contoh inisialisasi pada array nilai : nilai[0] = 5; nilai[9] = 100; nilai[-1] = 50; error!
  • 27. Deklarasi + Inisialisasi • Inisialisasi array juga dapat dilakukan ketika deklarasi. • Contoh : int nilai[] = {1,2,3,4,5}; membuat array bernama nilai dengan jumlah element 5 sekaligus inisialisasi. Dimana : data element index ke-0 = 1 data element index ke-1 = 2 data element index ke-2 = 3 data element index ke-3 = 4 data element index ke-4 = 5
  • 28. Deklarasi + Inisialisasi • Contoh deklarasi sekaligus inisialisasi pada array tipe char. char alfabet[] = {„a‟,‟b‟,‟c‟}; membuat array bernama nilai dengan jumlah element 5 sekaligus inisialisasi. Dimana : data element index ke-0 = a data element index ke-1 = b data element index ke-2 = c
  • 30. Pengaksesan Array • Pengaksesan data pada element array menggunakan index. • Bentuk penulisan perintah : nama_array[index]; • Penjelasan : nama_array = sesuai dengan nama yang telah dideklarasikan. index = disesuaikan dengan index element yang ingin diakses.
  • 31. Contoh pengaksesan Array • Menggunakan variabel penampung data : char huruf; huruf = alfabet[0]; (variabel huruf berisi data element array index ke-0 dari array alfabet, yaitu a). • Menggunakan printf : printf(“%c”, alfabet[0]); (akan mencetak huruf a ke-layar).
  • 32. Contoh program (2) • Pengaksesan data menggunakan printf 32
  • 33. Contoh Program (3) • Deklarasi sekaligus inisialisasi, dan pengaksesan data menggunakan kombinasi printf dan perulangan 33
  • 35. Latihan 1. Buatlah array untuk menyimpan data bilangan {1,2,3,4,5,6,7,8,9,10} dan tampilkan elemen ke 2 dan 5. 2. Buatlah array bertipe integer yang dapat menampung data maksimal 5, kemudian tampilkan alamat masing- masing elemen array tersebut 3. Buatlah array untuk menyimpan data {m,e,r,a,p,i} dan tampilkan elemen ke 0,1,2. 4. Buatlah array untuk menyimpan data {1.2, 3.4, 5.6, 7.8, 9.0} dan tampilkaan elemen ke awal dan akhir.
  • 36. Latihan 4. Buatlah array untuk menyimpan 50 bilangan ganjil mulai dari 1 (gunakan perulangan), kemudian tampilkan isinya ke layar. 5. Buatlah array untuk menyimpan angka 1 s/d 100. (gunakan perulangan) 6. Buatlah array untuk menyimpan 50 angka genap pertama. (gunakan perulangan) 7. Buatlah program yang akan membaca 10 karakter dari user dan disimpan dalam array 10 elemen.
  • 37. Latihan 8. Buatlah sebuah array yang menyimpan karakter {u,i,n,s,a,g,e,d,e,b,a,n,d,u,n,g}. Perintahkan user menebak satu karakter untuk dibandingkan dengan array tersebut. Jika input user sama dengan salah satu karakter pada array maka tampilkan index dari karakter tersebut. Jika tidak ada yang sama tampilkan pesan “karakter tidak ada”.
  • 38. Ilustrasi Array 1 Dimensi char 0 1 2 3 4 5 6 7 indeks value alamat 21da 21db 21dc 21dd 21de 21df 21e0 21e1 %x adalah hexadesimal
  • 39. Kalau lampumu tak bersumbu dan tak berminyak, jangan Kalaulah dirimu tidak bayangkan api. mempraktekkan dan Kalau gelasmu retak, jangan membuat source code mimpi menuangkan minuman. nya..... Jangan Kalau mentalmu rapuh, jangan bayangkan nilai A  rindukan rasukan tenaga dalam. Kalau kaca jiwamu masih kumuh oleh kotoran-kotoran dunia, jangan minta cahaya akan memancarkan dengan jernih atasmu. (EAN)
  • 40. Array Dua Dimensi • C/C++ mendukung array multidimensi. • Array satu dimensi berpadanan dengan vektor • Array dua dimensi berpadanan dengan matrik
  • 41. Array 2 Dimensi • Deklarasi Array: – int data [2][3]; – char a[2][3]; • Inisialisasi Array: – data[0][0] = 1; – int matrikA [2][3] = {{1,2,3},{4,5,6}}; Pengaksesan Array: – printf("%d",matrikA[i][j]);
  • 42. Contoh Array Dua Dimensi
  • 43. Arrray 2 dimensi • char a[3][5] • Sama dengan matriks berukuran 3x5 • Pada kenyataan di memory:
  • 44. LATIHAN • Buatlah Array datamahasiswa, berdimensi 2, dengan data sebagai berikut NIM NILAI 29801 75 29802 80 29803 85
  • 45. LATIHAN 2. Buatlah sebuah array dua dimensi untuk menyimpan sebuah kata bahasa indonesia beserta kata padanan bahasa inggrisnya. petunjuk : – Kata yg disimpan diberikan 5 kata. – Element 1 digunakan untuk menyimpan kata bahasa indonesia – Element 2 digunakan untuk menyimpan kata bahasa inggris – Cobalah mengakses kata bahasa inggris dari kata bahasa indonesia yang dipilih pleh user.
  • 46. Array Dimensi Banyak • Array ini seperti array dimensi dua tetapi dapat memiliki ukuran yang lebih besar. Sebenarnya array ini tidak terlalu sering digunakan, tetapi sewaktu-waktu jika dimensi yang dibutuhkan banyak, maka tentu saja array ini memgang peranan penting • Contoh : • int dataktp [2][7][8][5];
  • 47. Referensi • Rinaldi Munir, “Algoritma dan Pemrograman dalam Bahasa Pascal dan C” • Andri Kristanto, Algoritma & Struktur Data dengan C++, Graha Ilmu, 2009 • Hamonangan Situmorang, “Array dalam Bahasa C”, Materi Kuliah, STEI ITB • Dari berbagai sumber

Notas del editor

  1. Int angka[10]={1,2,3,4,5,6,7,8,9,10}, char alfabet [5] ={‘c’,i’,’n’,’t’,’a’}, double angka[5]={1.2,3.4,5.6,7.8,9.0}
  2. Int bilangan[]={1,2,3,4,5,6,7,8,9,10} bilangan[1]
  3. Buatlah array dengan baris 2 kolom 3