Нөхцөлт илэрхийлэл

Нөхцөлт илэрхийлэл тусдаа үйлдлийн багц. Ийм үйлдлүүд bool төрлийн логик утгыг буцаадаг. Нөхцөлт илэрхийлэл үнэн бол true, илэрхийлэл худал бол false утгыг буцаана. Ийм үйлдлүүдэд харьцуулах, логик үйлдлүүд хамаарагдана.

Харьцуулалтын үйлдэл

Харьцуулалтын үйлдэл хоёр операндийг харьцуулаад илэрхийлэл үнэн бол true, эсрэг тохиолдолд false утгыг буцаадаг.

  • == Тэнцүү. Хоёр операндийг тэнцүү эсэхийг шалгана. Операндууд тэнцүү бол true, тэнцүү биш бол false утгыг буцаана. Жишээ.
    int a = 10;
    int b = 4;
    bool c = a == b; // false
  • != Тэнцүү биш. Хоёр операндийг харьцуулаад тэнцүү биш бол true, тэнцүү бол false -ийг буцаана. Жишээ.
    int a = 10;
    int b = 4;
    bool c = a != b;    // true
    bool d = a!=10;     // false
  • < Бага. Нэгдүгээр операнд хоёрдугаар операндаас бага бол true, нэгдүгээр операнд хоёрдугаар операндаас их бол false утгыг өгнө. Жишээ.
    int a = 10;
    int b = 4;
    bool c = a < b; // false   
  • > Их. Нэгдүгээр операнд хоёрдугаар операндаас их бол true, нэгдүгээр операнд хоёрдугаар операндаас бага бол false утгыг өгнө. Жишээ.
    int a = 10;
    int b = 4;
    bool c = a > b;     // true
    bool d = a > 25;    // false
  • <= Бага эсхүл тэнцүү. Хоёр операндыг харьцуулаад нэгдүгээр операнд хоёрдугаар операндаас бага эсхүл тэнцүү бол true, эсрэг тохиолдолд false утгыг өгнө. Жишээ.
    int a = 10;
    int b = 4;
    bool c = a <= b;     // false
    bool d = a <= 25;    // true
  • >= Их эсхүл тэнцүү. Хоёр операндыг харьцуулаад нэгдүгээр операнд хоёрдугаар операндаас их эсхүл тэнцүү бол true, эсрэг тохиолдолд false утгыг өгнө. Жишээ.
    int a = 10;
    int b = 4;
    bool c = a >= b;     // true
    bool d = a >= 25;    // false

<, > <=, >= үйлдлүүд == , != үйлдлээс дээгүүр зэрэглэлтэй байдаг.

Логик үйлдлүүд

C#bool төрлийн утгыг буцаах логикийн операторууд бий. Үйлдлүүд операндоор bool төрлийн утгыг авдаг. Хэдэн харьцуулах үйлдлүүдийг нэгтгэсэн харьцаанд голдуу ашигладаг.

  • | Логик нийлбэр буюу логик БУЮУ /OR/. Үйлдэлд оролцогчийн аль нэг нь true утгыг буцааж байвал true утгыг өгнө. Жишээ.
    bool x1 = (5 > 6) | (4 < 6); // 5 > 6 - false, 4 < 6 - true, тул true буцаана
    bool x2 = (5 > 6) | (4 > 6); // 5 > 6 - false, 4 > 6 - false, тул false буцаана
  • & Логик үржвэр буюу логик БА /AND/ үйлдэл. Хоёр операнд хоёулаа true байвал true -г буцаана. Жишээ.
    bool x1 = (5 > 6) & (4 < 6); // 5 > 6 - false, 4 < 6 - true, тул false буцаана
    bool x2 = (5 < 6) & (4 < 6); // 5 < 6 - true, 4 < 6 - true, тул true буцаана.
  • || Логик нийлбэрийн үйлдэл. Үйлдэлд оролцогчийн аль нэг нь true утгыг буцааж байвал true утгыг өгнө. Жишээ.
    bool x1 = (5 > 6) || (4 < 6); // 5 > 6 - false, 4 < 6 - true, тул true буцаана
    bool x2 = (5 > 6) || (4 > 6); // 5 > 6 - false, 4 > 6 - false, тул false буцаана
  • && Логик үржвэрийн үйлдэл. Хоёр оролцогч хоёулаа true бол true утгыг өгнө.
    bool x1 = (5 > 6) && (4 < 6); // 5 > 6 - false, 4 < 6 - true, тул false утыг өгнө
    bool x2 = (5 < 6) && (4 < 6); // 5 < 6 - true, 4 < 6 - true, тул true утгыг өгнө
  • ! Логик үгүйсгэл. Үйлдэл нэг операнд дээр хийгдэх бөгөөд операнд false байвал true -г харин true бол false -ийг буцаана. Жишээ.
    bool a = true;
    bool b = !a;    // false
  • ^ Тусгай OR буюу XOR үйлдэл. Үйлдлийн нэг эсхүл хоёрдугаар операнд true (гэхдээ хоёулаа нэгэн зэрэг биш) байвал true утгыг өгнө. Бусад тохиолдолд false -ийг буцаана.
    bool x5 = (5 > 6) ^ (4 < 6); // 5 > 6 - false, 4 < 6 - true, тул true буцаана
    bool x6 = (50 > 6) ^ (4 / 2 < 3); // 50 > 6 - true, 4/2 < 3 - true, тул false буцаана

