Масаланинг қўйилиши, математик моделлаштиришнинг мақсад ва вазифалари


Самарали алгоритмларни қуриш ва таҳлил қилиш алгоритмлари


Download 1.29 Mb.
bet28/38
Sana18.06.2023
Hajmi1.29 Mb.
#1568229
1   ...   24   25   26   27   28   29   30   31   ...   38
Bog'liq
Масаланинг ўйилиши, математик моделлаштиришнинг ма сад ва вазиф

3.1 Самарали алгоритмларни қуриш ва таҳлил қилиш алгоритмлари
Алгоритм тушунчаси ва унинг вазифаси
Алгоритм сўзи ўрта асрларда пайдо бўлиб, буюк ўзбек мутафаккири Ал-Хоразмийнинг (783-855) ишлари билан европаликларнинг биринчи бор танишиши билан боғлиқдир. Бу илмий ишлар уларда жуда чуқур таасурот қолдириб алгоритм (aлгoритми) сўзининг келиб чиқишига сабаб бўлдики, у Ал-Хоразмий исмининг лотинча айтилишидир.
Алгоритм деганда, берилган масалани ечиш учун маълум тартиб билан бажарилиши керак бўлган чекли сондаги буйруқлар кетма-кетлигини тушунилади.
Бирор масалани компьютерда ечишда энг мухим ва маъсулиятли ишлардан бири қўйилган масалани ечиш алгоритмини яратиш бўлиб, бу жараёнда бажарилиши керак бўлган хамма бўлажак буйруқлар кетма-кетлиги аниқланади. Маълумки, компьютернинг ўзи хеч қандай масалани ечмайди, балки программа кўринишида ёзилган алгоритмни бажарувчи ҳисобланади холос. Шунинг учун, алгоритмда йўл қўйилган хато хисоблаш жараёнининг нотўғри бажарилишига олиб келади, бу эса ўз навбатида ечилаётган масаланинг хато натижасига олиб келади.
Бирор сохага тегишли масалани ечиш алгоритмини яратиш, алгоритм тузувчидан шу сохани мукаммал билган холда, қўйилган масалани чуқур таҳлил қилишни талаб қилади. Бунда масалани ечиш учун керак бўлган ишларнинг режасини туза билиш мухим ахамиятга эга. Шунингдек, масалани ечишда иштирок етадиган объектларнинг қайсилари бошланғич маълумот (масалани ечиш учун зарур бўлган маълумотлар) ва қайсилари натижалигини аниқлаш, улар ўртасидаги ўзаро боғланишни аниқ ва тўла кўрсата билиш лозим.
Aлгoритм қуйидaги aсoсий xoссaлaргa эгa: узлуклилик, aниқлик, нaтижaвийлик вa oммaвийлик.
УЗЛУКЛИЛИК. Дaстлaбки берилгaн мaлумoтлaрни нaтижaгa aйлaнтириш жaрaёни узлукли рaвишдa aмaлгa oширилaдики, бундa вaқтнинг xaр бир кейинги келaдигaн дaқиқaсидaги миқдoр (кaт­тaлик)лaрнинг қиймaти вaқтнинг шундaн oлдинги дaқиқaсидa бўлгaн миқдoрлaр қиймaтидaн мa`лум бир қoидaлaр бўйичa oли­нaди.
AНИҚЛИК. Aлгoритмнинг xaр бир қoидaси aниқ вa бир қий­мaтли бўлиши зaрурки, бундa вaқтнинг бирoр дaқиқaсидa oлин­гaн миқдoрлaр қиймaти вaқтнинг шундaн oлдинги дaқиқaсидa oлингaн миқдoрлaр қиймaти билaн бир қиймaтли aниқлaнгaн бўлaди.
НAТИЖAВИЙЛИК. Aлгoритм мaсaлaнинг ечимигa чекли сoндaги қaдaмлaр ичидa oлиб келиши ёки мaсaлaни "ечиб бўлмaйди" де­гaн xaбaр билaн тугaши керaк.
OММAВИЙЛИК. Мaсaлaнинг ечиш aлгoритми шундaй ярaтилиши керaкки, уни фaқaт бoшлaнғич мaлумoтлaр билaн фaрқлaнaдигaн мaсaлaлaрни ечиш учун xaм қўллaнилиши керaк.
7. Алгоритмни ифодалаш усуллари, унинг хоссалари ва унга қўйиладиган талаблар
Масалани ечишнинг алгоритмини турли усуллар билан ифодалаш мумкин:
сўз билан;
блок-схемалар шаклида;
формулалар орқали;
алгоритмик тиллар орқали ва х.з.
Энди бирор усулда тузилган алгоритмнинг айрим хоссалари ва алгоритмга қўйилган баъзи бир талабларни кўриб чиқайлик:
Алгоритм хар доим бир қийматлидир, яъни уни бир ҳил бошланғич қийматлар билан кўп марта қўллаш ҳар доим бир ҳил натижа беради.
Алгоритм биргина масалани ечиш қоидаси бўлиб қолмай, балки турли-туман бошланғич шартлар асосида маълум турдаги масалалар тўпламини ечиш йўлидир.
Алгоритмни қўллаш натижасида чекли қадамдан кейин натижага эришамиз ёки натижага эришиш мумкин эмаслиги ҳақидаги маълумотга эга бўламиз.
Юқорида келтирилган хоссаларни ҳар бир ижрочи ўзи тузган бирор масаланинг алгоритмидан фойдаланиб текшириб кўриши мумкин. Масалан,
ax2+бx+c=0
квадрат тенгламани ечиш алгоритми учун юқорида санаб ўтилган алгоритмнинг хоссаларини қуйидагича текшириб кўриш мумкин:
- агар квадрат тенгламани ечиш алгоритми бирор усулда яратилган бўлса, биз ижрочига бу алгоритм қайси масалани ечиш алгоритми эканлигини айтмасдан a,б,c ларнинг аниқ қийматлари учун бажаришни топширсак, у натижага эришади ва бу натижа квадрат тенгламаларнинг ечими бўлади, Демак, алгоритмни ижро этиш алгоритм яратувчисига боғлиқ эмас;
- худди шунингдек, a,б,c ларга доим бир ҳил қийматлар берсак, алгоритм ҳар доим бир ҳил натижа беради, яъни тўлиқдир;
- яратилган бу алгоритм фақатгина битта квадрат тенгламанинг ечиш алгоритми бўлиб қолмай, балки у a,б,c ларнинг мумкин бўлган барча қийматлари учун натижа хосил қилади ва шу турдаги барча квадрат тенгламаларнинг ечиш алгоритмидир;
- алгоритмнинг охириги хоссаси ўз-ўзидан бажарилади, яъни квадрат тенгламани ечиш албатта чекли қадамда амалга оширилади.
Дастур тузувчи учун ЭҲМнинг иккита асосий параметри энг мухимдир: компьютер хотирасининг хажми ва тезкорлиги. Шунингдек, алгоритм тузувчидан икки нарса талаб қилинади. Биринчидан, у тузган дастур компьютер хотирасидан энг кам жой талаб этисин, иккинчидан, энг кам амаллар бажариб масаланинг натижасига эришсин. Умуман олганда, бу икки талаб бир-бирига қарама-қаршидир, яъни алгоритмнинг ишлаш тезлигини ошириш, алгоритм учун зарур хотирани оширишга олиб келиши мумкин.

Download 1.29 Mb.

Do'stlaringiz bilan baham:
1   ...   24   25   26   27   28   29   30   31   ...   38




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling