Berikut ini adalah pertanyaan dari bagaskhairullah11 pada mata pelajaran TI untuk jenjang Sekolah Menengah Atas
Jawaban dan Penjelasan
Berikut ini adalah pilihan jawaban terbaik dari pertanyaan diatas.
Jawaban & Penjelasan:
Saya hanya memberikan code contoh saja silahkan dibuat sendiri
Code :
l = [1,3,4,6,7,8,10,13,14,18,19,21,24,3,7,40,45,71]
dicari = 7
print('Mencari nilai',dicari,'dengan binary search','pada list',l)
ditemukan = False
batas_awal = 0
batas_akhir = len(l) - 1
while not ditemukan and batas_awal <= batas_akhir:
pos_cari = batas_awal + (batas_akhir-batas_awal)//2 # ambil posisi tengah
print('posisi pencarian: index',pos_cari,'dengan nilai',l[pos_cari])
if l[pos_cari] == dicari:
ditemukan = True
elif l[pos_cari] > dicari:
batas_akhir = pos_cari-1 # geser 1 titik lebih kecil dari posisi sekarang
else:
batas_awal = pos_cari+1 # geser 1 titik lebih besar dari posisi sekarang
if ditemukan:
print('Nilai',dicari,'ditemukan pada indeks',pos_cari)
else:
print('Nilai',dicari,'tidak ditemukan')
Semoga dengan pertanyaan yang sudah terjawab oleh hasanmac dapat membantu memudahkan mengerjakan soal, tugas dan PR sekolah kalian.
Apabila terdapat kesalahan dalam mengerjakan soal, silahkan koreksi jawaban dengan mengirimkan email ke yomemimo.com melalui halaman Contact
Last Update: Mon, 03 Oct 22