TEL 2112 Dasar Komputer & Pemograman Larik (Array) Dosen: Abdillah, S.Si, MIT Email: abdill01@gmail.com Website: http://abdill01.wordpress.com
Tujuan Mahasiswa mampu menggunakan larik untuk memecahkan masalah dan mentranslasikannya ke dalam program.
Apa itu Larik? Larik adalah struktur data yang menyimpan sekumpulan elemen yang bertipe sama. Setiap elemen mempunyai indeks yang bertipe data berurutan (integer atau karakter). Contoh: Larik A berukuran 5 buah elemen 0 1 2 3 4 A[0], A[1], A[2], A[3] dan A[4].
Kapan Menggunakan Larik? Larik digunakan jika kita memiliki sejumlah data yang bertipe sama dan kita perlu menyimpan sementara data itu untuk selanjutnya data itu dimanipulasi. Selama pelaksanaan program, larik tetap menyimpan nilai-nilai. Dengan menggunakan larik kita menghindari penggunaan nama peubah yang banyak.
Mendeklarasikan Larik Sebelum digunakan larik harus dideklarasikan dengan cara mendefinisikan ukuran larik dan tipe elemen larik. Ukuran larik dapat didefinisikan langsung atau dideklarasikan sebagai sebuah konstanta Elemen larik dapat berupa tipe dasar atau tipe bentukan.
Mendeklarasikan Larik Contoh deklarasi larik bertipe dasar: A adalah larik berukuran 100 buah elemen yang bertipe integer. NamaMhs adalah larik berukuran 10 buah elemen yang bertipe string yang panjangnya 25 karakter. /* DEKLARASI */ int A [100]; char NamaMhs [10] [25];
Mendeklarasikan Larik Contoh deklarasi larik bertipe bentukan: LarikInt adalah nama sebuah tipe baru untuk larik yang bertipe integer dan berukuran 100 elemen. String adalah nama sebuah tipe baru untuk larik yang bertipe karakter dan berukuran 25 elemen. /* DEKLARASI */ typedef int LarikInt [100]; LarikInt A; typedef char String [25]; String NamaMhs [10];
Mendeklarasikan Larik Contoh deklarasi ukuran larik sebagai konstanta: Nmaks adalah nama sebuah konstanta untuk ukuran tipe bentukan LarikInt yang bertipe integer. /* DEKLARASI */ const int Nmaks = 100; typedef int LarikInt [Nmaks]; LarikInt A;
Mendeklarasikan Larik Contoh deklarasi larik bertipe terstruktur: /* DEKLARASI */ const int Nmaks = 100; typedef struct { int NIM; char NamaMhs [25]; float IPK; } Mahasiswa typedef Mahasiswa TabMhs [Nmaks]; TabMhs Mhs;
Cara Mengacu Elemen Larik Elemen larik diacu melalui indeksnya. Nilai indeks harus terdefinisi, seperti contoh berikut: A[4] ← 10 NamaMhs[2] ← ‘Ahmad’
Pemrosesan Larik Pemrosesan beruntun pada larik adalah pemrosesan yang dimulai dari elemen pertama larik, berturut-turut pada elemen berikutnya, sampai elemen terakhir dicapai, yaitu elemen dengan indeks terbesar. Skema pemrosesan yang tepat untuk larik adalah skema menggunakan WHILE.
Menginisialisasi Larik Menginisialisasi larik adalah memberikan nilai awal untuk seluruh/sebagian elemen larik. Untuk larik bertipe numerik, inisialisasi berupa pengisian elemen larik dengan nol atau nilai lainnya. Sedangkan pada larik karakter, inisialisasi berupa pengisian elemen larik dengan spasi atau karakter kosong (null).
Apa itu String? String adalah larik karakter dengan panjang dinamis, artinya ukuran larik baru ditentukan pada saat program dieksekusi. Larik karater diakhiri dengan null (‘\0’). String kosong adalah larik yang panjangnya 0 dan isinya hanya karakter ‘\0’.
Contoh Program void IsiLarik(larik *A, int *N) /* Mengisi elemen larik A dari piranti masukan*/ { int i; printf (“Banyaknya elemen larik?”); scanf (“%d”, &(*N)); for (i=1; i<=*N;i++) { printf (“Masukkan elemen larik?”); scanf (“%d”, &(*A[i])); }
Latihan Memprogram Buatlah program dengan menggunakan larik untuk menghitung jumlah total dari sejumlah bilangan (maksimal 100) yang diinput oleh user. Buatlah program yang merupakan kelanjutan dari program no. 1 yaitu setelah diketahui jumlah total dari bilangan tersebut, kemudian dicari nilai rata-ratanya. Kelanjutan dari soal no.2, sekarang buatlah program untuk mencari deviasi standardnya. Buatlah sebuah prosedur untuk menghitung banyaknya jumlah penjualan barang di sebuah toko setiap hari dari hari 1-7. Banyaknya barang yang terjual diinput oleh user.
Latihan Memprogram Buatlah program untuk mencari nilai terbesar dari sejumlah bilangan acak yang diinput oleh user. Kemudian bilangan yang terbesar ditampilkan. Buatlah program untuk mengurutkan data yang terurut membesar. Caranya dengan membandingkan setiap elemen dgn seluruh elemen yang terletak sesudahnya. Datanya adalah: 5, 100, 20, 31, 77, 88, 99, 20, 55, 1. Diperoleh data panjang dari sebuah pipa adalah: 0.8, 1.2, 1.3, 1.9, 2.2, 2.6, 3.1, 3.7, 3.8. Lalu buatlah program untuk mencari indeks dari pipa yang panjangnya akan diinputkan oleh user. Misalnya, user menginputkan berupa panjang pipa 2.2, maka keluarannya adalah 4.