A. S.U Stipendiya Hisoblagich

Xotira: 256 MB, Vaqt: 1000 ms
Masala

Universitetda talabalarga yakuniy imtihon ballariga qarab har xil miqdorda stipendiya beriladi. Talaba bitta asosiy fandan imtihon topshirdi va $X$ ball oldi. Stipendiya quyidagi qoidalar asosida belgilanadi:

  1. Agar talaba 86 balldan 100 ballgacha ball to'plasa, u "A'lo" stipendiya oladi (ekranga ALODAGI deb chiqarish kerak).
  2. Agar talaba 71 balldan 85 ballgacha ball to'plasa, u "Yaxshi" stipendiya oladi (ekranga YAXSHI deb chiqarish kerak).
  3. Agar talaba 0 balldan 70 ballgacha ball to'plasa, u stipendiya olmaydi (ekranga STIPENDIYA YOQ deb chiqarish kerak).

Siz kiritilgan ballga qarab talabaga qaysi turdagi stipendiya berilishini aniqlovchi dastur tuzing.

Kiruvchi ma'lumotlar:

Bitta butun son — talabaning imtihondan olgan bali X kiritiladi (0 <= X <=100).

Chiquvchi ma'lumotlar:
Misollar:
# INPUT.TXT OUTPUT.TXT
1
86
ALODAGI
2
71
YAXSHI

B. S.U Telefon quvvati va O'yin

Xotira: 256 MB, Vaqt: 1000 ms
Masala

Asadbek telefonda juda qiziqarli o'yin o'ynamoqda. U o'yinni boshlaganda telefonining quvvati N foiz edi. Kuzatishlar shuni ko'rsatadiki, Asadbek o'yinning har bir raundini o'ynaganida, telefon quvvati 3 foizga kamayadi.

Telefon quvvati 0 foizdan pastga tushib keta olmaydi (ya'ni quvvat tugasa telefon o'chadi). while sikli yordamida Asadbek telefon o'chib qolguniga qadar (quvvat 0 bo'lguniga qadar) ko'pi bilan jami nechta to'liq raund o'ynay olishini aniqlang.

Kiruvchi ma'lumotlar:

Bitta butun son — telefonning boshlang'ich quvvati N foiz kiritiladi (1 <= N <= 100).

Chiquvchi ma'lumotlar:

Bitta butun son — Asadbek o'ynay oladigan maksimal raundlar soni.

Misollar:
# INPUT.TXT OUTPUT.TXT
1
9
3
2
10
3

C. S.U Probelllar soni

Xotira: 256 MB, Vaqt: 1000 ms
Masala

Siz Telegram messenjeri uchun kichik funksiya yozmoqdasiz. Foydalanuvchilar ba'zan matn chiroyli ko'rinishi uchun so'zlar orasiga juda ko'p bo'shliqlar (probellar) qo'yib yuborishadi. Tizim xabar hajmini va ortiqcha bo'shliqlarni hisoblab borishi kerak.

Sizga bitta satr (string) beriladi. for sikli yordamida ushbu matn ichida jami nechta probel (bo'shliq belgi) qatnashganini aniqlang.

Kiruvchi ma'lumotlar:

Bitta satrda probellar bilan birga yozilgan matn kiritiladi (satr uzunligi 100 ta belgigacha).

Chiquvchi ma'lumotlar:

Bitta butun son — matndagi probellar soni.

Misollar:
# INPUT.TXT OUTPUT.TXT
1
C++Programming
0
2
Hello  Telegram  World
4

D. S.U Katta harflarni sanash

Xotira: 256 MB, Vaqt: 1000 ms
Masala

Dasturchi sayt ro'yxatdan o'tish qismi uchun parol tekshiruvchi tizim yaratmoqda. Xavfsizlik qoidalariga ko'ra, parol kuchli bo'lishi uchun uning ichida kamida 2 ta katta ingliz harfi (masalan, A, B, Z kabi) qatnashishi kerak.

Sizga kiritiladigan paroldagi belgilar soni N va undan keyin parolni tashkil qilgan belgilar ketma-ket beriladi. for sikli yordamida ushbu parolda nechta katta harf borligini aniqlang va parol talabga javob beradimi yoki yo'q, shuni tekshiring.

Kiruvchi ma'lumotlar:
  • Birinchi satrda paroldagi belgilar soni — $N$ kiritiladi ($1 \le N \le 20$).
  • Ikkinchi satrda N ta belgi (char) bo'shliq (probel) bilan ajratilgan holda kiritiladi.
Chiquvchi ma'lumotlar:
  • Agar paroldagi katta harflar soni 2 ta yoki undan ko'p bo'lsa, ekranga YES so'zini chiqaring.
  • Aks holda (katta harflar yetarli bo'lmasa), ekranga NO so'zini chiqaring.
Misollar:
# INPUT.TXT OUTPUT.TXT
1
2
X Y
YES
2
3
a b c
NO
3
6
K 1 2 @ * M
YES

E. S.U Parol tekshiruvchi tizim

Xotira: 256 MB, Vaqt: 1000 ms
Masala

Foydalanuvchi tizimdan ro‘yxatdan o‘tish uchun yangi parol kiritmoqda. Xavfsizlik qoidalariga ko‘ra, parol ishonchli bo‘lishi uchun u kamida 8 ta belgidan iborat bo‘lishi shart.

Sizga kiritilgan parol (string ko‘rinishida) va uning uzunligi ($N$) beriladi. Siz dasturingizda faqat if-else yordamida quyidagi uchta vaziyatdan birini chiqarishingiz kerak:

  1. Agar parolda kamida bitta raqam (masalan, 159) qatnashgan bo‘lsa va uning umumiy uzunligi 8 yoki undan katta bo‘lsa, ekranga: "KUCHLI" so‘zi chiqsin.
  2. Agar parol uzunligi 8 yoki undan katta bo‘lsa-yu, lekin ichida hech qanday raqam bo‘lmasa (faqat harflardan iborat bo‘lsa), ekranga: "O'RTACHA" so‘zi chiqsin.
  3. Agar parol uzunligi 8 dan kichik bo‘lsa, ichida raqam bor-yo‘qligidan qat'iy nazar u yaroqsiz va ekranga: "ZAIF" so‘zi chiqsin.
Kiruvchi ma'lumotlar:

Yagona qatorda bitta butun son N (parol uzunligi) va bitta mantiqiy son R (parolda raqam bo‘lsa 1, bo‘lmasa 0) kiritiladi.

Chiquvchi ma'lumotlar:

Vaziyatga qarab "KUCHLI", "O'RTACHA" yoki "ZAIF" so‘zlaridan birini chiqaring.

Misollar:
# INPUT.TXT OUTPUT.TXT
1
3 0
ZAIF
2
100000 1
KUCHLI

F. S.U Raqamlar ko'paytmasi poygasi

Xotira: 256 MB, Vaqt: 1000 ms
Masala

Sizga bitta musbat butun N soni beriladi. Siz while sikli yordamida shu sonning barcha raqamlari ko'paytmasini hisoblashingiz kerak.

Agar hosil bo'lgan ko'paytma toq son bo'lsa, ekranga "TOQ" so'zini, agar juft son bo'lsa, "JUFT" so'zini chiqaring.

Kiruvchi ma'lumotlar:

Yagona qatorda bitta musbat butun son — N (1 <=N <=2 *10^9) kiritiladi.

Chiquvchi ma'lumotlar:

Raqamlar ko'paytmasining turiga qarab ekranga "JUFT" yoki "TOQ" so'zini chiqaring.

Misollar:
# INPUT.TXT OUTPUT.TXT
1
23
JUFT
2
13
TOQ

G. S.U Deyarli Palindrom

Xotira: 256 MB, Vaqt: 1000 ms
Masala

Sizga 3 ta harfdan iborat kichik satr (so'z) beriladi. Agar bu so'zni teskari o'qiganda ham o'zi bilan bir xil bo'lsa (ya'ni palindrom bo'lsa), ekranga "MUKAMMAL" so'zi chiqsin.

Agar so'z palindrom bo'lmasa, lekin uning faqatgina bitta harfini o'zgartirib palindrom qilishning iloji bo'lsa, ekranga "DEYARLI" so'zi chiqsin.

Agar umuman o'xshatib bo'lmasa, "YO'Q" so'zi chiqsin.

Kiruvchi ma'lumotlar:

Yagona qatorda uzunligi aniq 3 ga teng bo'lgan, kichik ingliz harflaridan iborat so'z kiritiladi.

Chiquvchi ma'lumotlar:

Vaziyatga qarab "MUKAMMAL", "DEYARLI" yoki "YO'Q" so'zlaridan birini chiqaring.

 

Misollar:
# INPUT.TXT OUTPUT.TXT
1
aba
MUKAMMAL
2
abc
DEYARLI

H. S.U shifrlash

Xotira: 256 MB, Vaqt: 1000 ms
Masala

Sizga bitta belgi (C) kiritiladi. Agar bu belgi ingliz alifbosidagi kichik harf bo'lsa, siz undan keyin keladigan keyingi harfni katta ko'rinishda chop etishingiz kerak. Agar kiritilgan belgi katta harf bo'lsa, undan oldingi harfni kichik ko'rinishda chop etishingiz kerak.

Agar kiritilgan belgi umuman harf bo'lmasa (masalan, raqam yoki belgi), shunchaki "XATO" so'zi chiqsin.

Kiruvchi ma'lumotlar:

Yagona qatorda bitta belgi — C kiritiladi.

Chiquvchi ma'lumotlar:

Masala shartiga mos keladigan bitta belgi yoki "XATO" so'zini chiqaring.

Misollar:
# INPUT.TXT OUTPUT.TXT
1
b
C
2
D
c

I. S.U Eng uzun tayoqcha

Xotira: 256 MB, Vaqt: 1000 ms
Masala

Sizga N ta tayoqchaning uzunliklari ketma-ket kiritiladi. Siz for sikli yordamida ushbu tayoqchalar ichidan eng uzun va ikkinchi eng uzun tayoqchalarni aniqlashingiz kerak.

 Mantiqiy tuzoq: Sonlarni massivga (array yoki vector) saqlash taqiqlanadi! Masalani faqatgina for sikli ichida, sonlar kiritilishi jarayonining o‘zida ikkita o‘zgaruvchi yordamida hal qilish talab etiladi. Shuningdek, kiritilayotgan sonlar ichida bir xil uzunlikdagi tayoqchalar ham bo‘lishi mumkin (masalan, eng uzun tayoqchadan 2 ta bo‘lsa, ikkinchi eng uzun tayoqcha ham birinchisiga teng bo‘ladi).

 

 

Kiruvchi ma'lumotlar:

Kirish ma'lumotlari (Input):

Birinchi qatorda tayoqchalar soni — N (2 <= N <=10^5) kiritiladi.

Ikkinchi qatorda esa $N$ ta musbat butun son — tayoqchalarning uzunliklari (1 <= uzunlik <=10^9) bo‘shliq bilan ajratilgan holda kiritiladi.

Chiquvchi ma'lumotlar:

Chiqish ma'lumotlari (Output):

Yagona qatorda ikkita son: avval eng uzun tayoqcha uzunligini, so‘ngra ikkinchi eng uzun tayoqcha uzunligini bo‘shliq bilan ajratib chiqaring.

Misollar:
# INPUT.TXT OUTPUT.TXT
1
5
3 7 2 9 5
9 7
2
4
8 5 8 3
4
8 5 8 3

J. S.U uchburchak

Xotira: 256 MB, Vaqt: 1000 ms
Masala

Sizga uchta musbat butun son — a, b va c (tayoqchalarning uzunliklari) beriladi. Ushbu tomonlardan uchburchak yasash mumkinligini va u burchaklariga ko'ra qanday uchburchak ekanini aniqlang.

Kiruvchi ma'lumotlar:

Yagona qatorda uchta musbat butun son — a, b va c (1 <= a, b, c <= 10^9) kiritiladi. Sonlar bo‘shliq (probel) bilan ajratilgan.

Chiquvchi ma'lumotlar:

Agar berilgan tomonlardan uchburchak yasab bo‘lmasa, ekranga shunchaki "NO" so‘zini chiqaring.

Agar uchburchak yasash mumkin bo‘lsa:

Birinchi qatorda "YES" so‘zini;

Ikkinchi qatorda esa burchak turiga qarab: "To'g'ri burchakli uchburchak", "O'tkir burchakli uchburchak" yoki "O'tmas burchakli uchburchak" jumlalaridan birini chiqaring.

Misollar:
# INPUT.TXT OUTPUT.TXT
1
5 3 4
YES
To'g'ri burchakli uchburchak
2
10 2 5
NO
Kitob yaratilingan sana: 28-Jul-26 00:00