TUGAS STRUKTUR DATA Algoritma Shell Sort Ascending Dan Binary Sequential Search PDF

Title TUGAS STRUKTUR DATA Algoritma Shell Sort Ascending Dan Binary Sequential Search
Author Max Aiba
Pages 13
File Size 72.9 KB
File Type PDF
Total Downloads 459
Total Views 591

Summary

TUGAS STRUKTUR DATA Algoritma Shell Sort Ascending Dan Binary Sequential Search Menggunakan C IF-5 Nama Anggota : - Rohendi 10107193 - Andri Andriyan 10107210 - Yuli Yanti A 10107218 - Jajang Kusmita 10107227 JURUSAN TEKNIK INFORMATIKA FAKULTAS TEKNIK DAN ILMU KOMPUTER UNIVERSITAS KOMPUTER INDONESIA...


Description

TUGAS STRUKTUR DATA

Algoritma Shell Sort Ascending Dan Binary Sequential Search Menggunakan C

IF-5 Nama Anggota : - Rohendi

10107193

- Andri Andriyan

10107210

- Yuli Yanti A

10107218

- Jajang Kusmita

10107227

JURUSAN TEKNIK INFORMATIKA FAKULTAS TEKNIK DAN ILMU KOMPUTER UNIVERSITAS KOMPUTER INDONESIA 2009

Algoritma procedure create_abjad (output abjad : larik, input maks_abjad : integer ) { I.S = user memasukkan nilai bertipe integer } { F.S = menampilkan abjad } Kamus i : integer Algoritma for i 1 to maks_abjad do abjad endfor endprocedure procedure isi_abjad ( I/O abjad : larik, output n : integer ) { I.S = user mamaskukn jumlah karakter dan memasukan karakter } { F.S = menampilkan nilai abjad } Kamus i : integer Algoritma Input (n) for i 1 to n do input ( abjad (n)) endfor endprocedure procedure abjad_terkecil ( I/O abjad: larik, input n: integer, output min: integer) { I.S = harga untuk variabel abjad sudah terdefinisi} { F.S = mencari abjad terkecil} Kamus i : integer Algoritma min abjad (1) for i 1 to n do if ( abjad (i) min ) then min abjad (i) endif endfor endprocedure procedure abjad_terbesar ( I/O abjad: larik, input n : integer, output max integer) { I.S = harga untuk variabel abjad sudah terdefinisi } { F.S = mencari abjad terbesar} Kamus i : integer

Algoritma min abjad (1) for i 1 to n do if ( abjad (i) max ) then max abjad (i) endif endfor endprocedure procedure binary_search(input abjad : larik, n : integer, input x : char) { I.S = elemen abjad sudah terdefinisi } { F.S = menghasilkan pencarian bagi dua} Kamus k, ia, ib : integer ketemu : bolean Algoritma ia 0 ib n-1 ketemu false while ( not ketemu ) and (ia ib) do k (ia + ib ) div 2 if ( x = abjad(k)) then ketemu true else if (x > abjad(k)) then ia k+1 else ib k-1 endif endif endwhile if ( ketemu = 1 ) then output( Data yang dicari : , x ) output ( ada pada indeks ke . k+1 ) else output ( data tidak ditemukan ) endif endprocedure procedure shortShell(input abjad : larik, n : integer) { I.S = elemen abjad sudah terdefinisi }

{ F.S = menghasilkan pengurutan shell sort} Kamus j,i,k,m,n ,mid : integer Algoritma j 0 for m n div 2 to 0 do m mod 2 for j m to n do j j+1 for i j-m to 0 do i i-m if (abjad(i+m) >= abjad(i)) then mid abjad(i) abjad(i) abjad(i+m) abjad(i+m) mid endif endfor endfor endfor endprocedure procedure tampil_abjad (input abjad : larik, n : integer, input max, min : char) { I.S = harga untuk variable max dan min sudah terdefinisi } { F.S = menampilkan abjad terendah dan abjad tertinggi} Kamus i, : integer Algoritma output ( Array Before Sorting ) output ( __________________ ) for i 1 to n do output ( abjad (i)) endfor shellsort(abjad,n); output ( Array After Before Sorting ) output ( __________________ ) for i 1 to n do output ( abjad (i)) endfor output ( __________________ ) output (min, max) output ( __________________ ) endprocedure

procedure destroy_abjad(I/O abjad : larik, n : integer) { I.S = elemen-elemen sudah terdefinisi } { F.S = menghasilkan penhancuran elemen} Kamus i, : integer Algoritma for i

1 to n do create_abjad(abjad,maks_abjad) exit 0 endfor endprocedure { Algoritma Utama } Array_abjad { I.S = user memasukan sejumlah abjad bertipe karakter} { F.S = memampilkan abjad dimasukan oleh user dan menampilkan abjad terendah dan abjad tertinggi } Kamus Const Maks_abjad : 50 Type Larik : array [1..maks_abjad] of char abjad : larik n , i, tekan, : integer max, min, x : char procedure create-abjad (output abjad : larik, input maks_abjad : integer ) procedure isi_abjad ( I/O abjad : larik, output n : integer ) procedure abjad_terendah ( I/O abjad:larik, input n: integer, output min:integer) procedure abjad_tertinggi ( I/O abjad: larik, input n:integer, output max integer) procedure binary_search(input abjad : larik, n : integer, input x : char) procedure shortShell(input abjad : larik, n : integer) procedure tampil_abjad (input abjad : larik, n : integer, input max, min : char) procedure destroy_abjad(I/O abjad : larik, n : integer) Algoritma repeat output(" Menu Pilihan") output ("___________________") output (" 1. Isi Data ") output (" 2. Cari Data ")

output (" 3. Tampil Data ") output (" 0. Keluar ") output ("___________________") output (" Masukkan pilihan anda : ") input (menu) case(tekan) '1' : isi_abjad(abjad, n) '2' : binarySearch(abjad,n,x) '3' : abjad_terkecil(abjad, max, n) abjad_terbesar(abjad, min, n) tampil(abjad, max, min, n) '0' : destroy_abjad(abjad, n) until (tekan 0) Source Code #include #include #include const int maks_abjad=50; typedef char larik [maks_abjad]; void create_abjad(larik abjad, int maks_abjad); void isi_abjad(larik abjad, int *n); void abjad_terkecil(larik abjad, char *min, int n); void abjad_terbesar(larik abjad, char *max, int n); void binarySearch(larik abjad, int n, char x); void shellsort(larik abjad,int n); void tampil(larik abjad, char min, char max, int n); void destroy_abjad(larik abjad,int n);

void create_abjad(larik abjad, int maks_abjad) { int i; for (i=0; i...


Similar Free PDFs