Konsep Pemgrograman LARIK.

Slides:



Advertisements
Presentasi serupa
ARRAY.
Advertisements

ARRAY 1 DIMENSI Array 1 dimensi
ARRAY ??.
Jurusan Teknik Informatika Universitas Ahmad Dahlan 2004
Fungsi, Parameter, Rekursi Daniel Riano Kaparang Book reference: Jogiyanto. Konsep Dasar Pemrograman Bahasa C. Andi Star. Yogyakarta Kristanto Andri.
ARRAY (Lanjutan).
ARRAY Dr. Lily Wulandari.
Teknik Pemrograman Terstruktur 2
ARRAY (LARIK)
ARRAY.
Algoritma dan Struktur Data
Teknik Pemrog. Terstruktur 2
Tipe Data Terstruktur Pengantar Logika dan Teknik Pemrograman
Castaka Agus Sugianto, M.Kom., M.CS
Bab2 ARRAY (LARIK).
Pertemuan 12 Array (Larik) & struct Erna Sri Hartatik
ARRAY / LARIK STRUKTUR DATA Oleh : Yuli Praptomo PHS, S.Kom.
PEMROGRAMAN DASAR.
Tipe Data Lecture 8.
Oleh : Agus Priyanto, M.Kom Norma Amalia, M.Eng
Bab & 7.3 NESTED LOOP Array 1 Dimensi 273.
Perulangan (looping) BERSARANG & ARRAY
Bab 4 PROSES PENGULANGAN
ARRAY.
Algoritme dan Pemrograman
TEL 2103 Dasar Komputer & Pemograman Larik (Array)
TEL 2112 Dasar Komputer & Pemograman Contoh Pemecahan Masalah 2
Algoritme dan Pemrograman
Pointer, Array dan String
Struktur Data (Data Structure) – IS 2313
Struktur Data Khoiriya Latifa, M.Kom.
ARRAY DIMENSI 1 & 2.
Pertemuan 2 ARRAY DIMENSI 1 & 2.
“Pengurutan Data”.
ARRAY (LARIK).
PEMROGRAMAN DASAR (BAHASA C)
TEL 2112 Dasar Komputer & Pemograman Larik (Array)
PERTEMUAN 9 Algoritma Presented by : Sity Aisyah, M.Kom
Remainder Senin depan mulai UTS Praktikum
Latihan #0 Dengan menggunakan pernyataan looping WHILE dan jumlah instruksi sesedikit mungkin, tuliskan cuplikan program (bukan program lengkap, hanya.
Struktur Data Khoiriya Latifa, M.Kom.
ALGORITMA & STRUKTUR DATA I
TEL 2112 Dasar Komputer & Pemograman Contoh Pemecahan Masalah 2
Algoritma dan Struktur Data
FUNGSI.
Pemograman Terstruktur
Input Dan Output.
Perulangan (looping) BERSARANG & ARRAY
Algoritma dan Struktur Data
Algoritma dan Struktur Data
Soal-soal Pengulangan
Tipe Data & Array 1D, 2D Daniel Riano Kaparang.
Struktur Data Khoiriya Latifa, M.Kom.
TEL 2112 Dasar Komputer & Pemograman Contoh Pemecahan Masalah 2
Pertemuan Hari ke - 1 Sesi-2.
Pertemuan Hari ke - 1 Sesi-1.
Array (Larik) Pertemuan ke-6 Bahasa C.
Input dan Output Pertemuan ke-3 Bahasa C.
Praktikum KBP 2 Array.
Algoritme dan Pemrograman
Algoritma dan Struktur Data
Algoritma Pemrograman
Konsep Pemrograman 4.
Contoh Aplikasi Array Sorting (Bubble Sort).
ARRAY 2d (matriks) MERISKA DEFRIANI, S.KOMP
STRUKTUR perulangan (1)
Algoritma Pemrograman
Bab 11 Tatasusunan.
Penjumlahan dua buah MATRIX. Penjumlahan dua buah MATRIX.
ARRAY.
Transcript presentasi:

Konsep Pemgrograman LARIK

LARIK Larik atau array Penampung sejumlah data setipe Masing-masing elemen data larik diakses dengan menggunakan indeks Indeks dimulai dari 0 s.d. n-1 Menempati lokasi memori yang menyatu (contigious) Dikirim ke function selalu by reference, yang dikirim adalah alamat awal memori larik Larik

