КомпьютерлерБағдарламалау

Бағдарламалау. Негізгі алгоритмдік құрылыстар

кез келген бағдарламалар қажетті негізгі алгоритмдік дизайнын жасау үшін. Мынадай проблемаларды шешу үшін ең оңай параметр болып табылады. Ол біртекті мысалдар жұмыс істеу үшін, мысалы, пайдаланылуы мүмкін. тармақталған және цикл: басқа да түрлері бар. Яғни осы бапта қамтылатын болады. Бірақ алдымен алгоритм жалпы болып табылады түсіну керек.

алгоритм

сөз «алгоритм» Латын algoritmi келді. Бұл нені білдіреді? Дәлме-сөз математика, IX ғасырда өтті қызметінің атауынан шыққан. Арқасында трактат әл Khorezmi адамзат алгоритмдік жобалаудың негізгі түрімен танысуға және әдетте жалпы тұжырымдамасына еді.

Емле Бұрын нысаны қабылданды - «алгоритмі». Енді ол тек белгілі бір жағдайларда қолданылады.

Алгоритм - дискретті қадаммен жүреді бастапқы деректерді, өзгерту білдіреді процесс. Осы тұжырымдамаға, әрбір адам ол кімде-кім, өмірде тұр. Алгоритмдер шай және азық-түлік, көбейту немесе Сонымен, теңдеулер шешу ретінде сипатталған, және т.б.. Д. болуы мүмкін, оның жұмысы процесі автоматтандырылған Барлық техника, процессор жадында белгіленген айқын қадамдар арқылы жұмыс істейді. Мұндай алгоритмдер тұрмыстық деп аталады. басқа да түрлері бар. АҚШ оларды қарастырып көрейік.

алгоритмдер түрлері

Негізгі алгоритмдік құрылымдар осы тармақта талқыланатын болады, бірнеше түрлері, бөлінеді. Олар қандай?

  1. Ақпарат. Мұндай алгоритмдер үлкен мөлшерде деректердің жұмыс істейтін, бірақ ұзындығы шағын және асқынбаған өңдеу мөлдір көлемі көрсетіледі.
  2. Басқару. Мұндай алгоритмдер операция нақты көзден қол жетімді ақпаратпен байланысты. алғаннан кейін құрылғылардың жұмысын қамтамасыз ету үшін арнайы дабылдар жіберді.
  3. Есептеу. ақпараттық алгоритмдер айырмашылығы деректер аз мөлшерде жұмыс істеу сипатталған, бірақ үлкен жұмыс процесін шығарады.

Шын мәнінде, алгоритм түйек тапсырмасына дәл болып табылады. Алайда, барлық осындай деректер түсіндіреді тұжырымдамасы деп атауға болады емес. алгоритм нұсқау немесе жоқ түсіну үшін, ол белгілі бір қасиеттері бар-жоғын тексеру қажет.

алгоритмдер қасиеттері

Барлық негізгі алгоритмдік дизайн олар іс-шараларды болуы керек «бағынуға». толығырақ осы сұрақты қарастырайық.

толық алгоритмдер және олардың қасиеттерін өнімділігін бақылауға болса, онда сіз міндетті үлгі сәйкес әбден анық, олардың құрамдас түсіну емес екенін көруге болады. Дұрыс нәтиже сіз жай ғана қажетті механикалық әрекетке жабысып, тіпті егер алынған. Осы жылдан бастап, біз салдарынан хабардарлық қызметіне мағынасы болмауына, алгоритм компьютерде іске асыру үшін төлеуге әбден мүмкін деген қорытынды жасауға болады. Басқаша айтқанда, автоматтандырылған құрылғылар осы процестің болуын талап бойынша.

