Algoritmlar va mantiq: dasturlashdagi birinchi qadamlar

Dasturchilar qanday fikrlaydi: algoritmlar, o'zgaruvchilar, shartlar va sikllar — hayotiy misollarda va Python'dagi birinchi qatorlarda. Dastur o'rnatmasdan.

1-dars

Algoritm nima

Algoritm — bu natijaga olib keladigan aniq qadamlar ketma-ketligi. Bu so'z yurtdoshimiz — olim al-Xorazmiy nomidan kelib chiqqan (u haqida kutubxonamizda kitob bor).

Sen har kuni algoritmlardan foydalanasan. Masalan, choy qanday damlanadi:

  • Choynakka suv quyish.
  • Suvni qaynatish.
  • Damlash choynagiga choy solish.
  • Qaynoq suv quyish.
  • 5 daqiqa kutish.
  • Piyolalarga quyish.

Yaxshi algoritmning xususiyatlari

  • Aniqlik: har bir qadam taxminsiz tushunarli. «Biroz kutish» — yomon, «5 daqiqa kutish» — yaxshi.
  • Tartib: qadamlarni almashtirib bo'lmaydi — suv qaynamasdan choy quyib bo'lmaydi.
  • Cheklilik: algoritm qachondir tugaydi.

Kompyuter — juda tez, lekin mutlaqo so'zma-so'z bajaruvchi. U aynan yozilgan narsani qiladi. Shuning uchun dasturchi juda aniq fikrlashi kerak.

Topshiriq

«Uydan maktabgacha qanday borish» algoritmini shunday yoz-ki, uni hech qachon sening uyingda bo'lmagan odam ham bajara olsin.

2-dars

O'zgaruvchilar: nomli qutilar

Dasturga ma'lumotlarni qayerdadir saqlash kerak: ism, yosh, ochkolar soni. Buning uchun o'zgaruvchilar bor. Yorlig'i bor qutini tasavvur qil: yorliqda — o'zgaruvchi nomi, ichida — qiymat.

Mana bu eng mashhur dasturlash tillaridan biri — Python'da qanday ko'rinadi:

name = "Aziz"
age = 14
score = 0
print(name, age)

print buyrug'i qiymatni ekranga chiqaradi. Bu dastur: Aziz 14 deb chop etadi.

Ma'lumot turlari

  • Sonlar: 14, 3.5 — ular bilan hisoblash mumkin.
  • Satrlar (matn): "Aziz" — qo'shtirnoq ichida yoziladi.
  • Mantiqiy qiymatlar: True (rost) va False (yolg'on).

Qiymatni o'zgartirish mumkin

score = 0
score = score + 10
print(score)

Dastur 10 ni chiqaradi: biz eski qiymatni olib, 10 qo'shdik va yana o'sha qutiga soldik. O'yinlarda ochko va tangalar aynan shunday to'planadi — e-Teacher'dagi tajribang ham.

3-dars

Shartlar: agar… aks holda…

Dasturlar qaror qabul qila oladi. Buning uchun shartlar bor. Hayotda ham shunday o'ylaymiz: «Agar yomg'ir yog'sa — soyabon olaman, aks holda — kepka».

Python'da:

score = 85
if score >= 80:
    print("Test topshirildi!")
else:
    print("Yana urinib ko'r")

Chekinishga (4 ta bo'sh joy) e'tibor ber — Python qaysi buyruqlar shartga tegishli ekanini shu orqali tushunadi.

Taqqoslash operatorlari

  • == teng, != teng emas
  • katta >, kichik <, katta yoki teng >=, kichik yoki teng <=

Bir nechta variant

if score >= 90:
    print("A'lo")
elif score >= 80:
    print("Yaxshi")
else:
    print("Takrorlash kerak")

Aytgancha, e-Teacher'da test kamida 80% to'planganda topshirilgan hisoblanadi — bu platforma kodidagi aynan shunday shart.

Topshiriq

Svetofor uchun shart o'ylab top: qizil, sariq va yashil chiroq uchun dastur nima «deyishi» kerak?

4-dars

Sikllar: kompyuter takrorlasin

Tasavvur qil, 1 dan 100 gacha sonlarni chiqarish kerak. print'ni yuz marta yozasanmi? Yo'q — takrorlash uchun sikllar bor.

for i in range(1, 101):
    print(i)

range(1, 101) — bu 1 dan 100 gacha sonlar (oxirgi son kirmaydi). for sikli har bir sonni navbat bilan i o'zgaruvchisiga soladi va ichidagi buyruqlarni bajaradi.

Sonlar yig'indisi

Rivoyatga ko'ra, yosh matematik Gauss 1 dan 100 gacha sonlarni xayolan tez qo'shgan. Kompyuter buni shunday qiladi:

total = 0
for i in range(1, 101):
    total = total + i
print(total)

Javob: 5050. Bu yerda biz o'rgangan hamma narsa birga ishlaydi: o'zgaruvchi, sikl va hisoblash.

Shartli sikl

for i in range(1, 21):
    if i % 3 == 0:
        print(i, "3 ga bo'linadi")

% belgisi bo'lishdan qoldiqni beradi. Dastur 20 gacha 3 ga bo'linadigan barcha sonlarni topadi.

Kurs yakuni

Algoritm, o'zgaruvchilar, shartlar va sikllar — har qanday dasturning poydevori: kalkulyatordan o'yinlar va sun'iy intellektgacha. Agar yoqqan bo'lsa — «Python'da dasturlash» kursidagi «Bu kursni xohlayman» tugmasini bos, uning boshlanishi haqida xabar beramiz.

Kodni brauzerda Python qum-qutisi saytlarida bepul sinab ko'rish mumkin (masalan, «Python online» so'rovi bo'yicha).

e-Teacher'da o'qing — tajriba va yutuqlar oling

Bepul boshlash