Fortran
Фортран [инг . фор (мула)тран (слатион) — формулалар таржимаси] — ЭҲМ (компютер) ёрдамида илмий-техникавий масалаларни ечиш алгоритмини баён қилиш учун қўлланадиган дастурлаш тили. У 1954 — 1957 йиллар мобайнида Жон Бекус раҳбарлигида ИБМ фирмасида яратилган энг биринчи юқори сатҳли компиляторли программалаш тилидир. Фортрангача барча компютер программалари машина кодларида ёки белгили ассемблерларда ёзилар эди.
Мана 60 йилдан ортиқ вақт мобайнида Фортран фан ва инженерлик соҳаларидаги ҳисоблашларни бажаришда кенг қўлланади. Бу вақт мобайнида илмий ва инженерлик соҳасидаги мураккаб муаммоларни ҳал қилиш учун Фортранда ўта кўп миқдорда тайёр программалар библиотекалари яратилди. Масалан, БЛАС, ЛАПАCК, ЛИНПАCК, ЭИСПАCК, МИНПАCК, АРПАCК, ИМСЛ, НАГ ва бошқалар. Фортран компилятори ишламайдиган бирорта операцион тизим ёки процессор мавжуд эмас. Бошланишида Фортран ИБМ компаниясининг корпоратив стандартлари миқёсида ривожлантирилди. Улар Фортран ИИ ва Фортран ИВ номлари билан маълум. Кейинчалик у Америка миллий стандартлар институти (АНСИ) ва халқаро стандартлаштириш ташкилоти (ИСО) миқёсида қараладиган бўлди.
АНСИ да Фортранни стандартлаштиришга жавобгар Х3Ж3 техник қўмита ташкил қилинган. ИСО/ИЭC ЖТC1/СC22/WГ5 (қисқача WГ5) халқаро кузатувчилар гуруҳи Фортранни ИСО миқёсида стандартлаштиришни бошқаради. Турли стандартларга мансуб Фортранлар орасидаги мослик Х3Ж3 қўмита фаолияти орқали таъминланади. Унга кўра программалаш тилининг эскирган хусусиятлари аввалдан эълон қилинган вақт ўтгачгина олиб ташланади (қоида бўйича 10 йилдан кам бўлмаган вақт мобайнида). ИБМ фирмасининг корпоратив стандартига асосланиб 1966 йилда биринчи халқаро стандарт Фортран 66 яратилди, ундан кейин процедурали ва таркибли программалашга имкон берувчи Фортран 77 (1978 йил) ва объэктларга йўналтирилган программаларни ёзишга имкон берувчи Фортран 90 (1991 йил) пайдо бўлди.[1]
1997-йилда қабул қилинган Фортран 95 стандарти Фортран 90 нинг тўғриланган ва яхшиланган вариантидир. Кейинчалик яратилган Фортран 2003 (2004-йил) ва Фортран 2008 стандартларида обектга йўналтирилган программалаш имкониятларини кенгайтириш, параллел ҳисоблашлар учун қуролларни (cо-аррай) тилни ички хусусиятлари сифатида аниқлашга ва тилни операцион тизим билан ўзаро таъсирлашишини қулайлаштиришга ҳаракат қилинган.
Фортранда программа тузиш
Фортранда программа тузиш учун оддийгина матн редактори (Нотепад), Вим, нано ёки эмаcс каби оддий матн таҳрирлагичларидан фойдаланиш мумкин.
Программа тузишда ҳеч қачон МС Wорд каби матн протессорларидан фойдаланманг!
Масалан, Фортран тилида энг содда программа қуйидагича кўринишда бўлади:
WРИТЕ(*,*)"Салом, дунё"
ЭНД
Ёзилган дастурни бирон ном билан, масалан „ҳелло.ф90“ номи билан сақлаймиз. Шундан сўнг ушбу ёзилган программани гфортран компилятори ёрдамида компиляция қилиш лозим. Бунинг учун буйруқлар қатори (инг. cомманд лине, ёки русча командная строка) га қуйидаги буйруқни киритиш лозим:
гфортран -c ҳелло.ф90
гфортран -о техт.х ҳелло.ф90
Натижада тест.х номли бажарилувчи файл пайдо бўлади. Уни қуйидаги буйруқ билан ишга туширамиз:
./тест.х
Натижада экранда Салом дунё! ёзуви пайдо бўлади.
Компилятор билан ишлагандаги ёзувда гфортран — Линух учун эркин тарқатиладиган Фортран компиляторининг номи (Wиндоwс операцион системасида кўпинча ишлатиладиган Фортран компилятори номи, масалан, Фортран Поwер Статион ҳолида, фл32). Компилятор номидан кейин ёзилган -c опсия 1 компиляторга бажарилувчи файл ҳосил қилинмасин, фақат .о кенгайтмали обект файл яратилсин холос деган
хабарни беради[2]. Юқоридаги буйруқлардан биринчиси ишлагач гфортран компилятор программа матни сақланган биринчи_прог.ф90 номли файл ичидаги Фортран буйруқларини компютер тушинадиган буйруқларга таржима
қилади ва таржима қилинган буйруқларни ҳелло.о номли файлга сақлайди. Иккинчи буйруқ эса ҳелло.о файлдан бажарилувчи тест.х номли файлни
яратади, бу ерда -о опсия бажарилувчи файл ҳосил қилинсин ва унинг номи тест.х
бўлсин деган маънони беради. Ушбу буйруқлар ишлагандан сўнг тест.х номли бажарилувчи файл пайдо бўлади. Фортраннинг эски диалектларида, масалан, Фортран 77 стандартида ёзилган программа матни сақланган файл биринчи_прог.ф ёки
биринчи_прог.фор каби номланар эди. Фортран 90/95 стандарти синтаксисида ёзилган программа матни сақланган файл эса биринчи_прог.ф90 ёки биринчи_прог.ф95 ном билан сақланади. Файлларни номлаш қоидаларини эсласак, файл номи нуқта
билан ажратилган иккита қисмдан иборат бўлади. Биринчи қисм ном ва иккинчи қисм кенгайтма деб аталади. Бизни ҳолда Фортранда ёзилган программа матни сақланган файлда ҳелло ном ва ф90 кенгайтмадир, улар нуқта билан ажратилган. Компилятор файл номидаги кенгайтма орқали унда программа Фортраннинг қайси диалектида ва у фиксирланган ёки эркин шаклда ёзилганини билиб олади.
Фортранда махсус сўзлар
Махсус сўзлар — программада гапларни тузишда ишлатилади. Улар икки хил бўлади: банд қилинган ва калит сўзлар.
- Банд қилинган сўзлар[3] — аниқ маънога ва вазифага эга. Улар программалаш
тили стандартида аниқлаган бўлади. Уларни ишлатишдаги ҳар қандай ноаниқлик жиддий хатога сабаб бўлади.
- Калит сўзлар — программанинг қаэрида ишлатилганига қараб турли вазифага эга.
Фортран тилида банд қилинган сўзлар:
АДМИТ БАCКСПАCЕ CОММОН ДЕАЛЛОCАТЕ ЭНД ЭХИТ ИМПЛИCИТ
ИНТРИНСИC ОПЕН ПРЕCИСИОН АЛЛОCАТАБЛЕ БЛОCКДАТА CОМПЛЕХ
ДЕФАУЛТ ЭНДФИЛЕ ЭХТЕРНАЛ ИНCЛУДЕ ЛОГИCАЛ ОПТИОНАЛ ПРОCЕДУРЕ
АЛЛОCАТЕ CАЛЛ CОНТАИНС ДИМЕНСИОН ЭНД ИФ ФОРМАТ ИНҚУИРЕ МАП
ПАРАМЕТЕР ПРОГРАМ АССИГН CАСЕ CОНТИНУЭ ДО ЭНД СЕЛЕCТ ФУНCТИОН
ИНТЕГЕР МОДУЛЕ ПАУСЕ РЕАД АССИГНМЕНТ CҲАРАCТЕР CЙCЛЕ ДОУБЛЕ
ЭНТРЙ ГО ТО ИНТЕНТ НАМЕЛИСТ ПОИНТЕР РЕАЛ АТЕНД CЛОСЕ ДАТА ЭЛСЕ
ЭҚУИВАЛЕНCЕ ИФ ИНТЕРФАCЕ НОНЕ ПРИНТ РЕCОРД РЕCУРСИВЕ WҲИЛЕ
РЕТУРН ТАРГЕТ WРИТЕ РЕWИНД ТҲЕН САВЕ ТЙПЕ СТОП УНИОН СТРУCТУРЕ УСЕ