Файл: Алгоритмлаш асослари.doc

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 28.03.2024

Просмотров: 5

Скачиваний: 0

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

Алгоритмлаш асослари.

Режа:

1. Алгоритм атамасининг келиб чиқиши, алгоритм тушунчаси.

2. Алгоритм хоссалари, ишлаш принсиплари ва уларни ёзиш (сўзли, псевдокод, график) усуллари.

3. Бирор амалий масала ечими учун блок-схема тузинг.

Алгоритм ва унинг хоссалари.

Компьютер маълум бир вазифани бажариши учун, аввало ҳисоблаш алгоритмини ишлаб чиқиш зарур.

Алгоритм – бир типдаги масалаларни ечишда ишлатиладиган амаллар системасининг муайян тартибда бажарилишининг аниқ қоидасидир. Алгоритм ибораси буюк ўзбек олими математик Муҳаммад ал-Хоразмий номидан олинган бўлиб, у IX асрда ўнлик саноқ системаси бўйича тўрт арифметик амал бажарилиш қоидасини ўйлаб топган. Узоқ йиллар давомида “алгоритм” ибораси математиклар томонидан математик масалаларни ҳисоблаш қоидаларини ифода этишда ишлатилган.

Компьютернинг ишлаш жараёни худди ана шу қоида - алгоритм орқали амалга оширилади. Компьютер алгоритмларни бажарувчидир.

Компьютерга масала тайёрлаш жараёнини икки босқичга бўлиш мумкин:

1.алгоритм тузиш (киритиладиган маълумотлар ва натижаларга талаб, масаланинг қўйилиши, алоҳида ҳолатларни эътиборга олиб ечимни аниқ ифодалаш);

2.компьютер тушунадиган тилда алгоритмни ифода этиш, яъни масалани ечиш дастурини тузиш.

Алгоритмни турли кўринишда ифода этиш мумкин: сўзлар ёрдамида, математик формулалар, алгоритм блок-схемаси ёрдамида.

Алгоритмнинг хоссалар:

  1. аниқлик – алгоритм қўйилган масалани буткул ифодалаши зарур.

  2. дискретлик (тартиблилик) – алгоритмда компьютердаги барча амаллар аниқ тартибда жойлашган бўлиши зарур.

  3. натижавийлик – алгоритм имкон қадар мужассамлашган бўлиши, яъни минимум дастурий қадамлардан фойдаланиб натижага эга бўлиш зарур.

  4. оммавийлик – алгоритм имкон қадар универсал бўлиши, яъни турли хилдаги масалаларни ечиш учун мос келиши керак.


Дастур ва дастурлаштириш.

Алгоритмда кетма-кет бажариладиган операциялар мажмуаси дастур дейилади. Дастур буйруқлардан ташкил топган бўлиб, ҳар бир буйруқ маълум бир тугалланган амални бажаради. Шунинг учун
дастур компьютер тушунадиган тилда ёзилган алгоритмдир. Дастур тузиш жараёнини дастурлаштириш дейилади.

Дастурлаштириш тилида ёзилган операторлар кетма-кетлиги ҳам дастур дейилади. Компьютер ёзилган дастурни ўз тилига ўгириб олади. Бунинг учун махсус дастурлар ишлаб чиқилган бўлиб, уларни транслятор деб аталади. Трансляторлар икки хилда бўлиши мумкин:

  1. Дастур – интерпретатор, дастурнинг ҳар бир қаторини таҳлил қилади ва бажаради. Инетрпертатор дастурларга Basic ва Perl тилларини киритиш мумкин.

  2. Дастур – компилятор, ёзилган дастурни тўлиқ таҳлил қилади ва бажарилишга тайёр машина кодини шакллантиради. Компилятор дастурларга C, C++, Pascal, Java, Fortran тилларини киритиш мумкин.


Дастурлаштириш тиллари.

Дастурлаш тиллари иккита асосий гуруҳга бўлинади:

  1. қуйи даражадаги дастурлаш тиллари; бу гуруҳга машина кодлари ва ассемблер тили киради.

  2. юқори даражадаги тиллар; бу гуруҳдаги барча тилларни етти асосий категория бўйича синфлаш мумкин: чизиқли тиллар, процедура тиллари, мантиқий тиллар, объектга йўналтирилган тиллар, маълумотлар базасига сўров тиллари, сценарийлар тиллари, макрослар.

