Սկիզբ » Ուսումնական նյութեր » Ծրագրավորում » Ծրագրավորման լեզուներ (Էջ 5)

RSSԲաժին: Ծրագրավորման լեզուներ

Տնային աշխատանք #2։ Սիմվոլիկ դիֆերենցում

Տնային աշխատանք #2։ Սիմվոլիկ դիֆերենցում

| Փետրվար 8, 2013 |

Մի քանի օր առաջ թերթում էի Structure and Interpretation of Computer Programs գիրքը և աչքովս ընկավ մի օրինակ, որտեղ հաշվում էր պարզագույն մաթեմատիկական արտահայտությունների դիֆերենցիալը (2.3.2 Example: Symbolic Differentiation)։ Փորձեցի այն վերարտադրել Tcl լեզվով ու ահա թե ինչ ստացվեց։ Նախապես ասեմ, որ արտահայտություները սահմանափակված են միայն գումարում, հանում, բազմապատկում և բաժանում բինար գործողություններով, իսկ դիֆերենցիալը […]

Կարդալ ամբողջը

Չփոփոխվող տվյալների կառուցվածքների մասին

Չփոփոխվող տվյալների կառուցվածքների մասին

| Հունվար 30, 2013 |

Շարունակելով իմ նախորդ գրառման բինար որոնման ծառերի թեման, ուզում եմ նույն այդ օրինակով ցույց տալ, թե ինչպես կարելի է ծրագրեր գրել օգտագործելով միայն չփոփոխվող (immutable) տվյալների կառուցվածքներ։ Այս անգամ բինար որոնման ծառերի վարքը ծրագրավորել եմ Scheme լեզվով (այն Lisp ընտանիքի թերևս ամենահայտնի ներկայացուցիչն է)։ Ծառը ներկայացված է ցուցակի տեսքով, որի առաջին տարրը արմատի արժեքն է, […]

Կարդալ ամբողջը

C++11: Բինար որոնման ծառեր

C++11: Բինար որոնման ծառեր

| Հունվար 24, 2013 |

Այս գրառման մեջ ես ներկայացնում եմ բինար որոնման ծառի (binary search tree, BST) դասի ծրագրավորումը C++11 լեզվով։ Բինար որոնման ծառերն առանձնանում են նրանով, ամեն մի հանգույցի պարունակած արժեքը ավելի փոքր է քան նրա ձախ ենթածառի արժեքները և ավելի մեծ է, քան նրա աջ ենթածառի արժեքները։ Քանի որ բինար ծառի ամեն մի հանգույցը կարող է ունենալ […]

Կարդալ ամբողջը

Common Lisp: Պարզ ու կատարյալ թվերի մասին

Common Lisp: Պարզ ու կատարյալ թվերի մասին

| Հունվար 20, 2013 |

«N թիվը կոչվում է պարզ, եթե այն բացի մեկից և իրենից այլ բաժանարարներ չունի։» Եթե թվի պարզությունը որոշող ֆունկցիան գրենք ըստ այս սահմանման, ապա պետք է որ ստանանք մոտավորապես հետևյալը․ (defun is-prime-a (num) (loop for k from 2 to (1- num) never (zerop (mod num k)))) Սա իմպերատիվ լուծում է, որտեղ ցիկլի կազմակերպմամբ բացահայտորեն նկարագրված […]

Կարդալ ամբողջը

Tcl ցուցակների հետ աշխատանքը

Tcl ցուցակների հետ աշխատանքը

| Հունվար 17, 2013 |

Ցուցակները Tcl լեզվում կառուցվում են list պրոցեդուրայով։ Այն ստանում է արգումենտների ցուցակ, հաշվարկում է դրանք և արդյունքներից կառուցվում է նոր ցուցակ։ Օրինակ, set a [list [expr 1 + 2] 7 [expr 34 * 2]] պրոցեդուրայի կատարումը a փոփոխականին կվերագրի {3 7 68} ցուցակը։ Հաստատուններից ցուցակ կարելի է կառուցել դրանք պարզապես թվարկելով “{” և “}” փախագծերի […]

Կարդալ ամբողջը

C++11: Կապակցված ցուցակներ (II)

C++11: Կապակցված ցուցակներ (II)

| Հունվար 9, 2013 |

