top of page
aramhayr

Բնութագիր


Բառաձեւերի, բառակապակցությունների համակցման եւ արհեստական (ծրագրավորողական) լեզուների ֆունկցիաների (մեթոդների) կատարման միջեւ կարելի է հետեւյալ զուգահեռները անցկացնել`

  1. քերականական կառուցվածքի գլխավոր անդամը (տե՛ս 2.6 Խոսքային կառույցների ընդհանրականությունը հատվածը) զուգորդվում է ֆունկցիայի անվան հետ

  2. կոնտեքտի մյուս ձեւույթները ֆունկցիայի արգումենտներ են: Բառաձեւերի դեպքում արգումենտները ածանցներն են, իսկ բառակապակցության դեպքում՝ գլխավոր անդամից բացի բառակապակցության մյուս անդամները` հատկացուցիչները եւ լրացումները

  3. քերականական ֆունկցիայի արժեքը ստացված քերականական միավորն է` բառաձեւը կամ բառակապակցությունն է

Բազմաձեւություն (polymorphism) սատարող ծրագրավորողական լեզուներում ֆունկցիաները տարբերակվում են ոչ միայն անուններով, այլ նաեւ արգումենտների քանակով եւ տեսակներով (նաեւ թվարկման հաջորդականությամբ): Ֆունկցիայի արգումենտների տեսակների հաջորդականությունը կոչվում է ֆունկցիայի բնութագիր (signature):

Ծրագրավորողական ֆունկցիան բնութագրվում է անունով, օրինակ` divide (բաժանել), եւ արգումենտներով, օրինակ` dividend (բաժանելի), divisor (բաժանորդ): Ֆունկցիան իրագործվում է որպես որեւէ ծրագրավորողական լեզվով գրված կոմպյուտերային հրահանգների հաջորդականություն, որը արգումենտների տրված արժեքների համար հաշվարկում է անվանը համապատասխանող ելքային կամ, այլ կերպ ասած, ֆունկցիայի արժեք: Սովորաբար ֆունկցիայի նկարագրությունն ունի հետեւյալ տեսքը`

integer divide (integer dividend, integer divisor)

Այս տողը մեկնաբանվում է որպես «բաժանելի (dividend) ամբողջը (integer) ամբողջ (integer) բաժանորդով (divisor) բաժանելու (divide) արդյունքում ստացվող ամբողջ (integer) քանորդ»: Այս ֆունկցիայի բնութագիրն է (integer, integer):

Քանի որ տվյալ ֆունկցիայի արգումենտները եւ արդյունքի արժեքը ամբողջ թվեր են, ուստի քանորդը առանց մնացորդի է հաշվարկվում` divide (5, 2) = 2:

Եթե ֆունկցիայի բնութագիրը եւ վերադարձվող արժեքը փոխենք, օրինակ`

float divide (float, integer),

ապա կպահանջվի նաեւ ներքին հրահանգների ձեւափոխում, որպեսզի արգումենտների նոր տեսակներով նոր տեսակի ելքային արժեք հաշվարկվի: Ֆունկցիայի իրագործման այս փոփոխությունն անհրաժեշտ է, քանի որ բաժանելիի եւ քանորդի համար իրական (float) թվերի գործածումը կ’երաշխավորի ավելի ճշգրիտ բաժանման արդյունք` divide (5.0, 2) = 2.5:

Այս երկու ֆունկցիաները, կրելով նույն անունը, տարբեր իրագործում են ենթադրում, տարբեր գործողություններ են կատարում եւ տարբեր արդյունք են տալիս բնութագրերի տարբերության շնորհիվ:

Բաժանում ֆունկցիան կարող է այլ բնութագրեր ունենալ` divide (polynomial, polynomial) կամ divide (matrix, matrix): Առաջին դեպքում գործ ունենք բազմանդամների, իսկ երկրորդ` մատրիցների, բաժանման հետ:

Դիտարկում: Մատրիցների բաժանում ասելով՝ հասկանում են մի մատրիցի՝ մի այլ մատրիցի հակադարձով բազմապատկում: «Ուղիղ» եւ «հակադարձ» մատրիցների բազմապատկման արդյունքը միավոր մատրիցն է (մատրիցի բոլոր արժեքները մեկեր են):

Ավելացրի չակերտներ, որ պարզ դառնա անգլերեն նշաններով (բառերով) ֆունկցիայի սահմանման հայերեն բառերով կազմված նախադասության համարժեքությունը (թարգմանությունը)

0 views0 comments

Recent Posts

See All

Comments


bottom of page