Логик үйлдлүүдэд | ба || (бас & ба &&) хосууд төстэй үйлдлийг гүйцэтгэх хэдий ч ижил биш. Ялгааг жишээн дээр харцгаая.
z=x|y; илэрхийлэлд x, y -ийн утгуудыг хоёуланг нь тооцдог. Өөрөөр хэлбэл үйлдэлд оролцогч илэрхийллүүдийн утгыг бүгдийг тооцно гэсэн үг. Харин
z=x||y; илэрхийлэлд эхлээд x -ийн утгыг тооцоод хэрвээ утга true байвал y -ийн утгыг тооцохгүйгээр true -г буцаана. Учир нь || логик нийлбэрийн үйлдлийн дүрэм тийм. x -ийн утга false үед y -ийн утгыг тооцно.
Энэ нь &/&& үйлдлүүдэд бас хамаарна.
Илэрхийллийн утгын тооцолох хугацааг хэмнэн програмийн бүтээмжийг дээшлүүлэх учраас || , && үйлдлүүд илүү эвтэйхэн. Харин | , & үйлдлүүд тоонуудад битийн үйлдлүүд хийхэд илүү тохиромжтой.

Мэдээлэл таалагдсан бол найзуудтайгаа хуваалцаарай.

  Нээгдсэн тоо: 7658 Нийтийн

Юуны өмнө ОХП-ын хэлүүд болон C# хэлэнд байдаг тодорхой суурь ухагдхууны талаар ойлголтыг авах хэрэгтэй. ОХП-ын хэлэнд бараг бүх обьектууд өгөгдлийн төрлүүд байдаг.

  • Хувьсагч гэдэг нь төрөл бүрийн утгуудыг авч болдог дараа нь тэдгээрийг өөр төрлийн утгаар өөрчилж болдог хэлний элемент юм. Иймээс түүнийг хувьсагч гэж нэрлэдэг. Тогтмол утга гэж бас байдаг. Тогтмол утга нь хувьсагчаас ялгаатай нь өөрийн утгаа компиляц хийх үед ганц удаа аваад тухайн утгаа дахин өөрчилдөггүй. Хувьсагч гэдгийг ямар нэгэн зүйлийг эсхүл тухайн зүйл хаана байгааг заах мэдээллийг хадгалж болдог хайрцагтай зүйрлэж болно.
  • Өгөгдлийн төрөл гэдгийг хувьсагч авч болох утгуудын олонлог гэж ойлгоно. Хэрвээ бид хувьсагчийг бүхэл тоон төрлийнх гэж заавал түүнд зөвхөн бүхэл тоог эсхүл логик төрлийнх гэвэл зөвхөн логик утгыг авна гэсэн үг. Өөрөөр хэлбэл хувьсагч өөрийн төрөлд багтах утгуудын олонлогоос л утгаа авах ёстой гэсэн үг.
  • Обьект гэдэг нь хувьсагч авсан тодорхой утга эсхүл тухайн утгыг авах холбоосын утгыг хувьсагчид олгосонг хэлнэ. Энэ ойлголт нь ОХП-ын үндсэн гол ойлголт байдаг.

  Нээгдсэн тоо: 213 Бүртгүүлэх

Хувьсагч бүр тодорхой контекст эсхүл харагдах бүсдээ хүчинтэй. Энэ контекстийн гадна хувьсагч байхгүй болно.

Төрөл бүрийн контекстүүд байдаг.

  • Классийн контекст. Классийн түвшинд тодорхойлогдсон хувьсагчид энэ классийн дурын аргад хүчинтэй. Эдгээрийг глобал хувьсагид эсхүл талбарууд гэж бас нэрлэдэг.
  • Аргын контекст. Аргын түвшинд тодорхойлогдсон хувьсагчдийг локал гэх бөгөөд зөвхөн тухайн арга дотроо хүчинтэй. Өөр аргад хувьсагчид хүчингүй. Байхгүй гэсэн үг.
  • Кодийн блокийн контескт. Блокийн кодийн түвшинд тодорхойлогдсон хувьсагчид бас локал бөгөөд зөвхөн тухайн блокдоо хүчинтэй (харагдана). Өөрийн блокийн гадна тэд хүчингүй.

  Нээгдсэн тоо: 600 Бүртгүүлэх

