Бағдарламалу технологиясы



жүктеу 1,63 Mb.
бет18/73
Дата03.02.2022
өлшемі1,63 Mb.
#35497
түріОқулық
1   ...   14   15   16   17   18   19   20   21   ...   73
Ба?дарламалу технологиясы

2.5 Меншіктеу операторы

C# бағдарламалау тілінде меншіктеу операторы ‘=’ символымен белгіленеді. Меншіктеу операторының жазылу пішімі мына сипатта болады:

айнымалы = өрнек;

Мысалы:


c = a + b;

‘=’ белгісінің сол жағында айнымалы орналасуы керек, ал ‘=’ белгісінің оң жағында айнымалылар, тұрақтылар, нақты мәндер немесе өрнектер жазылуы мүмкін. Өрнектер ретінде арифметикалық операциялар, әртүрлі функциялар, т.б. бола алады. Өрнектегі әрекеттердің орындалу реті солдан оңға қарай, бірақ жақшалар арқылы оны өзгертуге болады.


C# тілінде келесі арифметикалық операциялар қолданылады:

+ – қосу операциясы;

- – азайту операциясы;

* – көбейту операциясы;

/ – нақты типтегі айнымалылар үшін бөлу операциясы;

/ – бүтін типтегі айнымалылар үшін бүтін санды бөлу операциясы (қалдығы жойылады – бөлудің нәтижесін мысалдан көріңіз);

% – бүтін санды бөлу операциясынан қалдықты табу операциясы бүтін типтегі айнымалылар үшін қолданылады.

Мысалы,


7/2=3; 7.0/2.0=3.5; 6%2=0; 7%2=1;

C# тілінде аталған операциялардың кез келгені меншіктеу операциясының қысқартылған түрде жазылу мүмкіндігін береді:

айнымалы операция = өрнек;

Мысалы, егер a айнымалысы 5 тең болса, онда a += 6 жазбасы a айнымалысына 11 мәнін меншіктейді. ‘+=’ операциясы ‘=’ символының оң жағына жазылған өрнектің мәнін ‘+’ символының сол жағында орналасқан айнымалы мәніне қосуды орындайды. Қосу опрациясының нәтижесі ‘+’ символының сол жағында орналасқан айнымалыға меншіктеледі.

‘–’ , ‘ *’, ‘ /’, ‘ %’ операциялары үшін меншіктеу операторы жоғарыда сипатталған түрде орындалады.

Мысалы, егер a айнымалысы 5 тең болса, онда a %= 3; меншіктеу операторы орындалғаннан кейін a айнымалысы 2 тең болады .

Алгебралық өрнектің нәтижесін кейбір айнымалыға меншіктеу операциясын орындаған кезде типтердің айқын немесе айқындалмаған түрде түрленуі орындалады.

Егер алгебралық өрнектің операндтары әртүрлі типте болса, онда есептеулердің алдына автоматты түрде типтерді түрлендіру орындалады. Түрлендіру мәні мен дәлдігін сақтай отырып, қысқа типтерді ұзын типтерге ауыстыруды қамтамасыз ететін ереже бойынша орындалады, бірақ керісінше емес.

Автоматты түрде (айқындалмаған) түрлендіру ылғи орындалмауы мүмкін, мәні жоғалмаған жағдайда ғана орындалады.

Арифметикалық операциялар int типінен қысқа типтерде анықталмаған. Бұл дегеніміз, егер өрнекте sbyte, byte, short және ushort типтеріндегі ғана шамалар болса, онда операцияның орындалуының алдында олар int типіне түрлендіріледі. Сонымен, кез келген арифметикалық операциялардың нәтижесі int типінен кіші емес типте болады.

Бір типтен екінші типке айқындалмаған түрлендіру орындалмаса, онда бағдарламашы мына операция арқылы айқын түрлендіруді орындай алады.

(тип) өрнек.


Мысалы, бүтін типтегі айнымалыға нақты типтегі мән меншіктелсе, онда осы мәннің бөлшек бөлігі жойылады. Типтерге айқын түрлендіруді орындау үшін float немесе int нұсқауларын пайдалануға болады. Мысалы:

x = (float)(31*c - 16);

Console.WriteLine("x={0}", x);