Қандай қасиеттері барынша дәлдік жұмыстары үшін негізгі алгоритмдік кескiндемесi болуға тиiс?

  1. Түсініктілік. Әрбір команда ретінде айқын жүгіру нысан болуы тиіс. Ол ештеңе жоқ, мысалы, орталығында нүктесін сурет салу, қарағанда оңай, бірақ ол әрекет орындайды команда, жүзеге жазылған емес, ол жасалуы мүмкін көрінеді.
  2. Тиімділігі. Ол осы мүлікті екенін білдіреді? нәтиже алу үшін қажетті. алгоритм бірақ жауап қандай әкелуі мүмкін емес. Қатеге байланысты, сіз қалаған болатын дұрыс нәтиже алуға болады, бірақ ол болады. Сонымен қатар, жауап қадамдар белгілі бір санынан кейін алынуға тиіс.
  3. Бұқаралық. Кез келген алгоритм мəселелердің кез сыныбына қолданылатын болуы тиіс. Олардың арасында, олар кіріс деректерді әр түрлі болуы мүмкін.
  4. Certainty. Әрбір іс-қимыл тек бір мағынаға ие, және туынды дешифрлеу үшін мүмкіндік береді тиіс емес. Ең дұрысы, ешқандай мәселе қанша The бағдарламасы болды шығарыла, The нәтижесі тұр The бірдей барлық рет.
  5. Дискретті. Алгоритм - дәйекті іске асыру қадамдар. Әр қадам мүмкін емес жаңаларын өткізіп немесе қосу үшін пәрмен болып табылады.
  6. Дұрыстығын. міндеттерді кез келген қолданылатын кез келген алгоритм, әрбір адам үшін дұрыс болуы керек. бағдарламалау бойынша, проблемалар жиі көп уақыт талап етпейді жазу қадамдар, және сұрақтарға барлық түрлері үшін олардың жүзеге асыру болып табылады жиі бар. Сондықтан, маңызды қадам алгоритмі тіруге болады. Осы және негізгі алгоритмдік жобалау, жақсы нәтижелерге алып келеді, оның қайталау көмектесе алады.

алгоритмдер сипаттамасы

біз алгоритмдері жазу қалай туралы айтар болсақ, ол мынадай бөлектеу керек:

  • Ауызша. Басқаша айтқанда, компонентін айтуға ыңғайлы тілде.
  • Кесте. Қисынды, алгоритм кестеде жазылған және әдетте көмекші элемент ретінде қолданылады.
  • Формула-ауызша. негізі ауызша izyasneniya әдісін қабылданған, бірақ мұндай әрекеттер, сондай-ақ таңбаларды немесе математикалық формулалар жазылған.
  • Графикалық. Мұндай алгоритм арнайы тілдік блок жазылған.

Ол соңғы нүктесін нақтылау қажет. схема дегеніміз не? Бұл сызықтық немесе сызықтық алгоритм, қадамдары ерекше бірлік пайдаланып жазылған. Олар өз конфигурациясы, мақсаты мен функциясы бар. Осы сипаттау жағдайда, алгоритм өзара байланысты сызықтар бар блок-тәсім, жазбаша. Олар сондай-ақ белгілі бір іс-әрекет (қадам) жазу керек.

алгоритмдік жобалау

сызықтық, тармақталған, циклдік: Кейбір алгоритмдер 3 түрлерін және 4 негізгі алгоритмдік жобалау қажеті жоқ деп мәлімдейді. мұндай соқтыратын себебі неде, бұл анық емес. Алайда, осы үш өте үлкен топтар үшін компьютерлік алгоритмдерді пайдалана отырып, күрделі проблемаларды қарапайым шешімдер үшін. АҚШ оларды қарастырып көрейік.

  1. Сызықтық. Бұл есептеу процесі байланысты барлық іс-әрекеттер әр қадам астам рет жүзеге асырылады, онда сызықтық ретпен, жүзеге асырылады, бұл шын мәнінде, осы атауды алды. біз мәселенің схемасын қарастыру болса, онда ол блоктар тізбегі сандар орындау байланысты, басқа да жоғарыда бірін орналастырылған. Сызықтық алгоритмдер бастапқы деректер іс-қимыл бағытын және сезімін өзгерту емес, осындай жолмен жұмыс істейді. Мұндай шешімдер жарамды сомасын немесе айырманы есептеу үшін, шаршы пішіндер, немесе оның периметрі әдісі және т.б.. Н. алгоритмдік жобалау негізгі түрі дәл ол.
  2. Тармақталған. Бұл есептеу процесі логикалық білдіру (LP) және шарттарын таңдау (филиал «жалған» және «шынайы») болуын көздейді. Әрбір жағдайда, ол екі немесе одан да көп команда тек біреуін ғана түсіндім. жүзеге асырылатын болады ешқандай проблемалар және болуы мүмкін емес, әлі күнге дейін басқа да нұсқалары бар. кешенді - алгоритм екі филиал болса екіден көп болса, онда ол, қарапайым болып табылады. соңғы процесі бірінші есебінен жеңіл сияқты. алгоритмдік дизайн негізгі түрі бірінші нүктесі және екінші болып табылады. мынадай нысаны, сондай-ақ бұл тізімге енгізілген.
  3. Циклдік. түрлі кіріс деректерді пайдалану кезінде осы алгоритм міндетті элементі, қайталанады болады. Басқаша айтқанда, мұндай процесс цикл деп аталады.

Бұл олар бөлек пайдаланылуы мүмкін, дегенмен барлық негізгі алгоритмдік жобалау (мынадай, филиалдары, ілмектер), бір-бірімен өзара байланысты екенін атап өткен жөн.

Жарату ілмектер және олардың түрлері

Яғни, ол тұзақтың жасауға қажет?

  • цикл санауыш. Бұл бастапқы мәні анықтайды айнымалы болып табылады, және іс-қимыл қайталау ол өзгереді. Ол міндетті алгоритмі енгізу керек. жақтау түрі жұмыстың негізгі алгоритмдік құрылыс, ол емес болады жоқ.
  • цикл жаңа қайталау бұрын деректер жоғарыда индексі өзгерту.
  • компьютерге жағдайларын тексеріңіз қайтадан қажеті жоқ ілмектер немесе одан да көп «жылжып» орындылығы туралы шешім қабылдайды.

Циклдар детерминделген және итерациялық болуы мүмкін. Бірінші қайталану белгілі саны бар Қайтару болып табылады. Итерациялық цикл - шарт шын немесе жалған дейін белгісіз уақыт мөлшерін қайталанады бірі.

негізгі алгоритмі

Ол негізгі алгоритмдік құрылымдар негізгі алгоритмі қамтиды емес екенін есте тұр. Бұл не? Бұл тұжырымдама бұдан былай заманауи әдебиет табылған, бірақ бұл жасайды және бұдан былай бар дегенді білдірмейді. проблемаларды шешу бірнеше филиалдары немесе қайталауын, мынадай қорытынды тап болуы мүмкін екенін ескере отырып. (Циклдік тармақталған сызықтық,) негізгі алгоритмдік құрылыстар негізгі болып табылады. Шын мәнінде, олар әрбір деп аталатын тапсырмаларын «құрылымдық бөлiмшесi» білдіреді.

сызықтық алгоритмдер

Жоғарыда анық болғандықтан, бір алгоритмдер сызықтық және сызықтық емес болып табылады. Бірінші нұсқа қарастырайық. Неге олар оны аталады? Барлық өте қарапайым. факт алгоритмі ойнады барлық іс-шаралар, барлық қадамдар анық дәйекті іске асыру қатаң бірінен кейін бірі болып табылады. Әдетте, бұл міндеттер шағын және күрделілігі төмен деңгейі бар.

Сызықтық алгоритм мысал шай дайындау процесі болуы мүмкін:

  1. Шәйнектің ішіне су құйыңыз.
  2. қайнату үшін пеш, шайнекті қойыңыз.
  3. кубок алыңыз.
  4. шай ішіп құйыңыз.
  5. қант қосыңыз.
  6. ыстық су қайнаған соң кубогына құйылады.
  7. қасық алыңыз.
  8. қант араластырыңыз.

негізгі алгоритмдік құрылымдарды бағдарламалау - ауыр жеткілікті мәміле, бірақ ол болса сызықтық алгоритм ол жиі оларды іске асыру үшін өте оңай.

тармақталған алгоритмдер

алгоритм тармақталған деп түсінуге болады? Ол сізге орындау немесе орындамау жағдайларына байланысты іс-қимыл екі немесе одан да көп курстар таңдау, бар екенін қамтамасыз ету үшін жеткілікті болып табылады. Әрбір жол филиалы деп аталады.

алгоритм тармақталған басты ерекшелігі шартты филиалының болуы болып табылады. Бұл шындыққа сынақ білдіру немесе өтірік кезінде жүреді.

Әдетте, логикалық өрнектер «тең емес»., «Үлкен немесе тең», белгілері «кем», «көп», «аз немесе тең», «тең» ұсынылған Кейде жағдайы командасының және (U) немесе (немесе) бір-бірімен байланысты нұсқаларын жүзеге асыру бар.

Мысал осындай алгоритм, мүмкін The шешім үшін Келесі мәселе: егер The өрнек ((х + 3) / 1) тең оң сан, содан кейін дисплейде The нәтижесі бойынша The экран, егер теріс - хабардар етуге The пайдаланушы туралы The қате.

