Makombiyuta, Zvirongwa
Binary kutsvaka - imwe nyore nzira kuwana chinhu inofa
Kazhinji, programmers, kunyange beginners, atarisana kuti pane mamwe nhamba, izvo zvinofanira kuwana chaicho nhamba. Hazvina muunganidzwa ichi anonzi inofa. Uye kuwana zvinhu mariri, pane ane zviuru zvine nzira. Asi zvikuru mano wavo anogona kunzi munhu binary kutsvaka kurudyi. Chii nzira iyi? Uye mashandisiro ezvidzidzo binary kutsvaka? Pascal ari nyore zvakatipoteredza sangano chirongwa chakadai, saka tichazviita kuishandisa kudzidza.
Chokutanga, ongorora, chii vari zvakanakira nzira iyi, zviri saka tinogona kunzwisisa,
Saka, chii chiri nokushanda nhungamiro nzira iyi? Pakarepo zvinofanira kutaura kuti binary kutsvaka mabasa haasi chero wakazvigadzira, asi chete pamusoro Dzakarongwa vanochengeta nhamba. At mumwe danho wakatorwa pakati che siyana (kureva nhamba chinhu). Kana inodiwa nhamba mukuru paavhareji, ipapo zvose wakasara, kuti idukusa paavhareji muchitokisi, anogona kuraswa kwete kutarisa ipapo. Asiwo, kana zvishoma pane avhareji - pakati nhamba idzodzo kurudyi, haugoni kutsvaga. Zvadaro sarudza mutsva kutsvaka nzvimbo, apo wokutanga chinhu uchava pakati che yose siyana, uye vokupedzisira uye vokupedzisira kuda. Avhareji Kuwanda munda itsva vachava ¼ yose chidimbu, kureva, (wokupedzisira chinhu + pakati che yose siyana) / 2. Zvakare, ndiye oparesheni rinoitwa - mumwe tichienzanisa avhareji nhamba hondo. Kana kubaya mutengo idukusa paavhareji, tinoramba kurudyi, uyewo kuita raitevera, kusvikira zvino ichi chinhu pakati wakaramba rusinganyari.
Chokwadi, zvakanaka kutarira muenzaniso sei kunyora binary kutsvaka. Pascal pano vachange zvienderane munhu - shanduro haukoshi. Ngatitaurei kunyora purogiramu nyore.
Zviri inofa 1 kusvika ekurwisana pasi zita "massiv", mumwe shanduka inotaridza rezasi muganhu kutsvaka, rinonzi "niz", yokumusoro muganhu, inonzi "verh", paavhareji kutsvaka rokuti - "sredn"; uye nhamba inodiwa - "ISK".
Saka, tinofanira kutanga basa okumusoro panogumira kuwanda kutsvaka:
niz: = 1;
verh: = H + 1;
Zvadaro kuronga kutenderera "kusvikira pasi idukusa rokumusoro muganhu":
Nepo niz
At danho rimwe nerimwe, tiri zviparadzanise chidimbu 2:
sredn: = (niz + verh) div 2; {Shandisa mashandiro div, nokuti kamura pasina zvasara}
Mumwe nguva yokudzokorora. Nokuti chinhu akatotanga akawanikwa asina kana svikiro iri kutsvakwa, dzivaidza kutenderera:
іf sredn = ISK ipapo kuvhuna;
Kana pakati che siyana kupfuura zvaaida, kurirasa kurutivi rworuboshwe, kureva, rokumusoro kumuganhu avhareji kugadza eremendi:
kana massiv [sredn]> ISK ipapo verh: = sredn;
Uye kana ari zvinopesana, zvinoita muganhu ezasi:
mumwe niz: = sredn;
agumise;
Ndizvo zvose kuti uchava chirongwa.
Ngatikurukurei kuti zvichakanganisa nyatsotarisa binary nzira uchidzidzira. Funga kuko ichi: 1, 3, 5, 7, 10, 12, 18 uye vachatsvaka nhamba 12.
In yose tine 7 okunze, ndizvo zvichaitawo svikiro wechina, mutengo 7.
| 1 | 3 | 5 | 7 | 10 | 12 | 18 |
Sezvo anopfuura 12, 7, 1,3 uye 5 okunze, tinogona kutevedzera. Tinobva uine nhamba 4, 4/2 hapana vakasara iri 2. Saka, chimwe chinhu chitsva vachava avhareji 10.
| 7 | 10 | 12 | 18 |
Pano, pakati maatomu akafanana zviri kare 12, ndiro nhamba inodiwa. Basa iri rakapera - nhamba 12 akawanikwa.
Similar articles
Trending Now