Kode Iklan DFP Muhammad Jamil | Data Structures
Kode Iklan 400x460
Kode iklan In feed above/responsive

Muhammad Jamil

Kode Iklan 336x280
Kode Iklan In Artikel
HPK taruh disini


1.             a. 8110(10) Ke Biner
Jadi hasil konversi bilangan biner dari 8110 (10) adalah 1111101011110
b. 8110(10) Heksadesimal

Angka Awal
8110
4055
2027
1013
506
253
126
63
31
15
7
3
Bagi
2
2
2
2
2
2
2
2
2
2
2
2
Sisa
0
1
1
1
1
0
1
0
1
1
1
1

1
2
3
4
5
6
7
8
9
A
B
C
D
E
F
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15

Pisahkan bilangan binner yang tadi sudah di dapatkan dari 8110 dengan asing-masing 4 kelompok. Jumlahkan angka di bawah kolom nomor 2 yang bernilai 1. Setelah itu hasil penjumlahan misalnya 14 maka lihat rumus diatas maka 14 adalah E untuk Heksadesimalnya.

1
1
1
1
1
0
1
0
1
1
1
1
0
1
8
4
2
1
8
4
2
1
8
4
2
1
1
15
13
14
1
F
D
E
Bilangan Hexadecimalnya dari 8110 adalah1FDE
2.        8110(10) Oktal
Bilangan Oktal adalah : bilangan yang hanya sampai 7.
Pisahkan bilangan binner yang tadi sudah di dapatkan dari 8110 dengan masing-masing 3 kelompok. Jumlahkan angka di bawah kolom nomor 2 yang bernilai 1

1
1
1
1
1
0
1
0
1
1
1
1
0
1
4
2
1
4
2
1
4
2
1
4
2
1
1
7
5
3
6
Bilangan Oktal dari 8110 adalah  = 17536
2.      Binner Bertanda 9 Bit
Computer architecture
Word size
w
Integer sizes
Foating pont sizes
Instruction sizes
Unit of address resolution
Char size
Calcomp 900
9 bit
w
-
w, 2w
w
8
key: b: bits, d: decimal digits,w: word size of architecture, n: variable size
3. 192(10) NOR 151(10)
1
0
0
0
0
0
0
0
192(10)
1
0
1
1
0
1
0
1
151(10)
0
1
0
0
1
0
1
0
NOR

Jika 1 ketemu dengan 1 maka hasilnya 0 dan jika 0 ketemu dengan 1 maka hasilnya 0 begitu seterusnya.

3.        Proses untuk mendapatkan hasil dari angka desimal 180(10) NOR 139(10)
1.                  102                101                100      
                   1                    3                 2
             N= 1x102             3x101             2x100
Nilai angka desimalnya adalah 100 + 30 + 20 = 150

2.                  102                101                100      
                   2                    4                 5
             N= 2x102             4x101             5x100
 Nilai angka desimalnya adalah 200 + 40 + 50 = 290

4.        1.  Pengurutan Ascending :Jika elemen sekarang lebih besar
dari elemen berikutnya maka kedua elemen tersebut
ditukar.
2.  Pengurutan Descending: Jika elemen sekarang lebih kecil
dari elemen berikutnya, maka kedua elemen tersebut
ditukar.
5.    Algoritma ini seolah-olah menggeser satu per satu elemen
dari kanan ke kiri atau kiri ke kanan, tergantung jenis
pengurutannya, asc atau desc.
4.    Ketika satu proses telah selesai, maka bubble sort akan
mengulangi proses, demikian seterusnya sampai dengan
iterasi sebanyak n-1.
5.    Kapan berhentinya? Bubble sort berhenti jika seluruh array
telah diperiksa dan tidak ada pertukaran lagi yang bisa
dilakukan, serta tercapai perurutan yang telah diinginkan.


BUBBLE SORT
Bubble sort adalah proses pengurutan sederhana yang bekerja dengan cara berulang kali membandingkan dua elemen data pada suatu saat dan menukar elemen data yang urutannya salah. Ide dari Bubble sort adalah gelembung air yang akan “mengapung” untuk table yang terurut menaik (ascending). Elemen bernilai kecil akan “diapungkan” (ke indeks terkecil), artinya diangkat ke “atas”(indeks terkecil) melalui pertukaran. Karena algoritma ini melakukan pengurutan dengan cara membandingkan elemen-elemen data satu sama lain, maka bubble sort termasuk ke dalam jenis algoritma comparison-based sorting.
Proses dalam Bubble sort dilakukan sebanyak N-1 langkah (pass) dengan N adalah ukuran array. Pada akhir setiap langkah ke – I , array L[0..N] akan terdiri atas dua bagian, yaitu bagian yang sudah terurut L[0..I] dan bagian yang belum terurut L[I+1..N-1]. Setelah langkah terakhir, diperoleh array L[0..N-1] yang terurut menaik.
Untuk mendapatkan urutan yang menaik, algoritmanya dapat ditulis secara global sebagai berikut :
Untuk setiap pass ke – I = 0,1,………., N-2 , lakukan :
Mulai dari elemen J = N-1, N-2,….., I + 1, lakukan :
·                Bandingkan L[J-1] dengan L[J]
·                Pertukarkan L[J-1] dengan L[J] jika L[J-1] > L[J]

