کمپیوټرونه, پروګرامونې
د بائنری لټون په یوه صف کې د عنصر موندلو له لارې یو له آسانه لارو څخه دی
ډیری وختونه، پروګرام کونکي، حتی ابتداييان، د حقیقت سره مخ دي چې د شمیرې یوه مجموعه شتون لري چې په دې کې یو مشخص شمیر پیدا کول ضروري دي. دا ټولګه د صف په نامه یادیږي. او په دې کې د سمې عنصر موندلو لپاره، ډیری لارې شتون لري. مګر د دوی ترټولو تر ټولو ساده بائنري لټون دی. دا طریقه څه ده؟ او څنګه د بائنري لټون پلي کول؟ Pascal د داسې یو پروګرام تنظیم کولو لپاره ترټولو ساده چاپیریال دی، نو موږ به یې د مطالعې لپاره کاروئ.
لومړی، موږ به وڅیړو چې د دې میتود ګټې کوم دي، وروسته له دې، موږ کوالی شو پوه شو،
نو، د دې طریقې اصل څه دی؟ ژر تر ژره دا دومره ارزښتناکه ده چې ووایی چې د بائنری لټون پلټنه په کومې اندازې کې نه، بلکه یوازې په یو ترتیب شوي شمیرې کې. په هر ګام کې، د سر منځنۍ عنصر اخیستل کیږي (د عنصر نمبر ته اشاره کوي). که غوښتل شوي شمیر د اوسط څخه ډیر وي نو بیا هرڅه چې ښي خوا ته وي، دا د اوسط عنصر څخه کم وي، کیدای شي له منځه یوړل شي او نه یې پلټل شوي. په برعکس، که د اوسط څخه کم وي، په ښي خوا کې د شمیرې په منځ کې، تاسو نشی کولی د دوی لپاره وګورئ. بله، موږ به د نوې پلټنې ساحه وټاکو، چیرته چې د ټول سایټ منځنی عنصر به لومړنی عنصر وي، او اخری به به وروستنی پاتې وي. د نوې سیمې منځنۍ کچه به د ټولې برخې برخې ¼ وي، کوم چې (وروستنی عنصر + د ټول سایټ اوسط عنصر) / 2 دی. بیا بیا، هماغه عملیات ترسره کیږي - د اوسط شمېر د ارقامو پرتله کول. که غوښتل شوی ارزښت د اوسط څخه کم وي، د ښي لاس اړخ پریږدي، او تر هغه چې دا منځنۍ عنصر پیدا شي تر هغه مه کوئ.
البته، د مثال په لور ترټولو غوره لار دا ده چې څنګه د بائنری لټون ولیکئ. دلته د هر چا لپاره مناسبه ده - نسخه مهم نه دی. راځئ یو ساده پروګرام ولیکئ.
دا به د 1 څخه تر H حرف "massiv" نومیږي، د متغیر د لټون د سرحد حد متغیر دی، چې "niz" نومیږي، چې پورته یې "verh" دی، د منځنۍ پلټنې عنصر "sredn" دی؛ او اړین شمیره شمیره "رنګ" ده.
نو، لومړی د پلټنې وقاله د لوړو او لاندینیو سرحدونو برابرول:
Niz: = 1؛
Verh: = h + 1؛
بیا مو دا سائیکل تنظیموو "پداسې حال کې چې ټیټ د لوړو پولو څخه کم دی":
پداسې حال کې چې نشتر - 1 کوي
پیل کړئ
په هره مرحله کې، د برخې برخې دوهمه برخه ویشئ:
Sredn: = (niz + verh) div 2؛ {د ډوی فعالیت کاروئ ځکه چې موږ پاتې پاتې دی}
هرکله چې موږ یوه پلټنه ترسره کوو. که چېرې اوسط د غوښتل شوې یو سره برابر وي، موږ د چریک مداخله کوو، ځکه چې غوښتل شوي عنصر یې لا دمخه موندلی دی:
که بیا وروسته بریښنا مات شي
که چېرته د منځنۍ منځنۍ عنصر لوی وي له هغه چا څخه چې موږ یې لټوي لوی وي، موږ د ښي خوا څخه ګوښه کوو، دا دی، موږ منځنۍ عنصر د پاسه سرحد ته وړاندې کوو:
که چیرې massiv [srnn]> isk then verh: = sredn؛
او که برعکس، نو موږ دا ټیټه کچه جوړوي:
نه پوهیږي: = sredn؛
پای
دا ټول هغه پروګرام دی چې په پروګرام کې به وي.
راځئ چې تجزیه وکړو چې څنګه به د بائنری میتود په عمل کې وګورئ. داسې یو ډول واخله: 1، 3، 5، 7، 10، 12، 18 او په دې کې 12 شمیره وګورئ.
په مجموع کې، موږ 7 عناصر لرو، له دې امله منځنۍ کچه به څلورم وي، دا ارزښت 7.
| 1 | 3 | 5 | اووم | 10 | 12 | 18 |
له دې امله چې له 12 څخه ډیر لوی وي، عناصر 1،3 او 5 له منځه ځي. بله، موږ 4 شمېره پریښودلي، 4/2 بې له دې پرته. نو نو منځنی عنصر به 10 وي.
| اووم | 10 | 12 | 18 |
دلته منځنی عنصر لا دمخه 12 دی، دا اړین نمبر دی. دا کار بشپړ شوی - 12 شمیره موندل کیږي.
Similar articles
Trending Now