Дадлагын ажил

Функц сэдвийн дадлага болгон хэрэглэгчээс оруулсан ром тоог араб тоо болгох функцийг бичье. Жишээ нь "XV" гэж оруулбал 15, хэрвээ "IV" гэж оруулбал 4 -ийг буцаах гэх мэтээр.
Ром тоог араб тоонд I - 1, V - 5, X - 10, L - 50, C - 100, D - 500, M - 1000 жагсаалтаар шилжүүлнэ.
Ром тоог бичих болон араб тоонд шилжүүлэх дүрэм.

  • Том тоо бага тооны өмнө байвал тэдгээрийг нэмнэ.
  • Бага тоо том тооны өмнө байвал том тооноос бага тоог хасна.

Функцийг бичээд дараа нь хичээлийн кодтой харьцуулан үзээрэй.

Ром тоог араб тоо болгох функцийн кодийг

дээрх байдлаар хэрэгжүүллээ. Таны бичсэн код зөв үр дүн өгч байвал өөр байх нь хамаагүй. Програмчлалын асуудлыг маш олон янзаар шийдэж сурахыг хичээж байгаарай. Кодод тоог хөрвүүлэх parse_roman функцийг л хэрэгжүүлсэн. Ром тоог араб тоонд хөрвүүлэх жагсаалтыг толь буюу dict төрлөөр romans хувьсагчид олгосон. parse_roman функц хэрэглэгчээс оруулсан ром тоог параметрээр хүлээн авна. result бол өгөгдсөн дүрмээр хөрвүүлэгдсэн ром тоог хадгалан функцээс буцаах утгын хувьсагч. Параметрээр авсан мөр төрлийн өгөгдлийг циклээр гүйлгэн тэмдэгт бүрд анализ хийн араб тоонд шилжүүлэхийн тулд python -ий дотоод enumerate функцийг ашигласан. enumerate функц итерацлагдах (мөр, жагсаалт, толь г.м) обьектийг аваад элементийн индекс болон элементийг өөрийг нь агуулсан tuple -ийг үүсгэдэг. parse_roman функцэд мөр ирэх тул түүнийг enumerate функцэд өгвөл функцээс мөрийн тэмдэгтийн индекс, тэмдэгтийг агуулсан tuple -ийг буцаана. Ингэснээр for циклийн алхам бүрд бид параметрээр ирсэн мөрийн тэмдэгт түүний индексийг авах юм. Өөрөөр хэлбэл циклийн алхам бүрд i -д параметрээр ирсэн мөрийн тэмдэгтийн индекс, c -д параметрээр ирсэн мөрийн тэмдэгт ирнэ. Үүнийг өөрсдөө шалган үзээрэй. Үүний дараа ром тоог араб тоонд шилжүүлэх дүрмийн логикийг хэрэгжүүлсэн. if i+1<len(roman) and romans[c] < romans[roman[i+1]]: бичлэгээр бид индекс сүүлийн тэмдэгтийнх биш бөгөөд тэмдэгтийн romans тольд дахь утга дараагийн тэмдэгтийн romans тольд дахь утгаас бага байх нөхцлийг шалгана. Хэрвээ нөхцөл биелэж байвал өөрөөр хэлбэл бага тоо том тооны өмнө байвал хасах дүрмээр үр дүнгийн result хувьсагчаас тэмдэгтийн romans тольд дахь утгыг хасна. Эсрэг тохиолдолд result хувсагчид тэмдэгтийн romans тольд дахь утгыг нэмнэ. Ром тоог араб тоонд шилжүүлж буй энэ логиийн ажиллагааг сайн ойлгон аваарай. Үүнээс гадна if операторийн нөхцөлд индекс параметрийн уртаас давахгүй эсэхийг шалгаж байгааг анхаарна уу.
Шилжүүлэх функцээ бичсэн тулд input -ээр хэрэглэгчээс ром тоогоо аваад аваад үр дүнг print функцээр үзүүлнэ. Хэрэглэгчээс оруулсан тоо romans тольд тодорхойлсон тоонуудтай тохирч байгаа шалгалтыг нэмэн оруулахыг танд үлдээе. Тоог нэгээр оруулан шалгах ажиллагаа төвөгтэй байвал

 гэж шалгалтыг хийсэн ч болно.

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

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

Хичээлээр dunder method буюу "шидэт арга" -ын талаар авч үзье. dunder гэдэг нь хоёр доогуур зураас бөгөөд эдгээр тэмдэгтээр тэмдэглэгдсэн аргуудыг "шидэт арга" буюу тусгай арга гэж нэрлэдэг. Ийм аргуудыг хэрэглэгчийн кодод дахин тодорхойлон ажиллагааны логикийг өөрчлөх боломж байдаг. Асуудлыг дараах

жишээгээр авч үзье.

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

Програмчлалын хэлийн төрлүүдийг сайн ойлгосон байх нь цаашид хэлний боломжуудыг практикт хэрэглэж сурах суурь болдог. Эхлэн суралцагсад програмийн код бичих гэж хэт яарснаас төрлүүдийн хоорондын ялгаа, хаана, хэзээ хэрэглэх гэх мэтийн нарийн асуудлыг төдийлөн анхаарахгүй өнгөрснөөс үүдэн бодит ажилд алдаа гаргах тохиолдол нилээдгүй гардаг тул хэлний төрлүүдийн хичээлүүдийг сайтар ухан ойлгохыг зөвлөе. 

Толь буюу dict төрлийг Толь /dict/ хичээлээр үзсэн. Энэ удаад collections модулийн ordereddict төрөл dict төрлөөс ямар ялгаатайг авч үзье. Jupyter Notebook орчинд оруулсан

  Нээгдсэн тоо: 459 Төлбөртэй

Програмд функц ямар хэрэгтэй вэ? гэсэн асуулт гарч ирж болох юм. Функцийн нэг үүрэг бол кодын ижил хэсгийг давталтгүй болгон дахин ашиглах боломжийг бүрдүүлэхэд оршино. Жишээ нь програмын ямар нэгэн логикийн хэрэгжүүлэлтийг нэг удаа кодлоод түүнийг програмын кодийн бусад хэсгүүдэд хэрэгтэй болоход ашиглах боломжийг функц олгох юм. Түүнээс кодийн хэсэг өөр хэсэгт хэрэг болоход түүнийг хуулан тавих арга бол муу аргачлал гэдэг нь тайлбаргүйгээр ойлгомжтой. Иймээс төслийн янз бүрийн хэсгийн кодчлолд олон удаа ашиглагдах хэсгийг функц байдлаар тодорхойлон ашиглах нь цэвэр код бичих, ажиллагаануудын үүргийн хувиарлалт тэр ч бүү хэл багийн гишүүдийн үүргийг хувиарлахад ашиг тустай.

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

Өгөгдлийн төрлүүд хичээлд True эсхүл False утгуудыг авдаг логик /boolean/ төрлийн тухай дурдсан. True эсхүл False утгуудыг хааяа 1 ба 0 -ээр төлөөлүүлдэг. Энд 1 - True харин 0 - False -ийг заана. Хувьсагчид логик утгыг олгохыг

жишээгээр харцгаая.

Үйл явдал /event/ тодорхой үйлдэл хийгдсэн талаар системд мэдэгддэг. Хэрвээ бид энэхүү үйлдлийг ажиглах хэрэгтэй бол яг энд…

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

 

Манай төсөл олон хуудсуудтай болон тэдгээрийн хооронд динамикаар шилжилт хийж байгаа ч тухайн үед шилжилт хийгдсэн хуудаст тохирох…

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

 

Зочин (Visitor) паттерн классуудыг өөрчлөхгүйгээр тэдгээрийн обьектуудын үйлдлийг тодорхойлох боломжийг олгоно. Зочин хэвийг ашиглахдаа классуудын хоёр ангилалыг тодорхойлно.…

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

 

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

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

 

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

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

 

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

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

 

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

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

 

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

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

 

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

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

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

Кубын ирмэг a. Дээд талын төвийг суурийн оройтой холбоход үүсэх пирамидийн бүтэн гадаргуун талбайг ол.

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

 

A=(-2; 3; 5), B=(4; -1; 7) векторууд өгөгджээ. 3A-2B векторын координатуудын нийлбэрийг ол.

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

 

Утасны лавлах номыг дэлгэн 7 цифрээс бүрдсэн дугаарыг санамсаргүйгээр байдлаар сонгоход дугаарын сүүлийн дөрвөн цифрүүд ижил байх хувилбарын тоог ол.

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