//или


a = (int)(18.6/3.6 + 3.7);

Console.WriteLine("a={0}", a);


Типтерді айқын түрлендіруді бағдарламаға айқындылықты кіргізу үшін әр түрлі типтегі айнымалылары бар есептеулерде қолдану орынды, бірақ айқын түрлендіру есептеудің дәлдігін жоғалтумен байланысты екенін ескеру керек.

C# тілінде инкремент (айнымалыны бір шамасына өсіру) және декремент (айнымалыны бір шамасына кеміту) операциялары үшін қысқартылған жазбалар қолданылады, яғни меншіктеу операциялары.

айнымалы = айнымалы + 1;

мына жазбамен ауыстырылады

айнымалы ++; ,

меншіктеу операциясы

айнымалы = айнымалы - 1;

мына жазбамен ауыстырылады

айнымалы --; .

Мысалы, егер a айнымалысының мәні 5-ке тең болса, онда меншіктеу a++; операторын орындағаннан кейін a айнымалысының мәні 6-ға тең болады. Егер енді a--; меншіктеу операторы орындалса, онда a айнымалысының мәні 5-ке тең болады.

C# тілінде инкремент және декремент операциялар жазбасының префиксті пішіні рұқсат етілген, мысалы ++a немесе --a, бұл жазбалар жоғарыда қарастрылған постфиксті пішімдегі жазбалардан өзгеше.

Жазбаның префиксті пішімі біріншіден инкремент немесе декремент операцияларының орындалуын, ал содан кейін айнымалыны пайдалануды талап етеді. Постфиксті пішімдегі жазулар біріншіден айнымалыны, одан кейін инкремент немесе декремент операцияларының орындалуына рұқсат береді. Мысалы, a = b++; өрнегін келесі екі оператормен ауыстыруға болады: a = b; b = b + 1;. C# тілінде a = ++b; өрнегі келесі екі операторға балама болады: b = b + 1; a = b;.

C# тілінің осындай ерекшеліктерін бағдарлама кодын жазу кезінде ескеру керек.

C# тілінің басымдылықтары бойынша реттелген негізгі операцияларының тізімі ұсынылған әдебиетте келтірілген.

Қарастырылған бірінші бағдарламаның жолдарының бірінде

c = a; a = b; b = c;

өте маңызды алгоритм жазылған - алмасу алгоритмі . Бұл алгоритм a, b және с айнымалыларының мәндерін алмастыруға мүмкіндік береді. Осы алгоритм басқа да күрделі алгоритмдерде қолданылады, мысалы сандарды сұрыптау немесе тізімді алфавиттік ретте пішімдеу, т.б және осы алгоритмді түсіну өте маңызды.


жүктеу 1,63 Mb.

Достарыңызбен бөлісу:
1   ...   14   15   16   17   18   19   20   21   ...   73




©g.engime.org 2024
әкімшілігінің қараңыз

    Басты бет
рсетілетін қызмет
халықаралық қаржы
Астана халықаралық
қызмет регламенті
бекіту туралы
туралы ережені
орталығы туралы
субсидиялау мемлекеттік
кеңес туралы
ніндегі кеңес
орталығын басқару
қаржы орталығын
қаржы орталығы
құрамын бекіту
неркәсіптік кешен
міндетті құпия
болуына ерікті
тексерілу мемлекеттік
медициналық тексерілу
құпия медициналық
ерікті анонимді
Бастауыш тәлім
қатысуға жолдамалар
қызметшілері арасындағы
академиялық демалыс
алушыларға академиялық
білім алушыларға
ұйымдарында білім
туралы хабарландыру
конкурс туралы
мемлекеттік қызметшілері
мемлекеттік әкімшілік
органдардың мемлекеттік
мемлекеттік органдардың
барлық мемлекеттік
арналған барлық
орналасуға арналған
лауазымына орналасуға
әкімшілік лауазымына
инфекцияның болуына
жәрдемдесудің белсенді
шараларына қатысуға
саласындағы дайындаушы
ленген қосылған
шегінде бюджетке
салығы шегінде
есептелген қосылған
ұйымдарға есептелген
дайындаушы ұйымдарға
кешен саласындағы
сомасын субсидиялау