Чизиқли тиллар дастурлаштириш тизимининг бошланғич тилларидан бўлиб, у оддий арифметик масалаларни ечишга мўлжалланган эди.

Процедурали тиллар маълум бир операцияларни бажариш учун йирик мантиқий блоклардан ташкил топган тил бўлиб, уларда модулли дастурлаш принципи ишлатилади. Модули дастурлаш – дастур кодининг қисми бўлиб, процедуралар ва функциялар кўринишида ёзилади. У керак вақтда дастурнинг асосий қисмдан чақириб олинади. Fortran, Cobol, Lisp, Algol, Basic, Pascal, C.

Мантиқий тиллар мантиқий моделлардан фойдаланиб, табиий тилдаги гапларни формал ёзилишига ўхшайди. Бу тилларнинг асосида мураккаб назария борлиги учун улар кенг тарқалмаган.

Объектга йўналтирилган тиллар асосида ўзгарувчилар, процедуралар ва функциялар бир синфга бирлашиб объект кўринишидаги кодда ишлатилади. Бу тилларда асосий эътибор процедура ва функцияларнинг ўзаро бир-бири билан боғланган ҳаракатига қаратилади. С++, Java, C# (2000), Delphi (1998), Visual Basic.

Маълумотлар базасига сўров тиллари маълумотлар базасигага мулоқотни таъминлайди. Унинг ёрдамида маълумотлар ва уларнинг тузилиши билан опрециялар бажариш мумкин. Уларни кўпинча сўровларни структуравий тиллари деб аталади. Бу тилларда яратиладиган дастурларга умумий талаб қўйилган бўлиб, у SQL 92 деб номланади.



Сценарийлар тиллари Web-ишланмалар соҳасида турли маълумотлар базаси билан ўзаро харакатда бўладиган янгиланиб турувчи Web-сайтларни яратишда фойдаланилади. Сценарий - HTML-хужжатга асосланган интепретацияланувчи дастурдир. Visual Basic Script, JavaScript, Perl ва PHP.

Макрослар кўп фойдаланиладиган амалларни автоматлаштириш учун фойдаланилади. Макрос – битта буйруқ сифатида бажарилувчи кўрсатмалар тўпламидир.

Ҳар қандай масалани компьютерда ечиш қуйидаги босқичлардан иборат:

масаланинг қўйилиши; алгоритм танлаш; дастур тузиш; дастурни таҳлил қилиб компьютерда ўзлаштириш; ечим.
Визуал дастурлаштириш ва унинг инстурментлари.

Windows даги барча дастурлар Win32 API амалий дастурлаш интерфейсининг функциялар тўпламидан фойдаланишга асосланади. Бу интерфейс турли дастурлаш тиллари Билан ишлаш учун махсус ишлаб чиқилган. Бу интерфейс функцияларини қўлланиш соҳалари кенг бўлиб – бу графика билан ишлаш, файллар, ойналар ва бошқалар.

Визуал дастурлашнинг яратилиши 90-йилларнинг бошларига тўғри келади. Ҳозирги кунда визуал дастурлаш тиллари иловалар интерфейсини ишлаб чиқишда осонлаштиради. Бундай тизимларнинг ўз номи бўлиб, RAD (Rapid Application Development) – иловаларни тез ишлаб чиқиш муҳити дейилади. Дастурлаштиришдаги бундай ёндашувда асосий эътибор дастур мантиқига қаратилади. Ишлаб чиқаришнинг ҳар бир муҳити тартибланган обектларнинг ката тўпламига эга.

Дастурларни визуал яратишнинг кенг тарқалган воситаларига Microsoft фирмасининг Visual Studio оиласининг маҳсулотлари, Borland компаниясининг Delphi ва C++ Builder муҳитлари киради.

Borland Delphi дастурлаштириш муҳити 1995 йилда яратилди. Ундан фойдаланиб оддий иловалардан тортиб салмоқли корпоратив лойиҳаларни ишлаб чиқиш мумкин.

Visual Studio 1997 йилда яратилган. У ўзида турли Windows-иловаларини лойиҳаловчилар ва ишлаб чиқувчилар учун инструментларнинг катта қисмини мужассамлаштиргандир. Visual Studio 6.0. пакетининг охириги версияси ўзи ичига қуйидаги дастурлаштириш тилларини олган: Visual Basic, Visual C++, Visual FoxPro, Visual InterDev, Visual J++, Visual SourceSafe.