Rincian setiap pass adalah sebagai berikut :
Pass 1:      I = 0. Mulai dari elemen J = N-1,N–2,…,1, bandingkan L[J-1] dengan L[J]. Jika L[J-1] > L[J], pertukarkan L[J-1] dengan L[J]. Pada akhir langkah 1, elemen L[0] berisi harga minimum pertama.
Pass 2:      I = 1. Mulai dari elemen J = N-1,N–2,…,2, bandingkan L[J-1] dengan L[J]. Jika L[J-1] > L[J], pertukarkan L[J-1] dengan L[J]. Pada akhir langkah 2, elemen L[1] berisi harga minimum kedua dan array L[0..1] terurut, sedangkan L[2..(N-1)] belum terurut.
Pass 3:      I = 2. Mulai dari elemen J = N-1,N–2,…,3, bandingkan L[J-1] dengan L[J]. Jika L[J-1] > L[J], pertukarkan L[J-1] dengan L[J]. Pada akhir langkah 3, elemen L[2] berisi harga minimum ketiga dan array L[0..2] terurut, sedangkan L[3..(N-1)] belum terurut.
………
Pass N-1:  Mulai dari elemen J = N-1, bandingkan L[J-1] dengan L[J]. Jika L[J-1] > L[J], pertukarkan L[J-1] dengan L[J].
Pada akhir langkah N-2, elemen L[N-2] berisi nilai minimun ke [N-2] dan array L[0..N-2] terurut menaik (elemen yang tersisa adalah L[N-1], tidak perlu diurut karena hanya satu-satunya).
Misal array L dengan N = 5 buah elemen yang belum terurut. Array akan diurutkan secara ascending(menaik).
8
9
7
6
1
0      1     2     3      4
Pass 1 :
I = 0 ;J= N-1= 4                      8          9          7          1          6
J = 3                            8          9          1          7          6
J = 2                            8          1          9          7          6
J = 1                            1          8          9          7          6
Hasil akhir langkah 1 :
1
8
9
7
6
0      1       2      3      4

Pass 2 :
I = 1 ;J= N-1= 4                      1          8          9          6          7
J = 3                            1          8          6          9          7
J = 2                            1          6          8          9          7
Hasil akhir langkah 2 :
1
6
8
9
7
0       1      2      3      4
Pass 3 :
I = 2 ;J= N-1= 4                      1          6          8          7          9
J = 3                            1          6          7          8          9
Hasil akhir langkah 3 :
1
6
7
8
9
0       1      2      3      4
Pass 4 :
I = 3 ;J= N-1= 4                      1          6          7          8          9
Hasil akhir langkah 4 :
1
6
7
8
9
0       1      2      3      4
Selesai. Array L sudah terurut !!
Pseudocode prosedur algoritma Bubble Sort secara Ascending
1. //prosedur algoritma Bubble Sort secara Ascending2. //I.S:array sudah berisi nilai integer yang belum terurut
3. //F.S:nilai-nilai dalam array terurut secara Ascending
4. procedure v_Bubble(input/output A:array[0..4]of integer,
input N:integer)
5. KAMUS:
6.  i,j,temp:integer
7. ALGORITMA:8. for(i=0;i<=(N-2);i++)
9.   for(j=(N-1);j>=(i+1);j–)
10.     if (A[j-1]>A[j])
11.       tempßA[j-1]
12.       A[j-1]ßA[j]
13.       A[j]ßtemp
14.     endif
15.  endfor
16. endfor
17.end procedure
Program lengkap penerapan algoritma Bubble Sort dalam bahasa C
1.  #include <stdio.h>2.  #include <conio.h>
3.
4.  void v_Bubble(int A[],int N);
5.  void main()
6.  {  int L[5];
7.     int i,N;
8.    //proses untuk memasukkan data array
9.    printf(“Banyak data : “);scanf(“%i”,&N);
10.   for(i=0;i<N;i++)
11.   { printf(“Data ke-%i: “,i+1);
12.     scanf(“%i”,&L[i]);  } //end loop i
13.   //memanggil procedure bubble sort
14.   v_Bubble(L,N);
15.
16.   //proses menampilkan kembali data array
17.   printf(“\nData Array Terurut\n”);
18.   for(i=0;i<N;i++)
19.   { printf(“%3i”,L[i]); };
20.   getche();
21. } //end main program
22.
23. void v_Bubble(int A[5],int N)
24. { int a,b,temp;
25.   //proses sortir dengan bubble sort
26.   for(a=0;a<=(N-2);a++)
27.   { for(b=(N-1);b>=(a+1);b–)
28.     { if (A[b-1] > A[b])
29.       { temp = A[b-1];
30.         A[b-1]= A[b];
31.         A[b] = temp; }    //endif
32.     } //end loop j
33.   }  //end loop i
34. } //end procedure v_Bubble


Kode Iklan 300x250
close
==[ Klik disini 2X ] [ Close ]==
Kode Iklan DFP2
Kode Iklan DFP2