Тармақты-шартқа байланысты екі оператордың бірінің орындалуы .
Тармақталу алгоритмінің құрылымы қарапайым болып келеді . Мұнда арифметикалық теңсіздік ( теңдік ) түрінде берілген логикалық шарт тексеріледі . Егер ол орындалса , онда алгоритм бір жолмен , ал орындалмаса екінші жолмен жүзеге асырылады , яғни есепті шығару жолы тармақталып екіге бөлініп кетеді . Тармақталу алгоритмдеріне шартты тексеру блогы міндетті түрде кіреді . Ол ромб түрінде кескінделеді .
у функциясын төмендегі формула бойынша есептеп шығару керек болсын делік .
Мұнда x айнымалысының таңбасына ( оң , теріс ) байланысты не жоғарғы , не төменгі формуланы таңдап алып , сол арқылы у функциясының мәнін табамыз .
2- блоктың орындалу барысында x айнымалысына белгілі бір мән беріледі де , ол мән енгізу операторлары арқылы программаға енгізілуі тиіс .
Бұдан кейін енгізілген мәннің оң немесе теріс екендігі үшінші шартты тексеру блогы арқылы айқындалады . Шарттың " ақиқат " ( иә ) немесе " жалған " ( жоқ ) болуына байланысты 4 - не 5 - блоктардың бірі ғана орындалып , " таңдау " орындалады . 6 блок х айнымалысының және у функциясының сандық мәндерін экранға немесе қағазға басып шығарады.
Математикада , экономикада көптеген есептерді шығару кезеңінде бір теңдеуді пайдаланып , ондағы айнымалының өзгеруіне байланысты оны бірнеше рет қайталап есептеуге тура келетін сәттер де жиі кездеседі . Осындай қайталап орындалатын есептеу процесінің белгілі бір бөліктерін цикл деп атайды . Осы бірнеше рет қайталанатын бөлігі бар алгоритмдер тобы циклдік алгоритмдерге жатады . Циклдік алгоритмдерді пайдалану оларды кейіннен программаларда цикл операторы түрінде қысқартып жазу мүмкіндігін береді . Циклдер қайталану санының алдын ала белгілі және белгісіз болуына байланысты екі топқа бөлінеді . Қайталану сандары алдын ала белгілі болып келген Циклдер тобы арифметикалық цикл болып есептеледі , ал орындалу саны белгісіз циклдер-қадамдық ( итерациялық ) цикл болып аталады .
Практикада белгілі бір айнымалының сандық мәніне байланысты орындалатын арифметикалық циклдер жиі кездеседі . Мұнда арифметикалық прогрессияға ұқсас болып келетін циклдер ең қарапайым арифметикалық цикл болып табылады . Оны басқару қайталану кезеңінде прогрессияның заңына сәйкес тұрақты шамаға өзгеріп отыратын цикл параметрінің сандық мәнімен байланысты болуы тиіс .
Цикл орындалуы алдында оның айнымалы аргументі параметрі алғашқы мәнге ие болуы керек , сонан кейін қайталану кезеңінде цикл параметрі белгілі бір шамаға ( қадамға ) өзгере отырып , ол алдын ала берілген ең соңғы мәнге дейін жетуі қажет .
Алгоритмнің орындалу барысында цикл параметрі , мысалы , x өзінің ең алғашқы хо мəнінен ең соңғы хү мәніне дейін тұрақты шамаға ( dx ) өзгеріп отырады . Осының нәтижесінде x мынадай мәндерді қабылдайды : х0 , х0 + dx , x0 + 2dx , х0 + ( n - 1 ) dx , xk мұндағы n – циклдің қайталану саны , ол былай анықталады :
мұнда [ ... ] өрнектің бүтін бөлігі алынатынын көрсетеді . п әрқашанда бүтін сан болуы тиіс , егер ол аралас сан болса , онда оның бөлшегі алынып тасталады, өйткені циклдің қайталану саны бүтін натуралдық сан болуы тиіс.
Арифметикалық цикл үшін y = f ( x ) функциясын есептеу алгоритмі суретте көрсетілген . Мұндағы 3 - ші , 4 - ші , 7 - блоктар циклді ұйымдастыру үшін қажет.Олар цикл параметрінің алғашқы мәнін , өзгеру қадамын белгілеп және ОНЫҢ ең соҢҒЫ мәніне жеткен - жетпегенін тексереді . Ал 5 - және 6 - блоктар бірнеше рет қайталанып циклдің өзін құрайды . 4 - блок шартты тексеріп қайталану процесін ұйымдастырады .
Алгоритм схемасын салу мен программаны жазуды жеңілдету үшін ЦИКЛ алгоритмдері ықшамдалған түрде " модификатор " немесе " цикл басы " блогын пайдалану арқылы жазылады . Сонда жоғарыдағы суретте көрсетілген 3 - ші , 4 - ші , 7 блоктардың орнына " цикл басы " блогы орналасады .
Ол алтыбұрыш тәрізді геометриялық фигурадан тұрады да , оның міндетті түрде екі кіру және екі шығу сызығы болуға тиіс . Осы блокты пайдалану арқылы жоғарыда келтірілген у = f ( x ) функциясын есептеу алгоритмі алдыңғы суреттегідей түрде кескінделеді . Параметрдің алғашқы x мәні оның соңғы х мəнінен кем болса , онда оның қадамы dx оң сан болады . Керісінше , параметрдің алғашқы мәні оның соңғы мәнінен артық болса , онда қадам теріс сан болады .
Циклді орындаудың алдында , оның қайталану саны белгісіз болған жағдайда қадамдық циклдер пайдаланылады . Мұнда циклді жазу үшін тек қана " шартты тексеру " блогын қолдану қажет , ол циклді аяқтау үшін белгілі бір шартты тексереді . Қадамдық циклдердің схемасын сызғанда модификаторды ( алтыбұрышты ) қолдана алмаймыз , себебі алдын ала циклдің неше рет қайталанатыны бізге белгісіз .
Достарыңызбен бөлісу: |