Mengurutkan angka/mengacak angka:
Algoritmanya adalah :
Tentukan/masukkan beberapa bilangan, misal : 1,8,2,3,0,6,4 atau dalam bentuk alphabet(abjghfu)
Lakukan proses dan tentukan cara pengurutannya.
Pengurutan Data ( Sorting )
Teknik Sorting ini dapat digunakan untuk mengurutkan data urut dari kecil ke besar maupun dari besar ke kecil baik unutk data numerik atau alphabetik.Teknik sorting ini sangat banyak sekali caranya, tetapi yang sering digunakan dan relatip mudah yaitu metode “Bubble Sort” dan “Straight Selection“.
Metode Bubble Sort
Seperti gelembung (”bubble”) yang timbul ke permukaan air, metode ini juga menimbulkan angka terbesar dan menaruhnya pada akhir urutan, mengatur sampai urut dari kecil sampai besar. Untuk metode sorting ini, semua data dibacakan terlebih dahulu ke omputer dan disimpan di “memori komputer”, kemudian pengurutan baru dilakukan.
Metode Straight Selection
Metode ini sebenarnya kebalikan dari metode bubble sort. Metode seleksi langsung ini akan memilih nilai yang terkecil dan meletakkannya di urutan terkemuka. Nilai-nilai terkecil berikutnya akan diseleksi dan diletakkan diurutan setelah nilai terkecil pertama, kedua, dan seterusnya sampai akhirnya di dapat nilai yang urut dari kecil ke besar. Program berikut akan mengambil data yang sama dengan metode Bubble sort. Dari hasil output langkah-langkah pengurutan akan tampak perbedaan proses pengurutannya.
Sebelum mengurutkan, maka tentukan dahulu data yang tipe mana yang akan diurutkan.
Jika data yang diurutkan adalah data yang numerik(1,8,9,3,6,5,2,4,0). Maka langkah-langkahnya adalah sebagai berikut:
* SORTING MENGURUTKAN DATA *
* METODE BUBBLE SORT *
1. CLS
2. INPUT “BANYAK BILANGAN YANG DIURUTKAN : “, N
3. DIM BIL(N),Y(N)
4. PRINT
5. PRINT “INPUT BILANGAN YG AKAN DIURUTKAN : “
6. FOR I = 1 TO N STEP 1
7. PRINT” BILANGAN KE – “;I;” : “
8. INPUT “”,BIL( I )
9. Y( I ) = BIL( I )
10. NEXT I
11. PRINT
12. CLS
13. PRINT “DATA SEBELUM URUT : “
FOR I = 1 TO N
PRINT BIL( I );
NEXT I
PRINT:PRINT
PRINT “LANGKAH PENGURUTAN : ”
FOR J= 1 TO N-1
FOR I= 1 TO N-J
IF BIL( I ) < BIL( I+1 ) THEN 151
TUKAR=BIL( I )
BIL( I ) = BIL( I+1 )
BIL( X+1 ) = TUKAR
NEXT I
PRINT “LANGKAH KE : “; J;” : ”
FOR K=1 TO N
PRINT BIL(K);
NEXT K
PRINT
NEXT J
PRINT:PRINT”SETELAH URUT : ”
PRINT”DATA”,”URUT KECIL”,”URUT BESAR”
FOR I= 1 TO N
PRINT Y( I ),BIL( I ),BIL( N+1-I)
NEXT I
END
Kemudian:
For I = 1 to N
Print Abjad$( I );
Next I
Print:Print
Print”Langkah Pengurutan”
For J = 1 to N-1
For I = 1 to N-J
If Abjad$( I ) < Abjad$( I+1 ) then 151
Tukar$ = Abjad$( I )
Abjad$( I ) = Abjad$( I+1 )
Abjad$( X+1 ) = Tukar$
Next I
Print”Langkah ke:”; J ;” : ”
For K = 1 to N
Print Abjad$(K);
Next K
Print
Next J
Print: Print”Setelah Urut : ”
Print “Data”,”Urut kecil”,”Urut besar”
For I = 1 to N
Print Y$( I ), Abjad$( I ), Abjad$( N+1-I)
Next I
End
Jika data yang diurutkan adalah data yang alphabetik (a,h,d,k,u,e,t,c,v,x,b,n), dan Misalnya karakter “A” adalah bernilai lebih kecil dari karakter “B”, karena nilai ekuivalen A untuk kode ASCII adalah 65 dan b adalah 66. Maka langkah-langkahnya adalah sebagai berikut:
REM * SORTING MENGURUTKAN ABJAD*
REM * METODE BUBBLE SORT *
1. CLS
2. LOCATE 2,4:INPUT “BANYAK ABJAD YANG DIURUTKAN : “, N
3. DIM ABAJD$(N),Y$(N)
4. PRINT
5. LOCATE 4,4:PRINT “INPUT ABJAD YG AKAN DIURUTKAN : “
6. FOR I = 1 TO N STEP 1
7. LOCATE 4+I,4:PRINT” ABJAD KE – “;I;” : “
8. LOCATE 4+I,22:INPUT “”,ABJAD$ ( I )
9. Y$( I ) = ABJAD$( I )
10. NEXT I
11. PRINT
12. CLS
13. PRINT “DATA SEBELUM URUT : “
Kemudian:
For I = 1 to N
Print Abjad$( I );
Next I
Print:Print
Print”Langkah Pengurutan”
For J = 1 to N-1
For I = 1 to N-J
If Abjad$( I ) < Abjad$( I+1 ) then 151
Tukar$ = Abjad$( I )
Abjad$( I ) = Abjad$( I+1 )
Abjad$( X+1 ) = Tukar$
Next I
Print”Langkah ke:”; J ;” : ”
For K = 1 to N
Print Abjad$(K);
Next K
Print
Next J
Print: Print”Setelah Urut : ”
Print “Data”,”Urut kecil”,”Urut besar”
For I = 1 to N
Print Y$( I ), Abjad$( I ), Abjad$( N+1-I)
Next I
End
About Syed Faizan Ali
Faizan is a 17 year old young guy who is blessed with the art of Blogging,He love to Blog day in and day out,He is a Website Designer and a Certified Graphics Designer.
0 comments:
Post a Comment