Python dasturlash tilida qiziqarli algoritmik masala
Masala: Tezlikni oshirish uchun jarimani hisoblash
Foydalanuvchi mashinasining haqiqiy tezligi va yo‘ldagi tezlik cheklovi beriladi. Ushbu farqqa qarab haydovchiga nisbatan:
- birinchi marta buzilganmi,
- ikkinchi marta buzilganmi,
- yoki uchinchi va undan ko‘p marta buzilganmi
— shunga mos ravishda jarima miqdori va qo‘shimcha choralar belgilanadi.
- cheklov — ruxsat etilgan tezlik (km/soat, butun son).
- tezlik — haqiqiy tezlik (km/soat, butun son).
- qoida buzilish soni — ushbu haydovchining ilgari necha marta tezlikni oshirgani (1, 2 yoki 3 va undan ortiq).
Jarima miqdori va qo‘shimcha choralar (matn ko‘rinishida).
1. farq = tezlik - cheklov hisoblanadi.
2. Agar farq <= 0, jarima qo‘llanmaydi.
3. Aks holda farq va qoida buzilish soniga qarab:
0 < farq ≤ 20:
1-marta: 1 BHM
2-marta: 5 BHM
3-marta+: 15 BHM + 1 yil haydovchilik guvohnomadan mahrum
21 ≤ farq ≤ 40:
1-marta: 5 BHM
2-marta+: 15 BHM yoki 1 yil haydovchilik guvohnoma bekor qilinishi
farq > 40:
1-marta: 9 BHM
2-marta+: 25 BHM + 2 yil haydovchilik guvohnomadan mahrum
Ruxsat etilgan tezlikni kiriting (km/soat): 70
Haqiqiy tezlikni kiriting (km/soat): 85
Bu nechinchi marta tezlikni oshiryapsiz? (1, 2, 3...): 1
Ruxsat etilgan tezlikni kiriting (km/soat): 60
Haqiqiy tezlikni kiriting (km/soat): 105
Bu nechinchi marta tezlikni oshiryapsiz? (1, 2, 3...): 3
Jarima: 25 BHM (9375000 so‘m) va 2 yilga guvohnomadan mahrum qilinadi.