Өөрөө өөрийгөө дуудах функцийг рекурсив (recursion) гэж нэрлэдэг. Рекурсивийг мэдээлэл зүйн үндсэн ойлголтуудын нэг гэж үздэг. Асуудлын шийдлийн энэхүү арга нь математик индукцтэй төстэй. Өөрөөр хэлбэл функц өөрийгөө дуудахын тулд эхлээд функцийг өөр утгатайгаар дуудсан үр дүнг авсан байх хэрэгтэй болдог.
Функц өөрөө өөрийгөө дуудах ажиллагаа програмчлалын ихэнх хэлүүдэд байдаг тул ухагдхууныг ойлгон хэрэгжүүлж сурсан байх хэрэгтэй. Рекурсивийн (recursion) хэрэгжүүлэлтийг тодорхой шийдлүүд дээр харцгаая.

  Нээгдсэн тоо: 338 Нийтийн

Өмнөх хичээлүүдээр бид өгөгдлийн төрлүүд, үйлдлүүд, цикл, нөхцөлт бүтэцүүд, массив, арга гээд C# програмчлалын хэлний суурь ойлголтуудыг үзсэн. C# бол бүрэн хэмжээний обьект хандлагат хэл. ОХП -ийн аргачлал орчин үед маш өргөн дэлгэрсэн тул өргөн дэлгэрсэн програмчлалын хэлүүд бүгд энэ парадигмийг дэмждэг. Энгийнээр ОХП -нь програмийг өөр хоорондоо харилцан холбогдож ажиллах обьектууд байдлаар зохиох аргачлал юм. Цаашид програмчлалын илүү нарийн ойлголтуудыг судлаж эхлэх учраас өмнөх хичээлүүдийг үзсэн байхыг зөвлөе.

Лямбда-илэрхийлэл нь нэргүй аргын хураангуй бичилтийг илэрхийлнэ. Лямбда-илэрхийлэл утга буцаадаг, буцаасан утгыг өөр аргын…

Нээгдсэн тоо : 66

 

Кодийн сайжруулалт /рефакторинг/ хичээлээр програмийн кодоо react -ийн зарчимд нийцүүлэн компонентод салгасан.…

Нээгдсэн тоо : 95

 

Хадгалагч (Memento) хэв обьектын дотоод төлвийг түүний гадна гаргаж дараа нь хайрцаглалтын зарчмыг зөрчихгүйгээр обьектыг сэргээх боломжийг олгодог.

Нээгдсэн тоо : 101

 

Делегаттай нэргүй арга нягт холбоотой. Нэргүй аргуудыг делегатийн хувийг үүсгэхэд ашигладаг.
Нэргүй аргуудын тодорхойлолт delegate түлхүүр үгээр…

Нээгдсэн тоо : 124

 

Математикт харилцан урвуу тоонууд гэж бий. Ямар нэгэн тооны урвуу тоог олохдоо тухайн тоог сөрөг нэг зэрэг дэвшүүлээд…

Нээгдсэн тоо : 125

 

Төсөлд react-router-dom санг оруулан чиглүүлэгчдийг бүртгүүлэн тохируулсан Санг суулган тохируулах хичээлээр бид хуудас…

Нээгдсэн тоо : 179

 

Хуваах нь нэг тоо нөгөө тоонд хэдэн удаа агуулагдаж буй тодорхойлох арифметикийн үйлдэл.
Хуваалтыг нэг бус удаа…

Нээгдсэн тоо : 120

 

Зуучлагч (Mediator) нь олон тооны обьектууд бие биетэйгээ холбоос үүсгэхгүйгээр харилцан ажиллах боломжийг хангах загварчлалын хэв юм. Ингэснээр…

Нээгдсэн тоо : 116

 

Делегатууд хичээлд ухагдхууны талаар дэлгэрэнгүй үзсэн ч жишээнүүд делегатийн хүчийг бүрэн харуулж чадахааргүй байсан.…

Нээгдсэн тоо : 128

 
Энэ долоо хоногт

Арифметик прогрессын ялгавар тэгтэй тэнцүү биш. Энэхүү прогрессын 1-р гишүүнийг 2-р гишүүнээр, 2-р гишүүнийг 3-р гишүүнээр, 3-р гишүүнийг 1-р гишүүнээр үржүүлэхэд гарах тоонууд өгөгдсөн дарааллаар геометрийн прогресс үүсгэдэг бол геометр прогессын хуваарийг ол.

Нээгдсэн тоо : 1334

 

Бөмбөрцөгт багтсан зөв дөрвөн өнцөгт пирамидийн суурь нь бөмбөрцөгийн төвийг дайрч байв. Пирамидийн эзэлхүүн 18-тай тэнцүү бол бөмбөрцөгийн радиусийг ол.

Нээгдсэн тоо : 1466

 

Зөв зургаан өнцөгт пирамидийн апофем h -тэй тэнцүү бөгөөд сууртай үүсгэх хоёр талст өнцөг 600 градус бол пирамидийн бүтэн гадаргуун талбайг ол.

Нээгдсэн тоо : 39