October 29, 2021

Dasturlashdan 5ta masala

Birinchi masala

Narsisistik raqam - bu shunday n xonali sonki uni raqamlarini nchi darajaga ko'tarib - ularni qo'shsa - ana shu sonni o'zi hosil bo'lishi kerak.

Masalan, 153 soni - 3 xonali son, shuning uchun har bir raqamni uchinchi darajaga ko'tarib - keyin yig'indini hisoblaymiz. Agar natija dastlabki sonni o'ziga teng bo'lsa - demak u son narsisistik hisoblanadi, bo'lmasa yo'q.

1³ + 5³ + 3³ = 1+125+27 = 153 (narsisistik✅)

Endi 1652 sonini olaylik - (4 xonali son)
1⁴ + 6⁴ + 5⁴ + 2⁴ = 1938
Demak bu narsisistik son emas❌

Sizning vazifangiz shuki kiritilgan son - narsisistik son ekanligini tekshiradigan funksiya yozish. Agar son narsisistik bo'lsa dasturingiz True chiqarishi kerak, unday bo'lmasa - False.

Dasturingizni sinash uchun quyidagi Input dagi raqamlarni kiritsangiz - dasturingiz Outputdagi natija bilan bir xil natija qaytarishi kerak:

Input: 7 ➡️ Output: True Input: 122 ➡️ Output: False Input: 371 ➡️ Output: True

Ikkinchi masala

Siz odatda do'konga kirganingizda kredit kartadan foydalanasiz. Lekin siz kimdir plastik kartangizni raqamini bilib olishini hohlamaysiz. Sizning vazifangiz shuki - foydalanuvchi kiritgan ma'lumotni oxirgi 4ta belgidan boshqa hamma belgilarni # ga almashtirish. Agar foydalanuvchi kiritgan input - 4ta belgi yoki undan kam bo'lsa hech narsa o'zgartirmaysiz.

Masalan:
Input: "12375861458" ➡️ Output: " #######1458" Input: "abcdef" ➡️ Output: "##cdef" Input: "ab15" ➡️ Output: "ab15"

Uchinchi masala

Shunday funksiya yozingki - u gapni string ko'rinishida olib, undagi 4tadan ko'p xarfli so'zlarni teskari ko'rinishiga keltirishi kerak. Masalan:

Input 1: "Bu python dasturlash tili" Output 1: "Bu nohtyp hsalrutsad tili"

Ko'rib turganingizdek, bu yerdagi gapda - faqatgina harflar soni 4tadan ko'p bo'lgan so'zlar teskarisiga almashtirilgan (python ➡️ nohtyp), agar so'zdagi harflar soni 4ta yoki undan kam bo'lsa so'z o'zgartirilmaydi!

Input 2: "Men uyga ketdim" Output 2: "Men uyga midtek"

Input 3: "Yolg'on gapirish yaxshi emas" Output 3: "no'gloY hsiripag ihsxay emas"

To'rtinchi masala

Kassirga qaytim berishda yordam bering

Kamol do'konga kirib, o'zi uchun kerakli mahsulotlarga to'lov qildi. Jami xarid qilingan mahsulotlar summasi M so'm bo'ldi. U kassirga N so'm pul berdi. Kamol biroz injiq bo'lgani sababli qaytim qiymati kattaroq kupyuralar bilan berilishini va kupyuralar soni kam bo'lishini xohlaydi. Kassirga yordam bering.

Jami 1, 2, 5, 10, 50, 100, 200, 500, 1000, 2000, 5000, 10000, 20000, 50000 va 100000 so'mlik kupyuralar muomalada bor deb hisoblansin.

Agar Kamol bergan summa mahsulot narxidan kam bo'lsa, 0 chiqarilsin.

Kiruvchi ma'lumotlar:
Kirish oqimida ikkita musbat butun son, N va M sonlari probel bilan ajratilgan holda kiritiladi, sonlar qiymati 10⁹ dan oshmaydi.

Chiquvchi ma'lumotlar:
Chiqish oqimida qaytim uchun berilishi mumkin bo'lgan kupyuralar sonining eng kam miqdorini chiqarish kerak bo'ladi.

Masalan:

Input 1: "34226 10" Output 1: 8

Input 2: "89493 10" Output 2: 10

Beshinchi masala

"Roma" keyingi bosqichda

Barcelona futbol jamoasi Chempionlar ligasi nimchorak finalida "Roma" futbol klubi bilan to'qnash keldi. "Barcelona" maydonida kechgan o'yinda 4-1 hisobida "Barcelona" g'alaba qozondi. Keyingi o'yin "Roma" maydonida bo'lib o'tadi.

Vazifangiz "Roma" keyingi bosqichga chiqadimi yoki yo'qmi aniqlash.

Izoh: Mehmon stadionida urilgan gol ziyodroq hisoblanadi.
Kiruvchi ma'lumotlar:
Kirish oqimida bitta qatorda "-" bilan ajratilgan holatda "Roma" maydonida bo'lgan hisob.
Chiquvchi ma'lumotlar:
Agar "Roma" keyingi bosqichga chiqsa, win; chiqa olmasa, lost; va ikkita o'yinda ham hisob bir xil bo'lsa, penalty chiqarilsin.

Masalaln:
Input 1: 3-0 Output 1: win

Input 2: 3-1 Output 2: lost