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

Функц сэдвийн дадлага болгон хэрэглэгчээс оруулсан ром тоог араб тоо болгох функцийг бичье. Жишээ нь "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 тольд тодорхойлсон тоонуудтай тохирч байгаа шалгалтыг нэмэн оруулахыг танд үлдээе. Тоог нэгээр оруулан шалгах ажиллагаа төвөгтэй байвал

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

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

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

Хичээлээр функц ашиглахтай холбоотой нэгэн чухал онцлогийн талаар үзэх болно. Чухамдаа бол функцууд нэгийгээ агуулах болон функцийн хувьсагчдын харагдах хүрээний тухай юм.
Хувьсагчдын харагдах хүрээнд тэдгээртэй харьцахад LEGB дүрмийг баримталдаг. Энд L - local /функц доторх/, E - enclosing function local /дотоод функцээр хаагдсан/, G - global /глобал/, B - built in /дотоодын/ гэсэн үгнүүд болно. Орчуулга сайнгүй тул англи хэллэгээр нь тогтоогоод авсан нь илүү.

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

Хичээлээр олон удамшилтын онцгой төрөл болох миксиний талаар авч үзнэ. Миксинд дүрмийн ямар нэгэн өөр бичилт байхгүй ч утгын талаасаа онцгой учиртай. Хамгийн гол онцлог нь миксинийг тодорхой классуудын шатлалын суурь класс байдлаар зохиодоггүйд оршино. Өөрөөр хэлбэл тэдгээрийг дурын класстай хольж болдог. Үүнийг машин классийн жишээгээр авч үзье.

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

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

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

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

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

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

 

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

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

 

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

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

 

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

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

 

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

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

 

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

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

 

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

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

 

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

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

 

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

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

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

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

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

 

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

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

 

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

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