Ժամանակ առ ժամանակ ինձ մոտ ցանկություն է առաջանում ծանոթանալ C++ լեզվի C++11 ստանդարտի հնարավորություններին։ Այս գրառման մեջ ես երկկապակցված ցուցակի (doubly linked list) իրականացման օրինակով փորձում եմ ծանոթանալ լեզվի այնպիսի նորամուծություններին, ինչպիսիք են զրոյական ցուցիչի nullptr արժեքը, տիպի դուրսբերման auto եղանակը, արժեքավորող ցուցակով կոնստրուկտորները, մի կոնստրուկտորում մեկ այլ կոնստրուկտորի օգտագործումը, և այլն։ * * * […]

Կարդալ ամբողջը

Android + PC + Arduino: Տնային սարքերի կառավարում անդրոիդ օհ -ով սմարթ ֆոնից/պլանշետից: Մաս 7, Էլեկտրոնային համակարգերի ավտոմատ նախագծման PROTEUS համակարգ. Տվյալների փոխանցում UART/USART ինտերֆեյսի միջոցով:

Android + PC + Arduino: Տնային սարքերի կառավարում անդրոիդ օհ -ով սմարթ ֆոնից/պլանշետից: Մաս 7, Էլեկտրոնային համակարգերի ավտոմատ նախագծման PROTEUS համակարգ. Տվյալների փոխանցում UART/USART ինտերֆեյսի միջոցով:

| Հունվար 4, 2013 |

Շարունակում ենք: Նախորդ մասում հավաքեցինք սարքի սեխման, բայց այն չի սիմուլացվի Proteus -ում այնքան ժամանակ քանի դեռ չենք գրել և տեղակայել միկրոկոնտրոլերի firmware -ը: Ինչը և կանենք հիմա: ՈՒրեմն քաշում ենք Code VIsionAvr -ծրագրիրը այստեղից  , տեղակայում և բացում ենք: Ստեղծում ենք նոր project: File -> New:   Բացվում է փոքրիկ դիալոգային պատուհան` Create New […]

Կարդալ ամբողջը

Python: Բառարանի օգտագործումը

Python: Բառարանի օգտագործումը

| Դեկտեմբեր 22, 2012 |

Այս գրառման մեջ ես առաջարկում եմ ևս մի լուծում իմ նախորդ գրառման մեջ առաջարկված և Tcl լեզվով լուծված խնդրի համար։ Նորից հիշեցնեմ խնդրի ձևակերպումը. Տրված է որևէ գեղարվեստական ստեղծագործության տեքստ։ Կազմել տեքստում հանդիպող բառերի հաճախության բառարան, որտեղ ամեն մի բառին համապատասխանեցված է տեքստում նրա հանդիպելու քանակը։ Հաշվել տեքստի առանձին բառերի քանակի հարաբերությունը բոլոր բառերի քանակին։ […]

Կարդալ ամբողջը

Ինտերպրետատոր։ Համեմատում, ճյուղավորում, կրկնություն

Ինտերպրետատոր։ Համեմատում, ճյուղավորում, կրկնություն

| Դեկտեմբեր 15, 2012 |

Այս գրառումը իմ երեք նախորդ գրառումների շարունակությունն է («Հաշվարկիչ կամ արտահայտությունների ինտերպրետատոր», «Հաշվարկիչ վերագրման և արտածման հրամաններով», «Հաշվարկիչից դեպի լեզվի ինտերպրետատոր»

Կարդալ ամբողջը

Հաշվարկիչից դեպի լեզվի ինտերպրետատոր

Հաշվարկիչից դեպի լեզվի ինտերպրետատոր

| Դեկտեմբեր 8, 2012 |

«Հաշվարկիչ կամ արտահայտությունների ինտերպրետատոր» հոդվածով ես սկսեցի պատմել, թե ինչպես կարելի է գրել մեծ ամբողջ թվերի հետ թվաբանական գործողություններ կատարող մի պարզ հաշվարկիչ՝ կալկուլյատոր։ Այդ հաշվարկիչը օգտագործողի հետ շփվում է երկխոսության ռեժիմում՝ հերթականությամբ հարցնելով արտահայտության տեքստը, հաշվարկելով այն և արտածելով հաշվարկման արդյունքները։ Երկրորդ հոդվածում, որ կոչվում է «Հաշվարկիչ վերագրման և արտածման հրամաններով», ես ընդլայնեցի հաշվարկիչն […]

Կարդալ ամբողջը

54