FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA

dokumen-dokumen yang mirip
nama array untuk menyimpan data jumlah data

Array LOGO. Pendidikan Teknik Elektronika FT UNY. Muh. Izzuddin Mahali, M.Cs.

Praktikum 7. Pengurutan (Sorting) Insertion Sort, Selection Sort POKOK BAHASAN: TUJUAN BELAJAR: DASAR TEORI:

BAB VI ARRAY. tipe_data nama_var[ukuran];

LAPORAN PRAKTIKUM SEMENTARA ALGORITMA & STRUKTUR DATA 1

Pencarian (Searching)

Praktikum 9. Pengurutan (Sorting) Quick Sort, Merge Sort

Gambar 13.1 Ilustrasi proses algoritma sorting

SORTING (Pengurutan)

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA

A. TUJUAN PEMBELAJARAN

PRAKTIKUM 9 ARRAY. ARRAY BERDIMENSI SATU Suatu array berdimensi satu dideklarasikan dalam bentuk umum berupa :

# TEN Sorting PENDAHULUAN

BAB 2 SORTING (PENGURUTAN)

Algoritme dan Pemrograman

Modul Praktikum Algoritma dan Struktur Data

Praktikum 8. Pengurutan (Sorting) Bubble Sort, Shell Sort

ALGORITMA PENGURUTAN. Oleh : S. Thya Safitri, MT

BAB VI Pengurutan (Sorting)

Politeknik Elektronika Negeri Surabaya

ALGORITMA DAN PEMROGRAMAN 2. 3 SKS By : Sri Rezeki Candra Nursari

Politeknik Elektronika Negeri Surabaya

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA

A. TUJUAN PEMBELAJARAN

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA

Algoritme dan Pemrograman

Algoritma dan Struktur Data. Algoritma Pengurutan (Sorting)

Array ARRAY BERDIMENSI SATU. Representasi (Pemetaan) di memori. Lihat gambar dibawah ini, nilai data A (18) dismpan mulai dari alamat 1136 di memori.

Modul 8 SORTING (PENGURUTAN)

Praktikum 6. Konsep Rekursi Perbandingan Perulangan biasa dan Rekursi Implementasi Rekursi dalam Bahasa C

Algoritma Bubble Sort dan Quick Sort

Sorting. Pertemuan ke 14.

BAB V SORT. Proses penukaran tidak dapat langsung dilakukan dengan cara : nilai[1] = nilai[2]; nilai[2] = nilai[1];

a[0] a[1] a[2] a[3] a[4] a[5] x

Seharusnya. if (antrian.tail==max-1) return 0;

Materi Praktikum Algoritma dan Pemrograman II Sorting Algorithm (Algoritma Pengurutan)

ALGORITMA & PEMROGRAMAN II ARRAY

Algoritme dan Pemrograman

Yaitu proses pengaturan sekumpulan objek menurut urutan atau susunan tertentu Acuan pengurutan dibedakan menjadi :

SORTING. Struktur Data S1 Sistem Informasi. Ld.Farida

Penambahan Simpul (Node)

Algoritma Shell Sort Ascending Dan Binary Sequential Search Menggunakan C

BAB I ARRAY. Contoh array berdimensi satu, misalnya menginputkan 5 buah data temperatur. Dan kelima data tersebut disimpan pada array bernama suhu.

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA

Operator Precedence dan Associativity DASAR PEMROGRAMAN. JULIO ADISANTOSO Departemen Ilmu Komputer IPB. Pertemuan 2

Penger6an struct. Algoritme dan Pemrograman. Cara membuat struct. Deklarasi struct. Pointer pada struct 12/10/14 ILKOM IPB 1

Politeknik Elektronika Negeri Surabaya

TUGAS MATA KULIAH DASAR PEMROGAMAN

A. TUJUAN PEMBELAJARAN

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA

1. Mempelajari konsep dasar array, array ganda, pengiriman array ke fungsi dan string 2. Membuat program menggunakan array, array ganda

