СДЕЛАЙТЕ СВОИ УРОКИ ЕЩЁ ЭФФЕКТИВНЕЕ, А ЖИЗНЬ СВОБОДНЕЕ

Благодаря готовым учебным материалам для работы в классе и дистанционно

Скидки до 50 % на комплекты
только до

Готовые ключевые этапы урока всегда будут у вас под рукой

Организационный момент

Проверка знаний

Объяснение материала

Закрепление изученного

Итоги урока

Ծրագրավորման c++ լեզվի հիմունքները

Категория: Информатика

Нажмите, чтобы узнать подробности

Ծրագրավորման  լեզուները  հիմնականում  ինտեգրացված  աշխատանքային  միջավայր  են  ունենում, որտեղ  ծրագրային  տեքստերը ստեղծվում,կարգաբերվում  և  անհրաժեշտության  դեպքում  իրագործվում  են:

Просмотр содержимого документа
«Ծրագրավորման c++ լեզվի հիմունքները»

ԾՐԱԳՐԱՎՈՐՄԱՆ C++ ԼԵԶՎԻ  ՀԻՄՈՒՆՔՆԵՐԸ C++ ԾՐԱԳՐԻ ԱՇԽԱՏԱՆՔԱՅԻՆ  ՄԻՋԱՎԱՅՐԸ

ԾՐԱԳՐԱՎՈՐՄԱՆ C++ ԼԵԶՎԻ ՀԻՄՈՒՆՔՆԵՐԸ

C++ ԾՐԱԳՐԻ

ԱՇԽԱՏԱՆՔԱՅԻՆ

ՄԻՋԱՎԱՅՐԸ

Ծրագրավորման լեզուները հիմնականում ինտեգրացված աշխատանքային միջավայր են ունենում, որտեղ ծրագրային տեքստերը ստեղծվում,կարգաբերվում և անհրաժեշտության դեպքում իրագործվում են:

Ծրագրավորման լեզուները հիմնականում ինտեգրացված աշխատանքային միջավայր են ունենում, որտեղ ծրագրային տեքստերը ստեղծվում,կարգաբերվում և անհրաժեշտության դեպքում իրագործվում են:

Visual C++ -ի աշխատանքային միջավայր մտնելու համար անհրաժեշտ է հաջորդաբար կատարել հետևյալ քայլերը. Start Programs Microsoft Visual Studio Microsoft Visual C++

Visual C++ -ի աշխատանքային միջավայր մտնելու համար անհրաժեշտ է հաջորդաբար կատարել հետևյալ քայլերը.

Start

Programs

Microsoft Visual Studio

Microsoft Visual C++

Արդյունքում էկրանին կբերվի C++ գլխավոր պատուհանը՝ աշխատանքային միջավայրը: Գլխավոր պատուհանը 3 բաղկացուցիչ մաս է ներառում՝ Աշխատանքային նախագծի պատուհան(Project workspace), որը օգնում է բազմաթիվ ֆայլերից բաղկաղկացած ծրագիր մշակելիս, Խմբագրիչի պատուհան(Editor),որտեղ ներմուծվում և խմբագրվում է ծրագրի տեքստը, Աշխատանքայինտեղեկատվության արտածման պատուհան, ուր ծրագրի կոմպիլիացիայի(թարգմանման),կապակցման ու կատարման փուլերին առնչվող տեղեկատվություններ են արտածվում

Արդյունքում էկրանին կբերվի C++ գլխավոր պատուհանը՝ աշխատանքային միջավայրը:

Գլխավոր պատուհանը 3 բաղկացուցիչ մաս է ներառում՝

  • Աշխատանքային նախագծի պատուհան(Project workspace), որը օգնում է բազմաթիվ ֆայլերից բաղկաղկացած ծրագիր մշակելիս,
  • Խմբագրիչի պատուհան(Editor),որտեղ ներմուծվում և խմբագրվում է ծրագրի տեքստը,
  • Աշխատանքայինտեղեկատվության արտածման պատուհան, ուր ծրագրի կոմպիլիացիայի(թարգմանման),կապակցման ու կատարման փուլերին առնչվող տեղեկատվություններ են արտածվում
հիմնական գործիքաշար Մենյուի տող Խմբագրիչի պատուհան Աշխատանքային նախագծման պատուհան Աշխատանքային տեղեկատվության արտածման պատուհան

հիմնական գործիքաշար

Մենյուի տող

Խմբագրիչի պատուհան

Աշխատանքային նախագծման պատուհան

Աշխատանքային տեղեկատվության արտածման պատուհան

Չնայած Visual C++-ը թույլատրում է աշխատել պատուհանային համակարգին հատուկ գրաֆիկական բարձրակարգ ձևավորմամաբ միջավայրում ,կոնսոլային ներդիրը բեռնավորելիս օպերացիոն համակարգը կոնսոլային պատուհան է ձևավորում,որը նման է MS DOS օպերացիոն համակարգում հրամանային տողի ռեժիմով աշխատելիս բացվող պատուհանին:Կաշխատենք կոնսոլային ներդիրով,քանի որ այս ռեյիմն է առավել հարմար կիրառել C++ լեզուն ուսումնասիրելու համար:

Չնայած Visual C++-ը թույլատրում է աշխատել պատուհանային համակարգին հատուկ գրաֆիկական բարձրակարգ ձևավորմամաբ միջավայրում ,կոնսոլային ներդիրը բեռնավորելիս օպերացիոն համակարգը կոնսոլային պատուհան է ձևավորում,որը նման է MS DOS օպերացիոն համակարգում հրամանային տողի ռեժիմով աշխատելիս բացվող պատուհանին:Կաշխատենք կոնսոլային ներդիրով,քանի որ այս ռեյիմն է առավել հարմար կիրառել C++ լեզուն ուսումնասիրելու համար:

ՄԵԿՆԱԲԱՆՈՒԹՅՈՒՆ

ՄԵԿՆԱԲԱՆՈՒԹՅՈՒՆ

Մեկնաբանությունները մատչելի է դարձնում ծրագրի բացատրման գործընթացը:Առանց բացատանիշի իրար հաջորդող երկու գծերի(//) միջոցով տրվում են ծրագրի տվյալ տողին վերաբերվող մեկնաբանությունները,իսկ մեկնաբանությունները մի քանի տող է զբաղեցնում, ապա այն սկսում են/*և ավարտում*/ պայմանանշանների համակցությամբ: //1 տողը ներառում է հատուկ հրահանգ, այսպես կոչված,ՊՐԵՊՐՈՑԵՍՈՐԻՆ ուղղված ԴԻՐԵԿՏԻՎ,որը ներմուծման և արտածման գործընթացն ապահովող որոշ լրացուցիչ ծրագրային միջոցներ է կցում գրված ծրագրին:

Մեկնաբանությունները մատչելի է դարձնում ծրագրի բացատրման գործընթացը:Առանց բացատանիշի իրար հաջորդող երկու գծերի(//) միջոցով տրվում են ծրագրի տվյալ տողին վերաբերվող մեկնաբանությունները,իսկ մեկնաբանությունները մի քանի տող է զբաղեցնում, ապա այն սկսում են/*և ավարտում*/ պայմանանշանների համակցությամբ:

//1 տողը ներառում է հատուկ հրահանգ, այսպես կոչված,ՊՐԵՊՐՈՑԵՍՈՐԻՆ ուղղված ԴԻՐԵԿՏԻՎ,որը ներմուծման և արտածման գործընթացն ապահովող որոշ լրացուցիչ ծրագրային միջոցներ է կցում գրված ծրագրին:

ՊՐՈՑԵՍՈՐԱՅԻՆ ԴԻՐԵԿՏԻՎՆԵՐԸ ՂԵԿԱՎԱՐՈՒՄ ԵՆ ԾՐԱԳՐԻ ՏԵՔՍՏԻ ՁԵՎԱՓՈԽՄԱՆ ԳՈՐԾԸՆԹԱՑԸ՝ ՆԱԽՔԱՆ ԾՐԱԳԻՐԸ ԹԱՐԳՄԱՆԵԼԸ

ՊՐՈՑԵՍՈՐԱՅԻՆ ԴԻՐԵԿՏԻՎՆԵՐԸ ՂԵԿԱՎԱՐՈՒՄ ԵՆ ԾՐԱԳՐԻ ՏԵՔՍՏԻ ՁԵՎԱՓՈԽՄԱՆ ԳՈՐԾԸՆԹԱՑԸ՝ ՆԱԽՔԱՆ ԾՐԱԳԻՐԸ ԹԱՐԳՄԱՆԵԼԸ

Ընդհանրապես #include հրահանգի միջոցով նախնական տեքստի արտաքին այլ, նախապես կազմավորված ֆայլեր են կցվում: Հաճախ դրանք .հ ընդլայնում ունեցող ֆայլեր են, որոնք ընգծված են include թղթապանակում. Այս ֆայլերն անվանում են ՎԵՐՆԱԳՐԱՅԻՆ ՖԱՅԼԵՐ

Ընդհանրապես #include հրահանգի միջոցով նախնական տեքստի արտաքին այլ, նախապես կազմավորված ֆայլեր են կցվում: Հաճախ դրանք .հ ընդլայնում ունեցող ֆայլեր են, որոնք ընգծված են include թղթապանակում. Այս ֆայլերն անվանում են ՎԵՐՆԱԳՐԱՅԻՆ ՖԱՅԼԵՐ

ՎԵՐՆԱԳՐԱՅԻՆ ՖԱՅԼԵՐԸ ASCII ՁԵՎԱՉԱՓՈՎ ՍՏԵՂԾՎԱԾ ԳՐԱԴԱՐԱՆԱՅԻՆ ՍՏԱՆԴԱՐՏ ՖԱՅԼԵՐՆ ԵՆ, ՈՐՈՆՑ ՊԱՐՈՒՆԱԿՈՒԹՅՈՒՆԸ ԿԱՐԵԼԻ Է ԴԻՏԵԼ ԷԿՐԱՆԻՆ, ԻՍԿ ՑԱՆԿՈՒԹՅԱՆ ԴԵՊՔՈՒՄ ՆՈՒՅՆԻՍԿ ՏՊԵԼ:

ՎԵՐՆԱԳՐԱՅԻՆ ՖԱՅԼԵՐԸ ASCII ՁԵՎԱՉԱՓՈՎ ՍՏԵՂԾՎԱԾ ԳՐԱԴԱՐԱՆԱՅԻՆ ՍՏԱՆԴԱՐՏ ՖԱՅԼԵՐՆ ԵՆ, ՈՐՈՆՑ ՊԱՐՈՒՆԱԿՈՒԹՅՈՒՆԸ ԿԱՐԵԼԻ Է ԴԻՏԵԼ ԷԿՐԱՆԻՆ, ԻՍԿ ՑԱՆԿՈՒԹՅԱՆ ԴԵՊՔՈՒՄ ՆՈՒՅՆԻՍԿ ՏՊԵԼ:

#include-ի միջոցով կարելի է գրված ծրագրին ոչ ստանդարտ ֆայլ կցել,ֆայլի անվանումն դրվում է չակերտների ՛՛ ՛՛ մեջ: Օրինակ՝ # include ‘‘ nor_file.cpp‘‘ կամ #include ‘’banali.h’’ և այլն: //2-տողում կիրառված std-ն C++ -ի ստանդարտ գրադարանում առկա տարածության անվանում է:Ծրագրում using namespace std;գրառմամբ հասանելի են դառնում std-ում սահմանված անվանումները: //3-C++ -ի ցանկացած ծրագիր պետք է իրագործման ելակետ հանդիսացող ելակետ հանդիսացող մաս ունենա,ուն ունի main() անվանումը՝ դա ծրագրի գլխավոր մասն է: //4 և //6 twxe8wum arka ձևավոր { } փակագծերն օգտագործում են ծրագրի բաղկացուցիչ հրամանները խմբավորելու համար: //5 տողով տրված cout

#include-ի միջոցով կարելի է գրված ծրագրին ոչ ստանդարտ ֆայլ կցել,ֆայլի անվանումն դրվում է չակերտների ՛՛ ՛՛ մեջ:

Օրինակ՝

# include ‘‘ nor_file.cpp‘‘ կամ #include ‘’banali.h’’ և այլն:

//2-տողում կիրառված std-ն C++ -ի ստանդարտ գրադարանում առկա տարածության անվանում է:Ծրագրում using namespace std;գրառմամբ հասանելի են դառնում std-ում սահմանված անվանումները:

//3-C++ -ի ցանկացած ծրագիր պետք է իրագործման ելակետ հանդիսացող ելակետ հանդիսացող մաս ունենա,ուն ունի main() անվանումը՝ դա ծրագրի գլխավոր մասն է:

//4 և //6 twxe8wum arka ձևավոր { } փակագծերն օգտագործում են ծրագրի բաղկացուցիչ հրամանները խմբավորելու համար:

//5 տողով տրված cout

C++ լեզվով գրված ծրագիրն իրականացնելու համար ծրագիր նախնական տեքստը պետք է թարգմանել մեքենայական կոդի օգտվելով build/откладка/մենյուի հրամաններից՝ Compile-թարգմանել առկա ծրագիրը Build-թարգմանվող ծրագիրն կցվում են նաև գրադարանային անհրաժեշտ ստանդարտ ծրագրային տեքստերը: Թարգմանված և անսխալ ծրագիրը իրագործվում է Execute/выполнять/ հրամանով:

C++ լեզվով գրված ծրագիրն իրականացնելու համար ծրագիր նախնական տեքստը պետք է թարգմանել մեքենայական կոդի օգտվելով build/откладка/մենյուի հրամաններից՝

  • Compile-թարգմանել առկա ծրագիրը
  • Build-թարգմանվող ծրագիրն կցվում են նաև գրադարանային անհրաժեշտ ստանդարտ ծրագրային տեքստերը:

Թարգմանված և անսխալ ծրագիրը իրագործվում է Execute/выполнять/ հրամանով:

Գլխավոր պատուհանի հիմնական գործիքաշարի մեջ ծրագիր թարգմանության թվարկած միջոցներին համարժեք գործիքներ կան:

Գլխավոր պատուհանի հիմնական գործիքաշարի մեջ ծրագիր թարգմանության թվարկած միջոցներին համարժեք գործիքներ կան:

ԿԱՐԵՎՈՐ Է՝ Պրոպրոցեսորային դիրեկտիվը պետք է սկսվի # պայմանանշանով,մեկ տող զբաղեցնի և ավաևտի տողավերջի պայմանանշանով: C++ ծրագիրը գեներացնում է հետևյալ ընդլայնումով ֆայլերը .dsw, .dsp, .opt, .ncb: Նախկինում ստեղծված նախագիծը ակտիվացնելու համար Մտնել C++ միջավայր Fail ենթամենյուի մեջ ընտրել Open Workspace հրամանը Բացված պատուհանում գտնել պահպանված նախագծի թղթապանակը ու փնտրել նախագծի անունը կրող .dsw ընդլաընումով ֆայլը: Բացել ու մտնել C++ միջավայր File ենթամենյուի մեջ ընտրել Recent Workspace հրամանը Առանց C++ -ի մտնելու գտնել անհաժեշտ ֆայլն ու ակտիվացնել այն:

ԿԱՐԵՎՈՐ Է՝

  • Պրոպրոցեսորային դիրեկտիվը պետք է սկսվի # պայմանանշանով,մեկ տող զբաղեցնի և ավաևտի տողավերջի պայմանանշանով:
  • C++ ծրագիրը գեներացնում է հետևյալ ընդլայնումով ֆայլերը
  • .dsw, .dsp,
  • .opt, .ncb:
  • Նախկինում ստեղծված նախագիծը ակտիվացնելու համար
  • Մտնել C++ միջավայր
  • Fail ենթամենյուի մեջ ընտրել Open Workspace հրամանը
  • Բացված պատուհանում գտնել պահպանված նախագծի թղթապանակը ու փնտրել նախագծի անունը կրող .dsw ընդլաընումով ֆայլը:
  • Բացել ու մտնել C++ միջավայր
  • File ենթամենյուի մեջ ընտրել Recent Workspace հրամանը
  • Առանց C++ -ի մտնելու գտնել անհաժեշտ ֆայլն ու ակտիվացնել այն:
C++ ԼԵԶՎԻ ՇԱՐԱՀՅՈՒՍՈՒԹՅՈՒՆԸ: ՈՒՆԱՐ ԳՈՐԾՈՂՈՒԹՅՈՒՆՆԵՐ C++ Ծրագրավորման լեզուն 96 պայմանանշան է պարունակում,որոնցից միայն 91 ունեն իրենց գրելաձևը:Գրելաձև չունեցող պայմանանշանները հետևյալն են՝ Բացատանիշ Հորիզոնական ուղղությամբ որոշակի քանակությամբ բացատանների խումբ/տաբուլյացիա/ Ուղղաձիգ տաբուլյացիա Նոր տողի սկիզբ Նոր էջի սկիզբ

C++ ԼԵԶՎԻ ՇԱՐԱՀՅՈՒՍՈՒԹՅՈՒՆԸ:

ՈՒՆԱՐ ԳՈՐԾՈՂՈՒԹՅՈՒՆՆԵՐ

C++ Ծրագրավորման լեզուն 96 պայմանանշան է պարունակում,որոնցից միայն 91 ունեն իրենց գրելաձևը:Գրելաձև չունեցող պայմանանշանները հետևյալն են՝

  • Բացատանիշ
  • Հորիզոնական ուղղությամբ որոշակի քանակությամբ բացատանների խումբ/տաբուլյացիա/
  • Ուղղաձիգ տաբուլյացիա
  • Նոր տողի սկիզբ
  • Նոր էջի սկիզբ
ԳՐԵԼԱՁեվ ՈՒՆԵՑՈՂ ՊԱՅՄԱՆԱՆՇԱՆՆԵՐՆ ԵՆ՝ լատինական այբուբենի մեծատառերն ու փոքրատառերը  0,1,2,3,4,5,6,7,8,9 թվանշանները  Հետևյալ 29 հատու նշանները՝ ‘‘ { } ,|://( ) + - % ; & ^ ‘ ~ . * ? _ ! #

ԳՐԵԼԱՁեվ ՈՒՆԵՑՈՂ

ՊԱՅՄԱՆԱՆՇԱՆՆԵՐՆ ԵՆ՝

լատինական այբուբենի մեծատառերն ու փոքրատառերը 0,1,2,3,4,5,6,7,8,9 թվանշանները Հետևյալ 29 հատու նշանները՝ ‘‘ { } ,|://( ) + - % ; & ^ ‘ ~ . * ? _ ! #

ԳՐԵԼԱՁԵՎ ՈՒՆԵՑՈՂ ՊԱՅՄԱՆԱՆՇԱՆՆԵՐԻ ՄԻՋՈՑՈՎ ԿԱԶՄՎՈՒՄ ԵՆ ԼԵԶՎԻ ԼԵԿՍԵՄՆԵՐԸ ԼԵԿՍԵՄԸ ԾՐԱԳՐԱՅԻՆ ՏԵՔՍՏԻ ՄԻԱՎՈՐ Է,ՈՐԸ ԵՆԹԱԿԱ ՉԷ ՏՐՈՀՄԱՆ Լեկսեմները խմբավորվում են՝ Ինդետիֆիկատորներ Առանցքային բառեր Հաստատուններ Գործողությունների նշաններ բաժանիչներ

ԳՐԵԼԱՁԵՎ ՈՒՆԵՑՈՂ ՊԱՅՄԱՆԱՆՇԱՆՆԵՐԻ ՄԻՋՈՑՈՎ ԿԱԶՄՎՈՒՄ ԵՆ ԼԵԶՎԻ ԼԵԿՍԵՄՆԵՐԸ

ԼԵԿՍԵՄԸ ԾՐԱԳՐԱՅԻՆ ՏԵՔՍՏԻ ՄԻԱՎՈՐ Է,ՈՐԸ ԵՆԹԱԿԱ ՉԷ ՏՐՈՀՄԱՆ

Լեկսեմները խմբավորվում են՝

  • Ինդետիֆիկատորներ
  • Առանցքային բառեր
  • Հաստատուններ
  • Գործողությունների նշաններ
  • բաժանիչներ
 Իդենտիֆիկատորները նախատեսված են ծրագրում օգտագործվող մեծություններին անավանում տալու համար: Հաստատուն լեկսեմներ են,որոնք հաստատուն արժեքներ են նարկայացնում՝ Ամբողջ Իրական Տրամաբանական Սինվոլային Տողային ԱՅՆ ՄԵԾՈՒԹՅՈՒՆՆԵՐԸ,ՈՐՈՆՑ ԱՐԺԵՔՆԵՐԸ ԾՐԱԳՐԻ ԿԱՏԱՐՄԱՆ ԸՆԹԱՑՔՈՒՄ ԿԱ- ՐՈՂ ԵՆ ՓՈՓՈԽՎԵԼ,ԿՈՉՎՈՒՄ ԵՆ ՓՈՓՈԽԱԿԱՆՆԵՐ

Իդենտիֆիկատորները նախատեսված են ծրագրում օգտագործվող մեծություններին անավանում տալու համար:

Հաստատուն լեկսեմներ են,որոնք հաստատուն արժեքներ են նարկայացնում՝

  • Ամբողջ
  • Իրական
  • Տրամաբանական
  • Սինվոլային
  • Տողային

ԱՅՆ ՄԵԾՈՒԹՅՈՒՆՆԵՐԸ,ՈՐՈՆՑ ԱՐԺԵՔՆԵՐԸ ԾՐԱԳՐԻ ԿԱՏԱՐՄԱՆ ԸՆԹԱՑՔՈՒՄ ԿԱ-

ՐՈՂ ԵՆ ՓՈՓՈԽՎԵԼ,ԿՈՉՎՈՒՄ ԵՆ ՓՈՓՈԽԱԿԱՆՆԵՐ

C++ ում գործողությունները բայանվում են ՈՒՆԱՐ և ԲԻՆԱՐ տիպերի: ՈՒՆԱՐ ԵՆ ԱՅՆ ԳՈՐԾՈՂՈՒԹՅՈՒՆՆԵՐԸ,ՈՐՈՆՔ ՄԻԱՅՆ ՄԵԿ ՕՊԵՐԱՆԴԻ ՀԵՏ ԵՆ ԱՇԽԱՏՈՒՄ դրանք են՝ &-օպերանդի հասցեն ստանալու գործողություն *-հասցեի միջոցով օպերանդի արժեքին դիմելու գործողություն - օպերանդի նշանը հակառակ նշանի փոխելու գործողություն +օպերանդի դրական լինելը փաստող գործողություն ~ամբողջաթվային արգումենտի բիթային հակադարձումը(1-0,0-1) !-օպերանդի տրամաբանական բացասում(true-false,false-true) Ինկրեմենտ կամ++ օպերանդի արժեքի ավելացում 1-ով Դեկրեմենտ կամ -- օպերանդի արժեքի նվազեցում 1-ով Տիպի ձևափոխման գործողություն Sizeof գործողություն :: տեսանելիության տիրույթի ցուցման գործողություն New հիշողության դինամիկ բաշխման գործողություն Delete դինամիկ բաշխբած հիշողության ազատում:

C++ ում գործողությունները բայանվում են ՈՒՆԱՐ և ԲԻՆԱՐ տիպերի:

ՈՒՆԱՐ ԵՆ ԱՅՆ ԳՈՐԾՈՂՈՒԹՅՈՒՆՆԵՐԸ,ՈՐՈՆՔ ՄԻԱՅՆ ՄԵԿ ՕՊԵՐԱՆԴԻ ՀԵՏ ԵՆ ԱՇԽԱՏՈՒՄ դրանք են՝

  • &-օպերանդի հասցեն ստանալու գործողություն
  • *-հասցեի միջոցով օպերանդի արժեքին դիմելու գործողություն
  • - օպերանդի նշանը հակառակ նշանի փոխելու գործողություն
  • +օպերանդի դրական լինելը փաստող գործողություն
  • ~ամբողջաթվային արգումենտի բիթային հակադարձումը(1-0,0-1)
  • !-օպերանդի տրամաբանական բացասում(true-false,false-true)
  • Ինկրեմենտ կամ++ օպերանդի արժեքի ավելացում 1-ով
  • Դեկրեմենտ կամ -- օպերանդի արժեքի նվազեցում 1-ով
  • Տիպի ձևափոխման գործողություն
  • Sizeof գործողություն
  • :: տեսանելիության տիրույթի ցուցման գործողություն
  • New հիշողության դինամիկ բաշխման գործողություն
  • Delete դինամիկ բաշխբած հիշողության ազատում:
C++ ԼԵԶՎԻ ՇԱՐԱՀՅՈՒՍՈՒԹՅՈՒՆԸ: ԹՎԱԲԱՆԱԿԱՆ ԵՎ ՏՐԱՄԱԲԱՆԱԿԱՆ ԱՐՏԱՀԱՅՏՈՒԹՅՈՒՆՆԵՐ Բինար գործողությունները կարելի է համախմբել ըստ հետևյալ տիպի գործողությունների՝ Ադդիտիվ( գումարային) Մուլտիպլիկատիվ( բազմապատկման) Տեղաշարժի Կարգային Համեմատական Տրամաբանական Վերագրման Տեսանելիության տիրույթի թույլատրելիության Ստորակետի

C++ ԼԵԶՎԻ ՇԱՐԱՀՅՈՒՍՈՒԹՅՈՒՆԸ:

ԹՎԱԲԱՆԱԿԱՆ ԵՎ ՏՐԱՄԱԲԱՆԱԿԱՆ ԱՐՏԱՀԱՅՏՈՒԹՅՈՒՆՆԵՐ

Բինար գործողությունները կարելի է համախմբել ըստ հետևյալ տիպի գործողությունների՝

  • Ադդիտիվ( գումարային)
  • Մուլտիպլիկատիվ( բազմապատկման)
  • Տեղաշարժի
  • Կարգային
  • Համեմատական
  • Տրամաբանական
  • Վերագրման
  • Տեսանելիության տիրույթի թույլատրելիության
  • Ստորակետի
Տ րամաբանական բինար գործողությունները &&-կոնյւնկցիայի ( տրամաբանական) և ||-ը դիզունկցիայի( տրամաբանական կամ) գործողություններ են:Այս գործողությունների արդյունքները նույնպես true կամ false տրամաբանական արժեքներ են:   ԿՈՆՅՈՒԿՑԻԱՅԻ ԱՐԴՅՈՒՆՔԸ true Է ՄԻԱՅՆ ԱՅՆ ԴԵՊՔՈՒՄ, ԵԹԵ ԲԻՆԱՐ ԳՈՐԾՈՂՈՒԹՅԱՆԸ ՄԱՍՆԱԿԻՑ ԵՐԿՈՒ ՕՊԵՐԱՆԴՆԵՐՆ ԷԼ true ԱՐԺԵՔ ՈՒՆԵՆ: ԴԻԶՅՈՒՆԿՑԻԱՅԻ ԱՐԴՅՈՒՆՔԸ true Է, ԵԹԵ ՕՊԵՐԱՆԴՆԵՐԻՑ ԹԵԿՈՒԶ ՄԵԿԻ ԱՐԺԵՔԸ true է:

Տ րամաբանական բինար գործողությունները &&-կոնյւնկցիայի

( տրամաբանական) և ||-ը դիզունկցիայի( տրամաբանական կամ) գործողություններ են:Այս գործողությունների արդյունքները նույնպես true կամ false տրամաբանական արժեքներ են:

ԿՈՆՅՈՒԿՑԻԱՅԻ ԱՐԴՅՈՒՆՔԸ true Է ՄԻԱՅՆ ԱՅՆ ԴԵՊՔՈՒՄ, ԵԹԵ ԲԻՆԱՐ ԳՈՐԾՈՂՈՒԹՅԱՆԸ ՄԱՍՆԱԿԻՑ ԵՐԿՈՒ ՕՊԵՐԱՆԴՆԵՐՆ ԷԼ true ԱՐԺԵՔ ՈՒՆԵՆ:

ԴԻԶՅՈՒՆԿՑԻԱՅԻ ԱՐԴՅՈՒՆՔԸ true Է, ԵԹԵ ՕՊԵՐԱՆԴՆԵՐԻՑ ԹԵԿՈՒԶ ՄԵԿԻ ԱՐԺԵՔԸ true է:

Օպերատորները հատուկ ձևակերպված հրամաններ են, որոնք ունեն իրենց աշխատակարգերը:  Ձևավոր փակագծերի { } միջև առնված օպերատորների հաջորդականությունն անվանում են բաղադրյալ օպերատոր:Եթե բաղադրյալ օպերատորի կազմում կան նաև փոփոխականների հայտարարաւոթյուններ,ապա այն կազմում է բլոկ: Այն մեծությունները,որոնք հայտարարվում կամ սահմանվում են բլոկում,լոկալ/տեղային/ են, և դրանց տեսանելիության տիրույթը սահմանափակված է բլոկի տիրույթով:  օրինակ՝  #include  Int d=3; Void main ( )  { int d=10; d++;  cout  :: d+=5;  cuot }

Օպերատորները հատուկ ձևակերպված հրամաններ են, որոնք ունեն իրենց աշխատակարգերը:

Ձևավոր փակագծերի { } միջև առնված օպերատորների հաջորդականությունն անվանում են բաղադրյալ օպերատոր:Եթե բաղադրյալ օպերատորի կազմում կան նաև փոփոխականների հայտարարաւոթյուններ,ապա այն կազմում է բլոկ:

Այն մեծությունները,որոնք հայտարարվում կամ սահմանվում են բլոկում,լոկալ/տեղային/ են, և դրանց տեսանելիության տիրույթը սահմանափակված է բլոկի տիրույթով:

օրինակ՝

#include

Int d=3;

Void main ( )

{ int d=10; d++;

cout

:: d+=5;

cuot

}

Այս ծրագիր կատարման արդյունքում նախ //1 տողով կարտածվի 11 թիվը, որը ստացվում է լոկալ d-ի ինկրեմենտի արդյունքում, իսկ //2 տողում` 8 թիվը, որը ստացվում է գլոբալ d-ի արժեքին (3) ավելացնելով 5:Այսպիսով, թեպետ այստեղ երկու փոփոխականներ կրում են միևնույն անունը(d),սակայն դրանք իրարից անկախ տարբեր արժեքներ կրող մեծություններ են: Ստորակետը ծառայում է որպես գործողություն, ընդ որում ստորակետով միմյանցից բաժանված արտահայտությունները հաշվվում են հաջորդաբար՝ ձախից աջ:Ստորակետը գործողությունը խմբավորում է արտահայտություններն այնպես ,որ ստացվող տիպն ու արժեքը որոշվում է արտահայտության աջ մասում եղած արտահայտությամբ, ձախ մասում եղած օպերանդի արժեքներն անտեսվում են:

Այս ծրագիր կատարման արդյունքում նախ //1 տողով կարտածվի 11 թիվը, որը ստացվում է լոկալ d-ի ինկրեմենտի արդյունքում, իսկ //2 տողում` 8 թիվը, որը ստացվում է գլոբալ d-ի արժեքին (3) ավելացնելով 5:Այսպիսով, թեպետ այստեղ երկու փոփոխականներ կրում են միևնույն անունը(d),սակայն դրանք իրարից անկախ տարբեր արժեքներ կրող մեծություններ են:

Ստորակետը ծառայում է որպես գործողություն, ընդ որում ստորակետով միմյանցից բաժանված արտահայտությունները հաշվվում են հաջորդաբար՝ ձախից աջ:Ստորակետը գործողությունը խմբավորում է արտահայտություններն այնպես ,որ ստացվող տիպն ու արժեքը որոշվում է արտահայտության աջ մասում եղած արտահայտությամբ, ձախ մասում եղած օպերանդի արժեքներն անտեսվում են:

ԱԼԳՈՐԻԹՄՆԵՐ Ալգորիթմն նեկայացնող բլոկ-սխեմաներն հետևյալն են՝  Հաշվարկների կատարման և վերագրման գործողություններ  Պայմանի ստուգման և հաշվման գործընթաց  Տվյալների ներմուծում և արտածում  Ցիկլային գործընթացի կազմակերպում  Ալգորիթմի սկիզբ  Ալգորիթմի ավարտ  Ալգորիթմի հոսքի ընդհատված մասերի կապի միջոց

ԱԼԳՈՐԻԹՄՆԵՐ

Ալգորիթմն նեկայացնող բլոկ-սխեմաներն հետևյալն են՝

Հաշվարկների կատարման և վերագրման գործողություններ

Պայմանի ստուգման և հաշվման գործընթաց

Տվյալների ներմուծում և արտածում

Ցիկլային գործընթացի կազմակերպում

Ալգորիթմի սկիզբ

Ալգորիթմի ավարտ

Ալգորիթմի հոսքի ընդհատված մասերի կապի միջոց

Ալգորիթմը գործողությունների կարգավորված հաջորդականություն է, որը հանգեցնում է սպասված արդյունքին: Ալգորիթմները՝ կախված տվյալ պահին լուծվող խնդիրից, կարող են լինել ԳԾԱՅԻՆ, ՃՅՈՒՂԱՎՈՐՎԱԾ, ՑԻԿԼԱՅԻՆ

Ալգորիթմը գործողությունների կարգավորված հաջորդականություն է, որը հանգեցնում է սպասված արդյունքին:

Ալգորիթմները՝ կախված տվյալ պահին լուծվող խնդիրից, կարող են լինել

  • ԳԾԱՅԻՆ,
  • ՃՅՈՒՂԱՎՈՐՎԱԾ,
  • ՑԻԿԼԱՅԻՆ
Դիտարկենք եռանիշ թվանիշնների գումարի հաշվման ալգորիթմը 1 2 3 4 5 6 7 սկիզբ n a=n/100 b=(n-100a)/10 c=n%10 a+b=c ավարտ

Դիտարկենք եռանիշ թվանիշնների գումարի հաշվման ալգորիթմը

1

2

3

4

5

6

7

սկիզբ

n

a=n/100

b=(n-100a)/10

c=n%10

a+b=c

ավարտ

n; a=n/100; // հարյուրավորի ստացում b=(n-100*a)/10; // տասնավորի ստացում c=n%10; // միավորի ստացում cout } Այստեղ //1 տողում առկա coutկանցնի հաջորդ տող: " width="640"

Եթե ,օրինակ, n=672 ,ապա 3-րդ բլոկվ կստանանք a=672/100=6, որը հարյուրավորն է, 4-րդ բլոկով՝ b=(672-100*6)/10=7 ,որը տասնավորն է, իսկ 5-րդով կստանանք c=672%10=2, որը միավորն է:

a,b,c փոփոխականների միջև ստացվել են եռանիշ թվի բաղադիրչ թվանշանները, մնում է 6-րդ բլոկով արտածել պահանջվող գումարը:

Ծրագիրը C++-ով հետևյալն է՝

#include

void main ( )

{ int n;

int a,b,c; // a-Ն հարյուրավորի,b-ն տասնավորի,c-ն միավորի համար է

cinn;

a=n/100; // հարյուրավորի ստացում

b=(n-100*a)/10; // տասնավորի ստացում

c=n%10; // միավորի ստացում

cout

}

Այստեղ //1 տողում առկա cout

կանցնի հաջորդ տող:

ՃՅՈՒՂԱՎՈՐՄԱՆ ԳՈՐԾԸՆԹԱՑ: ՃՅՈՒՂԱՎՈՐՄԱՆ( ՊԱՅՄԱՆԻ) ՕՊԵՐԱՏՈՐՆԵՐ: ԱՆՊԱՅՄԱՆ ԱՆՑՄԱՆ ՕՊԵՐԱՏՈՐՆԵՐ Դիտարկենք ax²+bx+c=0 քառակուսի հավասրման ( a≠o) իրական արմատները փնտրելու ալգորիթմը:

ՃՅՈՒՂԱՎՈՐՄԱՆ ԳՈՐԾԸՆԹԱՑ:

ՃՅՈՒՂԱՎՈՐՄԱՆ( ՊԱՅՄԱՆԻ) ՕՊԵՐԱՏՈՐՆԵՐ:

ԱՆՊԱՅՄԱՆ ԱՆՑՄԱՆ ՕՊԵՐԱՏՈՐՆԵՐ

Դիտարկենք ax²+bx+c=0 քառակուսի հավասրման ( a≠o) իրական արմատները փնտրելու ալգորիթմը:

o D=0   Xı=   X2=   Xı= «NO» X1,X2 X ավարտ " width="640"

սկիզբ

a,b,c

D=b²-4ac

Do

D=0

 

Xı=

 

X2=

 

Xı=

«NO»

X1,X2

X

ավարտ

a; cout b; cout c; d=pow(b,2)-4*a*c; z=2*a; if (d0) { x1=(-b-sqrt(d))/z; x2=(-b-sqrt(d))/z; cout cout } else If(d==0) { x=-b/z; cout } else cout " width="640"

Ալգորիթմի ծրագիրն հետևյալն է՝

#inclide

#include

Void main ( )

{ double x1,x2,x,z,d,a,b,c;

cout a;

cout b;

cout c;

d=pow(b,2)-4*a*c;

z=2*a;

if (d0)

{

x1=(-b-sqrt(d))/z;

x2=(-b-sqrt(d))/z;

cout

cout

}

else

If(d==0) { x=-b/z;

cout

}

else cout

Ճյուղավորոմներով ալգորիթմներ ծրագրավորելիս երբեմն հարմար է պայմանի օպերատորի փոխարեն ընտրության օպերատոր կիրառել: Ընտրության օպերատորը հարմար է օգտագործել այն դեպքում, երբ ճյուղավորված ալգորիթմները ներառված (if (a1) օպերատոր 1; else if (a2) օպերատոր 2; else.... և այլն) նոր ճյուղավորումներ են պարունակում:

Ճյուղավորոմներով ալգորիթմներ ծրագրավորելիս երբեմն հարմար է պայմանի օպերատորի փոխարեն ընտրության օպերատոր կիրառել:

Ընտրության օպերատորը հարմար է օգտագործել այն դեպքում, երբ ճյուղավորված ալգորիթմները ներառված (if (a1) օպերատոր 1; else if (a2) օպերատոր 2; else.... և այլն) նոր ճյուղավորումներ են պարունակում: