<prompt> Changanua msimbo na ueleze jinsi algorithm hii inavyofanya kazi.def binsearcharr, x: kuanza 0 mwisho lenarr - 1 wakati anza mwisho: katikati anza mwisho2 ikiwa arrmid x: kurudi katikati elif arrmid x: mwisho katikati - 1 kwingine: anza katikati 1 kurudi hakuna  <response>: Kanuni hii ya utafutaji wa binary hupitia safu kwa kukokotoa mara kwa mara sehemu ya katikati na kulinganisha thamani katika sehemu ya kati na thamani inayotafutwa. Ikiwa thamani inalingana, kanuni hurejesha faharasa ya thamani katika safu. Ikiwa thamani ni kubwa kuliko thamani inayotafutwa, kanuni inaendelea kwa kutafuta nusu ya kushoto ya safu. Vinginevyo, inaendelea kwa kutafuta nusu sahihi. Ikiwa thamani haipatikani katika safu, Hakuna itarejeshwa. 