негізгі алгоритмдік конструкцияны пайдалануға іс жүзінде жеткілікті қарапайым. Тармақталған шешу үшін ең көп тараған әдістерінің бірі болып табылады.

Детерминирленген цикл немесе цикл санауыш бастап

қарсы цикл - белгілі бір қадам құны өзгереді айнымалы кіреді цикл. Қадам пайдаланушы анықталған немесе бағдарламалық құралды жазғанда бағдарламашы белгіленген. Осы цикл үшін тілдерді көпшілігі үшін оператор пайдаланады.

екі жолдарды 4 рет көрсету үшін бағдарламаға:

  1. «Қалай?»
  2. «Жақсы рахмет!»
  3. «Қалай?»
  4. «Жақсы рахмет!»

Сіз детерминирленген циклын жасау керек. Бұл қалай көрінеді? Біз дизайн жақсырақ қабылдау үшін тілді «Паскаль» пайдаланыңыз.

= 1 2 орындаңыз: Мен: 1.

- Мен қарсы цикл, ол цикл қайталану санын анықтайды.

2. (орган циклі болып табылады және бірге қайталап екі сөз тіркестерінің үшін ирек жақша ашыңыз.) Бастау

3. WriteLn ( 'қалай?' '):

- сөз жалқы тырнақша болып табылатын Арнайы жиһаз бен оргтехника қорытынды сөз тіркестерін білдіреді.

4. WriteLn ( 'Бейнелеу, рахмет').

5. Соңы.

6. Мен: = і + 1.

Сіз, өте оңай және негізгі алгоритмдік конструкцияны пайдалануға тіпті қызықты Көріп отырғанымыздай. Негізгі алгоритмдер шынымен-ақ онсыз ол бағдарламаларды жазу мүмкін емес, белгілі.

шартымен Цикл

шартымен Цикл операторы жақша немесе күрделі сөздерді салмастан іс-шаралар белгісіз санын қайталануы мүмкін. Ол кем дегенде бір рет орындалады. шарты жалған дейін ол циклын жұмыс істейді. Ол дұрыс көрсеткіштерін қалыптастыру бойынша тоқтатады. Бұл алгоритм ол салынды. осы нақты қарқынмен жұмыстың осы түріне негізгі алгоритмдік құрылысы.

B. Осыдан бұл дегеніміз дейін осы цикл іске асыру үшін жобалау қайталаңыз талап етеді «жағдайы жалған дейін қадамдарды қайталаңыз.» Тиісінше, ол В арқылы өзі қайталау процесін білдірді - нәтиже деректер дұрыс мәнді қабылдауы тиіс.

шарты бар цикл

шартымен Цикл бұл кез келген жағдайда кем дегенде бір рет жүзеге асырылады етіп салынған. цикл шарты жағдайда қажет, және қайталану қатысуынсыз жүзеге асырылуы тиіс емес Алайда, жағдайлары бар. Әйтпесе, нәтижесі дұрыс болады. Бұл жағдайда ұстаушыға бар цикл болып табылады. «A B, ал» қажетті жобалау жасау үшін. Бірінші команда сөзбе ретінде аударылады «ұзақ». A - шарттары, және - қайталанатын болады іс-әрекеттер. «Шарт шын дейін әрекетті орындау.» Бүкіл жобалау білдіреді

тек белгілі бір жағдайларда барлық негізгі алгоритмдік жобалау жұмыстары. олар алдын ала отырып, цикл қандай? Егер сіз бір іс-әрекет артық, бірақ бірнеше қайталау қажет болса, онда сіз есептілігін, немесе арнайы жақшаларды пайдалануға немесе күрделі тиіс. оған кіретін кезде жағдайы дұрыс емес болса, цикл-ақ орындалуы мүмкін емес. ол дұрыс болып табылады, егер Тиісінше, іс-шаралар қайталанады.

көмекші алгоритм

көмекші алгоритм тек оның атауын көрсету арқылы басқа процестер қолданылады. Ол ірі алгоритмдік конструкцияларын қолданылмайды, болып табылады. бағдарламалау тілдерінде мұндай іс-әрекет процесі күнделікті деп аталады. коды бар жұмысын жеңілдету, содан кейін одан оңай мәселелерді шешу үшін әрбір іс-қимыл көмекші алгоритм бір бірлігінің, біріктірілген. Олардың әрқайсысы кейіннен бірнеше рет оны байланысу мүмкіндік береді, ол өз есімін сұрасаң болады.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 kk.birmiss.com. Theme powered by WordPress.