Algoritma Pemrograman. Fery Updi,M.Kom

Politeknik Elektronika Negeri Surabaya

Bab 9 Pointer. 9.1 Pendeklarasian pointer

Dinamik Linked List. hari bulan tahun

PRAKTIKUM 19 : ARRAY 2

Pengurutan (Sorting)

Algoritme dan Pemrograman

REVIEW ARRAY. Institut Teknologi Sumatera

Konsep Pemrograman. Bab 14. Struktur 1. Konsep Pemrograman Politeknik Elektronika Negeri Surabaya 2006 PENS-ITS. Umi Sa adah

BAGIAN A. PILIHAN GANDA Silanglah Jawaban yang Benar Pada Lembar Jawaban. Jawaban benar bernilai 3, salah atau kosong bernilai 0.

Algoritma Pemrograman. Fery Updi,M.Kom

PRAKTIKUM 6 PENGULANGAN PROSES 2

MODUL III CONTROL FLOW & FLOWCHART

Praktikum 3 DASAR-DASAR PEMROGRAMAN C

Pertemuan 06. Dasar Pemrograman Komputer [TKL-4002] 2010

Sorting adalah proses mengatur sekumpulan objek menurut aturan atau susunan tertentu. Urutan objek tersebut dapat menaik (ascending = dari data kecil

Algoritme dan Pemrograman

# FOUR LOOPING. JAWABAN 1. #include <stdio.h> #include <conio.h> #define pi void main(){

12/26/2011 ILKOM IPB 1. Algoritme dan Pemrograman. Sorting. Data untuk sorting. Contoh. Algoritme #1: BUBBLE SORT.

Informasi Umum. Misalkan soalnya seperti demikian:

JURNAL TEKNOLOGI INFORMASI & PENDIDIKAN ISSN : VOL. 6 NO. 1 Maret 2013

Algoritma Pemrograman & Struktur Data

A. TUJUAN PEMBELAJARAN

LOGIKA ALGORITMA. Pertemuan 4. By: Augury

Array dan Matriks. IF2121 / Algoritma dan Struktur Data Sem / /7/2017 IF2121/sem /2018 1

ARRAY STATIS. Type namatype_array = array [1..maks_array] of tipedata. nama_var_array : namatype_array {indeks array dari 1 sampai maksimum array}

SORTING (PENGURUTAN DATA)

STRUKTUR DATA. Nama : Sulfikar Npm : STMIK Handayani Makassar

Pencarian. 1. Memahami konsep pencarian 2. Mengenal beberapa algoritma pencarian 3. Menerapkan algoritma pencarian dalam program

BAB I. LARIK (ARRAY) Array (larik) ialah penampung sejumlah data sejenis (homogen) yang menggunakan satu identifier (pengenal).

a. Array berdimensi satu o Setiap elemen array dapat diakses melalui indeks. o Indeks array (subscript) secara default dimulai dari 0.

Modul Praktikum 6 Pemograman Berorientasi Objek

Laporan Hasil Tugas Konsep Pemrograman

Pengulangan for. Konstruksi for. keberadaan exp1, exp2, dan exp3 bersifat optional. for (exp1; exp2; exp3){ statement; atau. statement1; statement2;

Alpro & Strukdat 1 C++ (Sorting) Dwiny Meidelfi, M.Cs

STRUKTUR DATA SORTING ARRAY

Politeknik Elektronika Negeri Surabaya

1. Kompetensi Mengenal dan memahami algoritma percabangan yang komplek.

BAHASA PEMROGRAMAN 1 (PERTEMUAN 3)

SOAL C++ Created by Yuli Astuti,S.Kom Copyright 2009

CCH1A4 / Dasar Algoritma & Pemrogramanan

ARRAY PENGANTAR PROGRAM STUDI. Institut Teknologi Sumatera

Gambar 1. Langkah-langkah pengurutan metode Insertion Sort (1)

ARRAY DIMENSI SATU Setiap elemen array dapat diakses melalui indeks. Indeks array secara default dimulai dari 0.

Bahasa C melengkapi fasilitas modular dengan menggunakan fungsi pada setiap SubProgram. Contoh pembagian program menjadi beberapa subprogram.

Algoritma Sorting. Ahmad Kamsyakawuni, S.Si, M.Kom. Jurusan Matematika Fakultas Matematika dan Ilmu Pengetahuan Alam Universitas Jember

PENGANTAR KOMPUTER & SOFTWARE II. Array (Part II) Tim Pengajar KU Institut Teknologi Sumatera

PENGURUTAN (SORTING) 1. Overview

Pertemuan 04. Pemrograman Dasar 2012

Transkripsi:

No. EKA/EKA255 Revisi:01 30 Agu 2014 Hal 1 / 8 A. TUJUAN Setelah melakukan praktik mahasiswa diharapkan: 1. Memahamikonseparraydanpenyimpanannyadalammemori 2. Mempelajaripengunaanvariabelarrayberdimensisatu 3. Memahamipenggunaanvariabelarrayberdimensidua 4. Dapat menerapkan penggunaanarrayberdimensi satu dan dua pada program sederhana B. TEORI DASAR Array Array juga dapat dilewatkan sebagai parameter fungsi. Sebagai contoh ditujukan pada program sorting.c. Program digunakan untuk memasukkan sejumlah data, kemudian data tersebut diurutkan naik (ascending) dan dicetak ke layar. Untuk melakukan sorting (proses pengurutan data), cara yang dipakai yaitu metode sorting (suatu metode pengurutan yang paling sederhana, dan memiliki kecepatan pengurutan yang sangat lambat). Algoritma pada metode pengurutan ini adalah sebagai berikut: 1. Aturi bernilai0 2. Bandingkan x[i] dengan x[j], dengan j berjalan dari i +1 sampai dengan n-1. 3. Pada setiap pembandingan, jika x[i] > x[j], maka isi x[i] dan x[j] ditukarkan 4. Selama i <(n 1), ulangi mulai langkah 2. Catatan: i = indeks array x n = = nama array untuk menyimpan data jumlah data Algoritma diatas berlaku untuk pengurutan menaik (ascending). Untuk pengurutan menurun (descending), penukaran dilakukan jika x[i] < x [j]. Misal, data semula (sebelum pengurutan) adalah: 50,5 30,3 20,2 25,2 31,3 1

No. EKA/EKA255 Revisi:01 30 Agu 2014 Hal 2 / 8 Setelah pengurutan menaik (secara ascending), hasil yang diharapkan berupa 20,2 25,2 30,3 31,3 50,5 Proses secara lengkapnya bias dilihat pada gambar dibawah ini

No. EKA/EKA255 Revisi:01 30 Agu 2014 Hal 3 / 8 Gambar 1. Proses pengurutan data secara ascending dengan metode BubleSort C. LANGKAH KERJA DAN PERCOBAAN 1. Percobaan 1 Ketik dan kompilasi program berikut; // File program : sorting.c #include <stdio.h> #define MAKS 20 void pemasukan_data(float []); void pengurutan_data(float []); void penampilan_data(float []); int jml; main() float data[maks]; pemasukan_data(data); pengurutan_data(data); penampilan_data(data);

No. EKA/EKA255 Revisi:01 30 Agu 2014 Hal 4 / 8 void pemasukan_data(float x[]) printf("jumlah data = "); scanf("%d", &jml); for(i=0; i<jml; i++) printf("data ke-%d : ", i+1); scanf("%f", &x[i]); void pengurutan_data(float x[]) int i, j; float temp; for(i=0; i<jml-1; i++) for(j=i+1; j<jml; j++) if(x[i] > x[j]) //penukaran data temp = x[i]; x[i] = x[j]; x[j] = temp; void penampilan_data(float x[]) printf("\n Data setelah diurutkan :\n\n"); for (i=0; i<jml; i++) printf("data ke-%d : %g\n", i+1, x[i]); 2. Percobaan 2 Ketik dan kompilasi program berikut; #include <stdio.h> //pengurutan secara binary void tampilkan_larik(int data[], int n) for (i = 0; i < n; i++) printf("%d ", data[i]); printf("\n"); void binary_insertion(int data[], int n) int j, k; int x; int kiri, kanan, tengah; for (k = 1; k < n; k++)

FAKULTAS TEKNIK No. EKA/EKA255 Revisi:01 30 Agu 2014 Hal 5 / 8 x = data[k]; /* Sisipkan x ke dalam data[0..k-1] */ kiri = 0; kanan = k - 1; while (kiri <= kanan) /* Pencarian biner */ tengah = (kiri + kanan) / 2; if (x < data[tengah]) kanan = tengah - 1; else kiri = tengah + 1; /* Melakukan penggeseran */ for (j = k - 1; j >= kiri; j--) data[j+1] = data[j]; /* Tempatkan x ke data[kiri] */ data[kiri] = x; int main() const JUM_DATA = 10; int data[] = 25, 57, 48, 37, 12, 92, 80, 33,899,67; binary_insertion(data, JUM_DATA); /* Hasil pengurutan */ printf("hasil pengurutan:\n"); tampilkan_larik(data, JUM_DATA); // return 0; system("pause"); 3. Percobaan 3 Ketik dan kompilasi program berikut; #include <stdio.h> //bubble_sort void tampilkan_larik(int data[], int n) for (i = 0; i < n; i++) printf("%d ", data[i]); printf("\n");

No. EKA/EKA255 Revisi:01 30 Agu 2014 Hal 6 / 8 void bubble_sort(int data[], int n) int tahap, j, tmp; for (tahap = 1; tahap < n; tahap++) for (j = 0; j < n - tahap; j++) if (data[j] > data[j+1]) /* Tukarkan */ tmp = data[j]; data[j] = data[j+1]; data[j+1] = tmp; printf("hasil tahap %d: ", tahap); tampilkan_larik(data, n); int main() const JUM_DATA = 8; int data[] = 25, 57, 48, 37, 12, 92, 80, 33; bubble_sort(data, JUM_DATA); /* Hasil pengurutan */ printf("hasil pengurutan:\n"); tampilkan_larik(data, JUM_DATA); //return 0; system("pause"); 4. Percobaan 3 Ketik dan kompilasi program berikut; #include <stdio.h> //quick_sort void tampilkan_larik(int data[],int n) for (i = 0; i < n; i++) printf("%d ", data[i]); printf("\n"); int partisi(int data[], int p, int r) int pivot = data[r]; int i = p - 1; int j;

No. EKA/EKA255 Revisi:01 30 Agu 2014 Hal 7 / 8 for (j = p; j < r; j++) if (data[j] <= pivot) i++; int tmp = data[i]; data[i] = data[j]; data[j] = tmp; int tmp = data[i+1]; data[i+1] = data[r]; data[r] = tmp; return i + 1; void quick_sort(int data[], int p, int r) int q; if (p < r) q = partisi(data, p, r); quick_sort(data, p, q-1); quick_sort(data, q+1, r); int main() const JUM_DATA = 9; int data[] = 25, 57, 48, 37, 12, 92, 80, 33, 1; quick_sort(data, 0,JUM_DATA-1); /* Hasil pengurutan */ printf("hasil pengurutan:\n"); tampilkan_larik(data, JUM_DATA); //return 0; system("pause");

No. EKA/EKA255 Revisi:01 30 Agu 2014 Hal 8 / 8 D. PENGEMBANGAN DAN TUGAS Diketahui daftar nilai siswa sebagai berikut: Buatlah program untuk menampilkan laporan sebagai berikut: Petunjuk: Gunakan variable array dua dimensi untuk menyimpan data *****