Nama : Dani Kogoya Nim : 14111029 Prodi : Teknik Informatika Kelas : 21 1. Struktur data adalah suatu pengelolaan data sehingga data dapat dipergunakan secara lebih efisien dan efektif. Dalam bahasa pemrograman, struktur data seringkali ditampakkan secaa fisik dalam bentuk tabel (biasanya pada bahasa pemrograman/pengelolaan database berbasis visual), namun pada beberapa bahasa pemrograman yang tidak berbasis visual, strutkur data lebih berupa pengelolaan data dengan aturan-aturan tertentu. Beberapa konsep pengelolaan data sederhana adalah sebagai berikut : a.) Array Array adalah kumpulan data bertipe sama dan menggunakan nama yang sama pula. Antara satu variabel dengan variabel lain di dalam array dibedakan berdasarkan “subscript”. Subscript berupa bilangan di dalam kurung siku [...]. Melalui subscript inilah masing-masing elemen dapat diakses. b.) Array Berdimensi Satu Array berdimensi satu adalah sekumpulan data/elemen yang disimpan secara berurutan dalam suatu tempat/subscript yang terdiri atas 1 (satu) unsur. Sejumlah data suhu disimpan dalam nama suhu terdiri dari Suhu 1 = 25°, Suhu 2 = 23,5°, Suhu 3 = 21°, Suhu 4 = 26° dan Suhu 5 = 35° Pendefinisian array meliputi nama array, tipe elemen array dan jumlah elemen array. Contoh : Float nilai_mhs [12]; Keterangan : 1. tipe array : float (bilangan pecah) 2. nama array : nilai_mhs 3. jumlah elemen array : 12 data, yaitu nilai_mhs[1], nilai_mhs[2],…., nilai_mhs[12]. Nilai elemen array dapat dimasukkan melalui keyboard atau dimasukkan saat didefinisikan pada program. c.) Array Berdimensi Dua Array berdimensi satu adalah sekumpulan data/elemen yang disimpan secara berurutan dalam suatu tempat/subscript yang terdiri atas 2 (dua) unsur, yaitu baris dan kolom. Array berdimensi dua berarti meiliki dua dimensi data. Contoh sederhana adalah data yang tertulis dalam tabel berikuit ini : Jika dibuat programnya adalah sebagai berikut : int data_mobil [3] [4]; Keterangan : - baris 1 – baris 3 : menunjukkan merek mobil. - kolom 1 – kolom 4 : menunjukkan tahun penjualan - tipe array : integer (bilangan bulat). - nama array : data_mobil. - jumlah elemen array : [3,4] - [2,3] dibaca : penjualan mobil merek Daihatsu pada tahun 1994 adalah 70 unit. d.) Array Sebagai Argumen Fungsi Array juga dapat berkedudukan sebagi parameter di dalam fungsi. Contoh pendefinisian : const int MAKS = 5 Int data[MAKS]; e.) Fungsi Fungsi adalah bagian program yang berisi sejumlah pernyataan tertentu yang dapat dipanggil berulang kali. Tujuan pembuatan fungsi adalah : 1. Memudahkan dalam mengembangkan program 2. Menghemat ukuran program Beberapa hal yang harus diperhatikan dalam pembuatan fungsi adalah : 1. Fungsi menerima masukan yang disebut argumen atau parameter. 2. Masukan diproses oleh fungsi dan memberikan hasil akhir yang disebut nilai balik (return value). 3. Agar fungsi dapat dipanggil, fungsi harus dideklarasikan. f.) Prototipe Deklarasi fungsi disebut prototype fungsi yang berupa : 1. nama fungsi 2. tipe nilai balik fungsi 3. jumlah dan tipe argument 4. serta diakhiri dengan titik koma (;). Contoh : long kuadrat(long l) dimana menyatakan kuadrat() adalah nama fungsi, long adalah tipe argument, long (kedua) menunjukkan nilai balik yang bertipe long void garis() menyatakan fungsi tanpa nilai balik Pernyataan return digunakan untuk memberikan nilai balik fungsi. Dalam fungsi diatas berarti nilai kuadrat dari argument. Fungsi dengan pernyataan void tidak memberikan nilai balik. Biasanya tidak diakhiri pernyataan return. Jenis variabel dalam kaitannya dengan lingkup fungsi terdapat tiga macam yaitu : variabel otomatis, variabel eksternal dan variabel statis. Variabel Lokal (otomatis) : Variabel yang didefinisikan di dalam fungsi disebut variabel local. Variabel ini hanya dikenal dalam fungsi tersebut. Variabel Global (Eksternal) : Variabel yang didefinisikan di bagian luar manapun dari fungsi dan dikenal oleh semua fungsi. Disebut juga variabel global, karena dikenal de semua fungsi. Variabel Statis : Baik variabel local maupun global dapat berfungsi sebagai variabel statis dengan cara menambahkan pada kedua variabel tersebtu pernyatan static. Kemudian pada kedua variabel tersebtu berlaku hal sebagai berikut : 1. Jika variabel local berdiri sebagai variabel statis maka variabel tetap hanya dapat diakses pada fungsi yang mendefinisikannya, variabel tidak hilang saat eksekusi fungsi berakhir. Nilainya akan tetap dipertahankan, sehingga akan dikenali pada pemanggilan fungsi untuk tahap berikutnya. 2. Inisialisasi oleh pemrogram akan dilakukan sekali saja selama program dijalankan. Jika tidak ada inisialisasi secara eksplisit, variabel diisi dengan nol. 3. Jika variabel eksternal dijadikan sebagai variabel statis, variabel ini dapat diakses oleh semua file yang didefinisikan pada file yang sama dengan variabel eksternal tersebut . 2. Algoritma adalah langkah-langkah yang disusun secara tertulis dan berurutan untuk menyelesaikan suatu masalah. Sebagai gambaran, saya mengambil masalah Frekuensi data. Misalnya ada sekelompok data seperti berikut : 2 4 6 7 2 4 6 6 9 3 5 6 4 Secara tertulis, frekuensi data diperoleh dengan cara menghitung banyaknya tiap data dan menuliskan data mulai dari data yang terkecil ke terbesar dalam tabel. Kolom pertama berisi data dan kolom kedua berisi frekuensi masing-masing data. Data Frekuensi 2 2 3 1 4 3 5 1 6 4 7 1 9 1 Cukup mudah bukan? Bagaimana jika cara mencari frekuensi di atas dibuat dalam bentuk program? Cukup sulit karena kita perlu menguasai logika pemrograman. Namun kasus ini akan saya bahas nanti, jika tidak ada halangan. Baiklah kita mulai untuk membuat Algoritma pemrograman yang sederhana seperti contoh di bawah ini. Contoh 1: Buatlah algoritma untuk menghitung frekuensi data seperti pada contoh kasus di atas. Algoritmanya adalah : Mulai Tentukan banyaknya data (n) Tentukan data sebanyak N Urutkan data secara Ascending (Mulai dari data kecil ke besar) Hitung banyaknya data (frekuensi ) tiap data Tampilkan Frekuensi data dalam bentuk tabel Selesai Contoh-2 : Buatlah algoritma untuk menghitung nilai y dari persamaan y = 2x + 6 Algoritmanya adalah : Mulai Tentukan nilai x Hitung nilai y = 2x + 6 Tuliskan/cetak Nilai x dan y Selesai