LARIK  type menyatakan jenis data yang dapat ditampung larik. type array_name [ size ]; type array_name[ size ] = {data1, data2, ..., data_n} ; type array_name[ ] = {data1, data2, ..., data_n} ; type menyatakan jenis data yang dapat ditampung larik. size menyatakan kapasitas larik. Larik

LARIK int blt_gb[2]; char kar_gb[2]; float pch_gb[2]; int main() { 0 0 0.000000 0.000000 0 2293672 a b c 1.500000 2.600000 int blt_gb[2]; char kar_gb[2]; float pch_gb[2]; int main() { int blt[4]; char kar[ ] = {'a', 'b', 'c'}; float pch[2] = {1.5, 2.6}; printf("%d %d\n", blt_gb[0], blt_gb[1]); printf("%d %d\n", kar_gb[0], kar_gb[1]); printf("%f %f\n", pch_gb[0], pch_gb[1]); printf("%d %d\n", blt[0], blt[1]); printf("%c %c %c\n", kar[0], kar[1], kar[2]); printf("%f %f\n", pch[0], pch[1]); return 0; } Larik

LARIK 10 20 ‘a’ ‘b’ 1.5 10 20 0 0 int main() { a b 0 1.500000 0 int main() { int blt[4] = {10, 20}; char kar[3] = {'a', 'b'}; float pch[2] = {1.5}; printf("%d %d %d %d\n", blt[0], blt[1], blt[2], blt[3]); printf("%c %c %d\n", kar[0], kar[1], kar[2]); printf("%f %d\n", pch[0], pch[1]); return 0; } blt[0] blt[1] blt[2] blt[3] kar[0] kar[1] kar[2] pch[0] pch[1] 10 20 ‘a’ ‘b’ 1.5 Larik

ROTASI SATU POSISI KE KIRI Tulis program untuk mengentri sejumlah bilangan ke dalam sebuah larik lalu rotasi bilangan-bilangan tersebut ke kiri satu posisi. Jika susunan elemen data larik adalah 10 20 30 40 50 maka harus berubah menjadi 20 30 40 50 10. Gunakan satu larik saja. [0] [1] [2] [3] [4] [5] [6] 10 20 30 40 50 20 30 40 50 10 Larik

ROTASI SATU POSISI KE KIRI Data mana yang pertama dipindahkan? 10? 50? [0] [1] [2] [3] [4] [5] [6] 10 20 30 40 50  Pindahkan 10, 50 akan tertimpa. 10 [0] [1] [2] [3] [4] [5] [6] 10 20 30 40 50  Pindahkan 10, 50 akan tertimpa. 50 Larik

ROTASI SATU POSISI KE KIRI [0] [1] [2] [3] [4] [5] [6] 10 20 30 40 50 Larik

ROTASI SATU POSISI KE KIRI [0] [1] [2] [3] [4] [5] [6] 10 20 30 40 50 Larik

ROTASI SATU POSISI KE KIRI [0] [1] [2] [3] [4] [5] [6] 10 20 30 40 50 Larik

ROTASI SATU POSISI KE KIRI [0] [1] [2] [3] [4] [5] [6] 10 20 30 40 50 Larik

ROTASI SATU POSISI KE KIRI [0] [1] [2] [3] [4] [5] [6] 10 20 30 40 50 Larik

ROTASI SATU POSISI KE KIRI [0] [1] [2] [3] [4] [5] [6] 10 20 30 40 50 Larik

ROTASI SATU POSISI KE KIRI baca jumlah_data cacah  0 ulangi selama cacah < jumlah_data baca bilangan [cacah] cacah  cacah + 1 akhir pengulangan temp  bilangan [0] cacah  1 bilangan [cacah – 1]  bilangan [cacah] bilangan [n – 1]  temp cetak bilangan Larik

ROTASI SATU POSISI KE KIRI int main() { int bil[100], j_data, i, temp; printf("jumlah data ? "); scanf("%d", &j_data); printf("bilangan ? "); for (i = 0; i < j_data; i++) scanf("%d", &bil[i]); temp = bil[0]; for (i = 1; i < j_data; i++) bil[i - 1] = bil[i]; bil[i - 1] = temp; for (i = 0; i < j_data; i++) printf ("%d ", bil[i]); return 0; } jumlah data ? 7 bilangan ? 10 20 30 40 50 60 70 20 30 40 50 60 70 10 Larik

LARIK DUA DIMENSI  Larik dua dimensi Seakan-akan disusun dalam baris dan kolom. Menggunakan dua indeks.  type array_name [ row_size ] [ column_size ]; row_size menyatakan jumlah baris larik column_size menyatakan jumlah kolom larik Larik

LARIK DUA DIMENSI int main() { int larik_i [2][3] = {10, 20}; char larik_c [3][2] = {'a' , 'b', 'c'}; int i, j; for (i = 0; i < 2; i++) for (j = 0; j < 3; j++) printf("%d ", larik_i[i][j]); printf("\n"); for (i = 0; i < 3; i++) for (j = 0; j < 2; j++) printf("%d ", larik_c[i][j]); return 0; } 10 20 0 0 0 0 97 98 99 0 0 0 Larik

LARIK DUA DIMENSI int main() { int i, j, larik [3][4] = { {10, 20, 30 }, {}, {30, 40} }; for (i = 0; i < 3; i++) { for (j = 0; j < 4; j++) printf("%2d ", larik[i][j]); printf("\n"); } return 0; 10 20 30 0 0 0 0 0 30 40 0 0 Larik

LARIK DUA DIMENSI Struktur memori komputer untuk larik 2D. Fisikal Konseptual Larik

LARIK DUA DIMENSI Row-major order. data baris ke-1 ? 5 10 15 int main() { int a[2][3]; int b, k, i, *pi; for (b = 0; b < 2; b++) { printf("data baris ke-%d ? ", b + 1); for (k = 0; k < 3; k++) scanf("%d", &a[b][k]); } pi = &a[0][0]; for (i = 0; i < b * k; i++) printf("%d ", *(pi + i)); return 0; data baris ke-1 ? 5 10 15 data baris ke-2 ? 20 25 30 5 10 15 20 25 30 Larik

LARIK 2D SEBAGAI PARAMETER void cetak_larik (int a[2][3]) { int i, j; for (i = 0; i < 2; i++) { for (j = 0; j < 3; j++) printf("%2d ", a[i][j]); printf("\n"); } int main() { int arr[2][3], i, j; printf("ketik 6 bilangan :\n"); for (i = 0; i < 2; i++) scanf("%d", &arr[i][j]); cetak_larik(arr); return 0; dimensi ditulis lengkap ketik 6 bilangan : 5 15 25 35 45 55 5 15 25 35 45 55 Larik

PENJUMLAHAN MATRIKS Tulis program untuk menjumlahkan dua matriks berukuran sama yang masing-masing berukuran tidak lebih dari 10 x 10. Proses mengentri data matriks, menjumlahkan matriks, mencetak isi matriks masing-masing dilakukan pada sebuah function. a11 a12 a13 + b11 b12 b13 = c11 c12 c13 a21 a22 a23 b21 b22 b23 c21 c22 c23 Larik

PENJUMLAHAN MATRIKS # include <stdio.h> # include <conio2.h> void isi_matriks (int a[10][10], int brs, int klm) { int i, j, posisi_brs; printf("Matriks %d x %d\n", brs, klm); posisi_brs = wherey(); for (i = 0; i < brs; i++) { for (j = 0; j < klm; j++) { gotoxy(j * 5 + 1, posisi_brs); scanf("%d", &a[i][j]); } posisi_brs++; printf("\n"); Larik

PENJUMLAHAN MATRIKS void jumlah_matriks (int a[10][10], int b[10][10], int c[10][10], int brs, int klm) { int i, j; for (i = 0; i < brs; i++) for (j = 0; j < klm; j++) c[i][j] = a[i][j] + b[i][j]; } void cetak_matriks (int a[10][10], int brs, int klm) { for (i = 0; i < brs; i++) { printf("%3d ", a[i][j]); printf("\n"); Larik

PENJUMLAHAN MATRIKS int main () { int mat_a[10][10], mat_b[10][10], mat_c[10][10]; int baris, kolom; printf("ukuran baris ? "); scanf("%d", &baris); printf("ukuran kolom ? "); scanf("%d", &kolom); isi_matriks(mat_a, baris, kolom); isi_matriks(mat_b, baris, kolom); jumlah_matriks(mat_a, mat_b, mat_c, baris, kolom); printf("Hasil jumlah:\n"); cetak_matriks(mat_c, baris, kolom); return 0; } ukuran baris ? 2 ukuran kolom ? 3 Matriks 2 x 3 5 10 15 20 25 30 11 22 33 44 55 66 Hasil jumlah: 16 32 48 64 80 96 Larik

Buatlah data penjualan produk 2006 2007 2008 Produk 1 500 800 900 Produk 2 230 780 890 Produk 3 123 456 789