Deprecated: Array and string offset access syntax with curly braces is deprecated in /home/megaline/public_html/engine/classes/templates.class.php on line 162 Python - Megaline.uz https://megaline.uz/ ru Python - Megaline.uz DataLife Engine 16-ámeliy jumıs: Python programmalastırıw tilinde funkciyalar https://megaline.uz/index.php?newsid=140 https://megaline.uz/index.php?newsid=140 1. Funkciya haqqında ulıwma túsinik:
Funkciya - belgili bir wazıypanı orınlaw ushın arnalǵan kod blokı. Ol kodtı qayta-qayta jazıwdan qutqaradı hám kodtı strukturalaydı.
2. Funkciyani járiyalaw sintaksisi:
def funkciya_atı(parametr1, parametr2, ...):
    # funkciya denesi
    # orınlanatuǵın kodlar
    return nátiyje  # qaytarılatuǵın mánisi (optional) 

3. Funkciya túrleri:
a) Parametrsiz funkciya:
def sálem_ber():
    print("Sálem, dúnya!")

sálem_ber()  # funkciyani shaqırıw

b) Parametrli funkciya:
def qosıw(a, b):
    nátiyje = a + b
    return nátiyje

summa = qosıw(5, 3)  # nátiyje: 8

c) Default parametrli funkciya:
def sálemle(at="Qonaq"):
    print(f"Sálem, {at}!")

sálemle()  # "Sálem, Qonaq!"
sálemle("Ali")  # "Sálem, Ali!" 

4. Return operatorı:
def kvadrat(san):
    return san ** 2

nátiyje = kvadrat(4)  # nátiyje: 16

5. Kóp mánisli return:
def esaplaw(san):
    kvadrat = san ** 2
    kub = san ** 3
    return kvadrat, kub

kvad, kb = esaplaw(3)  # kvad = 9, kb = 27

6. args hám kwargs:
a) *args - bir neshe poziciyalıq argumentler:
def jámi(*sanlar):
    return sum(sanlar)

nátiyje = jámi(1, 2, 3, 4)  # nátiyje: 10

b) **kwargs - bir neshe gilt sózli argumentler:
def student_maǵlıwmat(**maǵlıwmat):
    for gilt, mánis in maǵlıwmat.items():
        print(f"{gilt}: {mánis}")

student_maǵlıwmat(at="Ali", jas=20, kurs=2) 

7. Lambda funkciyası:
# Ápiwayı funkciya
kvadrat = lambda x: x ** 2
nátiyje = kvadrat(5)  # nátiyje: 25

8. Ámeliy mısallar:
1-mısal: Faktorial esaplaw funkciyası:
def faktorial(n):
    if n == 0 or n == 1:
        return 1
    else:
        return n * faktorial(n-1)

print(faktorial(5))  # nátiyje: 120

2-mısal: Dizimdi filtrlaw funkciyası:
def jup_sanlar_filtr(dizim):
    jup = []
    for san in dizim:
        if san % 2 == 0:
            jup.append(san)
    return jup

sanlar = [1, 2, 3, 4, 5, 6]
print(jup_sanlar_filtr(sanlar))  # nátiyje: [2, 4, 6] 

3-mısal: Tekst processingi:
def sóz_analiz(tekst):
    sózler = len(tekst.split())
    háripler = len([x for x in tekst if x.isalpha()])
    return {
        "sózler_sanı": sózler,
        "háripler_sanı": háripler
    }

tekst = "Python - júdá jaqsı programmalastırıw tili"
print(sóz_analiz(tekst)) 

4-mısal: Dekorator funkciya:
def dekorator(func):
    def wrapper():
        print("Funkciya baslanbaqta...")
        func()
        print("Funkciya juwmaqlandı...")
    return wrapper

@dekorator
def sálem():
    print("Sálem, dúnya!")

sálem()

9. Funkciya scope (kólem):
global_ózgeriwshi = 10

def funkciya():
    local_ózgeriwshi = 5
    print(local_ózgeriwshi)
    print(global_ózgeriwshi)

funkciya()
# print(local_ózgeriwshi)  # qátelik beredi

10. Dokumentaciya (docstring):
def qosıw(a, b):
    """
    Eki sandı qosıw funkciyası.
    
    Parametrler:
    a (int): birinshi san
    b (int): ekinshi san
    
    Returns:
    int: eki sannıń qosındısı
    """
    return a + b

print(qosıw.__doc__)  # funkciya dokumentaciyasın kórsetiw

11. Ámeliy qollanıw usınısları:
1. Funkciya atların túsinikli etip qoyıń
2. Hár bir funkciya tek bir wazıypanı orınlasın
3. Funkciyalar dokumentaciyasın jazıń
4. Funkciya nátiyjesin tekserip kóriń
5. Global ózgeriwshilerdi minimallastırıń
Funkciyalar - programmanı strukturalaw hám kodtı qayta qollanıw ushın áhmiyetli qural. Bul teoriyalıq hám ámeliy mısallar funkciyalar menen islewdiń tiykarǵı aspektlerin qamtıp aladı.

ÁMELIY MÍSALLAR
1. Kalkulyator funkciyası:
def kalkulyator(san1, san2, operaciya):
    """Ápiwayı kalkulyator funkciyası"""
    if operaciya == '+':
        return san1 + san2
    elif operaciya == '-':
        return san1 - san2
    elif operaciya == '*':
        return san1 * san2
    elif operaciya == '/':
        if san2 != 0:
            return san1 / san2
        return "Nolge bóliw múmkin emes"

# Qollanıw
print(kalkulyator(10, 5, '+'))  # 15
print(kalkulyator(10, 5, '-'))  # 5
print(kalkulyator(10, 5, '*'))  # 50
print(kalkulyator(10, 5, '/'))  # 2.0

2. Parol generatorı:
import random
import string

def parol_jasaw(uzınlıq=8):
    """Qáwipsiz parol jaratıw funkciyası"""
    háripler = string.ascii_letters  # a-z, A-Z
    sanlar = string.digits  # 0-9
    belgi = string.punctuation  # !@#$%^&*()
    
    barlıq_simvollar = háripler + sanlar + belgi
    parol = ''.join(random.choice(barlıq_simvollar) for _ in range(uzınlıq))
    return parol

# Qollanıw
print(parol_jasaw())  # 8 simvollı parol
print(parol_jasaw(12))  # 12 simvollı parol

3. Tekst analizi:
def tekst_analiz(tekst):
    """Tekstti analiz qılıw funkciyası"""
    nátiyje = {
        'uzınlıq': len(tekst),
        'sózler_sanı': len(tekst.split()),
        'úlken_hárip': sum(1 for x in tekst if x.isupper()),
        'kishi_hárip': sum(1 for x in tekst if x.islower()),
        'sanlar': sum(1 for x in tekst if x.isdigit())
    }
    return nátiyje

# Qollanıw
tekst = "Python 3 - júdá jaqsı programmalaw tili!"
print(tekst_analiz(tekst)) 

4. Studentler bazası:
def student_qosıw(bazaǵa, atı, jasі, bahalar):
    """Studentti bazaǵa qosıw"""
    student = {
        'atı': atı,
        'jasі': jasі,
        'bahalar': bahalar,
        'ortasha': sum(bahalar) / len(bahalar)
    }
    bazaǵa.append(student)
    return bazaǵa

def studentlerdi_kórsetiw(baza):
    """Barlıq studentlerdi kórsetiw"""
    for student in baza:
        print(f"Atı: {student['atı']}")
        print(f"Jasі: {student['jasі']}")
        print(f"Ortasha bahası: {student['ortasha']}")
        print("-" * 20)

# Qollanıw
studentler = []
studentler = student_qosıw(studentler, "Ali", 20, [85, 90, 92])
studentler = student_qosıw(studentler, "Ayjan", 19, [95, 88, 91])
studentlerdi_kórsetiw(studentler) 

5. Waqıt konvertaciyası:
def sekund_konvertaciya(sekund):
    """Sekundlardı saatqa, minutqa hám sekundqa aylandırıw"""
    saat = sekund // 3600
    minut = (sekund % 3600) // 60
    qalǵan_sekund = sekund % 60
    
    return f"{saat}s {minut}m {qalǵan_sekund}s"

# Qollanıw
print(sekund_konvertaciya(3665))  # 1s 1m 5s

6. Dizimdi sortlaw hám filtrlew:
def dizim_qayta_islew(dizim):
    """Dizimdi sortlaw hám jup sanların filtrlew"""
    jup_sanlar = list(filter(lambda x: x % 2 == 0, dizim))
    sortlanǵan = sorted(jup_sanlar, reverse=True)
    return sortlanǵan

# Qollanıw
sanlar = [1, 4, 2, 7, 8, 3, 6, 5]
print(dizim_qayta_islew(sanlar))  # [8, 6, 4, 2] 

7. Fayllar menen islew:
def fayl_jazıw(fayl_atı, maǵlıwmat):
    """Faylǵa maǵlıwmat jazıw"""
    with open(fayl_atı, 'w', encoding='utf-8') as f:
        f.write(maǵlıwmat)

def fayl_oqıw(fayl_atı):
    """Fayldan maǵlıwmat oqıw"""
    try:
        with open(fayl_atı, 'r', encoding='utf-8') as f:
            return f.read()
    except FileNotFoundError:
        return "Fayl tabılmadı"

# Qollanıw
fayl_jazıw("test.txt", "Python programmalastırıw tili")
print(fayl_oqıw("test.txt"))

8. Sanı jazıwda kórsetiw:
def san_sóz(san):
    """Sandı sóz túrinde jazıw"""
    birlikler = ["", "bir", "eki", "úsh", "tórt", "bes", "altı", "jeti", "segiz", "toǵız"]
    onlıqlar = ["", "on", "jigirma", "otız", "qırıq", "eliw", "alpıs", "jetpis", "seksen", "toqsan"]
    
    if san < 10:
        return birlikler[san]
    elif san < 100:
        on = san // 10
        bir = san % 10
        return f"{onlıqlar[on]} {birlikler[bir]}".strip()

# Qollanıw
print(san_sóz(45))  # qırıq bes
print(san_sóz(92))  # toqsan eki

9. Kalendardı esaplaw:
from datetime import datetime, timedelta

def kún_qosıw(kún, qosılatuǵın_kún):
    """Berilgen kúnge kún qosıw"""
    kún_datetime = datetime.strptime(kún, "%Y-%m-%d")
    jańa_kún = kún_datetime + timedelta(days=qosılatuǵın_kún)
    return jańa_kún.strftime("%Y-%m-%d")

# Qollanıw
print(kún_qosıw("2024-01-01", 45))  # 2024-02-15

Bul mısallardı másele sheshiwde qollanıw múmkin. Hár bir funkciya óziniń arnawlı wazıypasın orınlaydı hám qayta qollanıw múmkin. Funkciyalardı túrlendirip, parametrlerin ózgertip, jańa funkcionalıqtı qosıp kóriń.
Test
1. Pythonda funkciya qalay járiyalanadı?
A) function name():
B) def name():
C) new function():
D) create name():
Durıs juwap: B
2. Tómendegi funkciyada qanday qátelik bar?
def qosıw(a, b)
    return a + b

A) def sózi nadurıs jazılǵan
B) return ornına print bolıwı kerek
C) Izbe-izlikten keyin : (qos noqat) qoyılmaǵan
D) Parametrler nadurıs berilgen
Durıs juwap: C
3. Tómendegi kodtıń nátiyjesin tabıń:
def sálem(at="Qonaq"):
    return f"Sálem, {at}!"

print(sálem())

A) Sálem
B) Sálem, at!
C) Sálem, Qonaq!
D) Qátelik beredi
Durıs juwap: C
*4. args ne ushın qollanıladı?
A) Gilt sózli argumentlerdi qabıl etiw ushın
B) Bir neshe poziciyalıq argumentlerdi qabıl etiw ushın
C) Tek bir argument qabıl etiw ushın
D) Argumentlerdi filtrlew ushın
Durıs juwap: B
5. Tómendegi kodtıń nátiyjesin tabıń:
def test():
    x = 10
    return x

x = 5
test()
print(x) 

A) 10
B) 5
C) 15
D) Qátelik beredi
Durıs juwap: B
6. Lambda funkciyası haqqında qaysısı durıs?
A) Tek bir ret qollanılatuǵın funkciya
B) Kóp qatarlı funkciya
C) Bir qatarlı anonim funkciya
D) Klasstı járiyalaw usılı
Durıs juwap: C
7. Funkciyada return operatorı ne isleydi?
A) Funkciyadan shıǵıp ketedi
B) Funkciyadan mánisti qaytaradı
C) Funkciyanı qaytadan baslaydı
D) A hám B juwapları durıs
Durıs juwap: D
8. Tómendegi kodtıń nátiyjesin tabıń:
def sanlar(*n):
    return sum(n)

print(sanlar(1,2,3)) 

A) 123
B) 6
C) [1,2,3]
D) Qátelik beredi
Durıs juwap: B
9. Funkciya dokumentaciyası (docstring) qaysı simvollar menen jazıladı?
A) // kommentariya
B) # kommentariya
C) /* */ kommentariya
D) """ """ úsh qos tırnaq
Durıs juwap: D
10. Global ózgeriwshini funkciya ishinde qollanıw ushın ne islew kerek?
A) import global jazıw kerek
B) global gilt sózin qollanıw kerek
C) return arqalı qaytarıw kerek
D) Hesh nárse islew shárt emes
Durıs juwap: B
Juwaplar gilti:
1. B
2. C
3. C
4. B
5. B
6. C
7. D
8. B
9. D
10. B

]]>
bekan Sat, 22 Feb 2025 14:24:10 +0000
15-ámeliy jumıs: Python programmalastırıw tilinde For ciklı https://megaline.uz/index.php?newsid=139 https://megaline.uz/index.php?newsid=139 1. For ciklı haqqında ulıwma túsinik:
For ciklı - belgilenbegen dizimdi (massiv, qatar yamasa basqa iteraciya qılıwǵa bolatuǵın obyektlerdi) adımba-adım aylanıp shıǵıw ushın qollanıladı.
Tiykarǵı sintaksis:
for element in sequence:
    # orınlanatuǵın kodlar

2. For cikliniń qollanılıw usılları:
a) Sanlı diapazon menen islew:
# range() funkciyası járdeminde 0-4 aralıǵındaǵı sanlar
for i in range(5):
    print(i)  # 0, 1, 2, 3, 4 sanların shıǵaradı

b) Dizim (list) elementleri menen islew:
jańlıqlar = ["alma", "almurt", "erik"]
for miywe in jańlıqlar:
    print(miywe) 

c) Qatar (string) elementleri menen islew:
sóz = "Python"
for hárip in sóz:
    print(hárip) 

3. For cikliniń qosımsha imkaniyatları:
a) enumerate() funkciyası - indeks penen birge islew:
qatnasıwshılar = ["Ali", "Ayjan", "Berdaq"]
for index, at in enumerate(qatnasıwshılar):
    print(f"{index + 1}-qatnasıwshı: {at}")

b) zip() funkciyası - bir neshe dizimdi birge islew:
atlar = ["Ali", "Ayjan"]
jaslar = [20, 22]
for at, jas in zip(atlar, jaslar):
    print(f"{at} {jas} jasta")

4. Ámeliy bólim:
1-másele: 1 den 10 ǵa shekem bolǵan sanlar kvadratın esaplaw:
for san in range(1, 11):
    kvadrat = san ** 2
    print(f"{san} sanınıń kvadratı: {kvadrat}")

2-másele: Dizimniń jup sanların tabıw:
sanlar = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
jup_sanlar = []

for san in sanlar:
    if san % 2 == 0:
        jup_sanlar.append(san)

print("Jup sanlar:", jup_sanlar) 

3-másele: Sózler uzınlıǵın esaplaw:
sózler = ["Python", "Programma", "Kompyuter"]
for sóz in sózler:
    uzınlıq = len(sóz)
    print(f"{sóz} sóziniń uzınlıǵı: {uzınlıq}")

5. Break hám continue operatorları:
Break - cikldi toqtatıw:
for i in range(1, 6):
    if i == 3:
        break
    print(i)  # 1, 2 sanların shıǵaradı

Continue - cikldiń keyingi qadam ótiwi:
for i in range(1, 6):
    if i == 3:
        continue
    print(i)  # 1, 2, 4, 5 sanların shıǵaradı

Bul teoriyalıq hám ámeliy materiallar For cikliniń tiykarǵı túsiniklerin qamtıp aladı.

ÁMELIY MÍSALLAR
1-mısal: Summanı esaplaw
# 1 den 10 ǵa shekem sanlar qosındısın esaplaw
qosındı = 0
for i in range(1, 11):
    qosındı += i
print(f"1 den 10 ǵa shekem sanlar qosındısı: {qosındı}")  # Nátiyje: 55

2-mısal: Faktorial esaplaw
# 5 faktorialın esaplaw (5!)
san = 5
faktorial = 1
for i in range(1, san + 1):
    faktorial *= i
print(f"{san}! = {faktorial}")  # Nátiyje: 120

3-mısal: Dizimdi filtrlaw
# Tek sanlardı tabıw
sanlar = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
tek_sanlar = []

for san in sanlar:
    if san % 2 != 0:
        tek_sanlar.append(san)
print("Tek sanlar:", tek_sanlar)  # Nátiyje: [1, 3, 5, 7, 9] 

4-mısal: Qatar menen islew
# Sózdi teris jazıw
sóz = "Qaraqalpaqstan"
teris_sóz = ""

for hárip in sóz:
    teris_sóz = hárip + teris_sóz
print(f"Teris sóz: {teris_sóz}")  # Nátiyje: natsqaplaqaraQ

5-mısal: Keste jasaw
# 5 ke kóbeytiw kestesi
san = 5
for i in range(1, 11):
    nátiyje = san * i
    print(f"{san} x {i} = {nátiyje}")

6-mısal: Dizimlerdi salıstırıw
# Eki dizimniń ulıwma elementlerin tabıw
dizim1 = [1, 2, 3, 4, 5]
dizim2 = [4, 5, 6, 7, 8]
ulıwma_elementler = []

for element in dizim1:
    if element in dizim2:
        ulıwma_elementler.append(element)
print("Ulıwma elementler:", ulıwma_elementler)  # Nátiyje: [4, 5] 

7-mısal: Bahalardı esaplaw
# Oqıwshılardıń ortasha bahası
oqıwshılar = {
    "Ali": 85,
    "Ayjan": 92,
    "Berdaq": 78,
    "Gúlnaz": 95
}

jámi_baha = 0
for baha in oqıwshılar.values():
    jámi_baha += baha

ortasha_baha = jámi_baha / len(oqıwshılar)
print(f"Ortasha baha: {ortasha_baha}")  # Nátiyje: 87.5

8-mısal: Pattern jaratıw
# Juldızshalar menen úshmúyesh islew
qatarlar = 5
for i in range(qatarlar):
    print('*' * (i + 1))
# Nátiyje:
# *
# **
# ***
# ****
# *****

9-mısal: Sózler statistikası
# Háriplerdi sanaw
tekst = "Alpamıs dástanı"
hárip_sanı = {}

for hárip in tekst.lower():
    if hárip.isalpha():  # tek háripler
        if hárip in hárip_sanı:
            hárip_sanı[hárip] += 1
        else:
            hárip_sanı[hárip] = 1

print("Háripler statistikası:", hárip_sanı) 

10-mısal: Sanlar tablicası
# 3x3 tablicada sanlar kórsetiw
for i in range(1, 4):
    qatar = ""
    for j in range(1, 4):
        san = i * j
        qatar += f"{san}\t"
    print(qatar) 

Bul mısallardı ózińiz orınlap kóriń hám olardı túrlendiriń. Mısalı:
• Sanlar diapazonın ózgertiń
• Jańa shártler qosıń
• Basqa dizimler menen sınap kóriń
• Pattern ólshemin ózgertiń
Test
1. For ciklinıń tiykarǵı wazıypası ne?
A) Sanlardı qosıw
B) Tek sanlar menen islew
C) Dizimdi yamasa izbe-izlikti adımba-adım aylanıp shıǵıw
D) Maǵlıwmatlardı saqlaw
Durıs juwap: C
2. Tómendegi kodtıń nátiyjesin tabıń:
for i in range(3):
    print(i) 

A) 1, 2, 3
B) 0, 1, 2
C) 1, 2
D) 0, 1, 2, 3
Durıs juwap: B
3. range(1, 5) funkciyası qaysı sanlar diapazonın qaytaradı?
A) 1, 2, 3, 4, 5
B) 1, 2, 3, 4
C) 0, 1, 2, 3, 4
D) 2, 3, 4, 5
Durıs juwap: B
4. Tómendegi kodta qátelik bar ma?
for x in ["alma", "almurt", "erik"]:
    print(x) 

A) Awa, for ciklı tek sanlar menen isleydi
B) Awa, qawsırmalar durıs emes
C) Yaq, kod durıs isleydi
D) Awa, print funkciyası durıs emes jazılǵan
Durıs juwap: C
5. break operatorı ne ushın qollanıladı?
A) Cikldi dawam etiw ushın
B) Cikldi toqtatıw ushın
C) Cikldi qaytadan baslaw ushın
D) Cikldi pauzaǵa qoyıw ushın
Durıs juwap: B
6. continue operatorı ne isleydi?
A) Cikldi toqtatadı
B) Cikldiń basına qaytadı
C) Cikldiń aǵımdaǵı iteraciyasın ótkizip jiberedi hám keyingisine ótedi
D) Cikldi qaytalap orınlaydı
Durıs juwap: C
7. Tómendegi kodtıń nátiyjesin tabıń:
sum = 0
for i in range(1, 4):
    sum += i
print(sum) 

A) 3
B) 6
C) 10
D) 4
Durıs juwap: B
8. enumerate() funkciyası ne ushın qollanıladı?
A) Dizimdi sortlaw ushın
B) Dizim elementlerin sanaw ushın
C) Dizim elementlerin hám olardıń indekslerin birge alıw ushın
D) Dizimdi ózgertiw ushın
Durıs juwap: C
9. For ciklinde else blokı qashan orınlanadı?
A) Cikl hesh qashan orınlanbaǵanda
B) Cikl bir ret orınlanǵanda
C) Cikl break operatorısız tolıq orınlanǵanda
D) Cikl qaytalanatuǵın jaǵdayda
Durıs juwap: C
10. Tómendegi kodtıń nátiyjesin tabıń:
for i in "Python":
    if i == "h":
        continue
    print(i, end="")

A) Python
B) Pyton
C) Pythn
D) Pton
Durıs juwap: B
Juwaplar gilti:
1. C
2. B
3. B
4. C
5. B
6. C
7. B
8. C
9. C
10. B


]]>
bekan Sat, 22 Feb 2025 14:16:11 +0000
14-ámeliy jumıs: Python programmalastırıw tilinde While ciklı https://megaline.uz/index.php?newsid=138 https://megaline.uz/index.php?newsid=138 TEORIYALIQ BÓLIM:
1. While ciklı haqqında túsinik:
While ciklı - belgili bir shárt orınlanǵansha kodtı qayta-qayta orınlaw ushın qollanıladı. Cikl shártiniń nátiyjesi False bolǵanda toqtaydı.
2. While ciklınıń sintaksisi:
while shárt:
    # orınlanatuǵın kodlar

3. While ciklınıń tiykarǵı elementleri:
• Baslanatuǵın shárt
• Cikl denesi
• Cikl sanawıshı
• Toqtaw shártleri
4. While ciklında qollanılatuǵın operatorlar:
• break - cikldan shıǵıw
• continue - cikldiń keyingi adım(iteraciya)ına ótiw
• else - cikl juwmaqlanǵannan soń orınlanadı
ÁMELIY BÓLIM:
1. 1 den 10 ǵa shekem sanlardı shıǵarıw:
san = 1
while san <= 10:
    print(san)
    san += 1

2. Jup sanlarǵa esaplaw:
san = 0
summa = 0
while san <= 100:
    summa += san
    san += 2
print(f"0 den 100 ge shekem jup sanlar summası: {summa}")

3. Parol tekseriwshi:
durıs_parol = "1234"
urunıw = 3

while urunıw > 0:
    parol = input("Paroldi kiritiń: ")
    if parol == durıs_parol:
        print("Sistemag'a kirdińiz!")
        break
    else:
        urunıw -= 1
        print(f"Qate parol. Qalg'an urunıwlar: {urunıw}")
else:
    print("Siz bloklang'an!") 

4. San tabıw oyını:
import random

jasırın_san = random.randint(1, 100)
tabılmadı = True
urunıwlar = 0

while tabılmadı:
    shama = int(input("1-100 aralıǵında san aytıń: "))
    urunıwlar += 1
    
    if shama < jasırın_san:
        print("Úlkenirek san aytıń")
    elif shama > jasırın_san:
        print("Kishirek san aytıń")
    else:
        print(f"Qutlıqlayman! {urunıwlar} urınıwda taptıńız!")
        tabılmadı = False

5. ATM simulyatorı:
balance = 1000000

while True:
    print("\n1. Balansımdı kóriw")
    print("2. Aqsha alıw")
    print("3. Aqsha salıw")
    print("4. Shıǵıw")
    
    tańlaw = input("Ámeldi tańlań (1-4): ")
    
    if tańlaw == '1':
        print(f"Siziń balansıńız: {balance} sum")
    elif tańlaw == '2':
        summa = float(input("Summani kiritiń: "))
        if summa > balance:
            print("Jetkilisiz ǵárejet!")
        else:
            balance -= summa
            print("Aqsha alındı")
    elif tańlaw == '3':
        summa = float(input("Summani kiritiń: "))
        balance += summa
        print("Aqsha salındı")
    elif tańlaw == '4':
        print("Xosh bolıńız!")
        break
    else:
        print("Nadurıs tańlaw!") 

6. Faktorialdı esaplaw:
san = int(input("Sandı kiritiń: "))
faktoriyal = 1
i = 1

while i <= san:
    faktoriyal *= i
    i += 1

print(f"{san}! = {faktoriyal}")

7. Fibonacchi izbe-izligi:
n = int(input("Neshe san shıǵarıw kerek: "))
a, b = 0, 1
i = 0

while i < n:
    print(a, end=' ')
    a, b = b, a + b
    i += 1

8. Kiritilgen teksti tekseriw:
while True:
    tekst = input("Tekst kiritiń (shıǵıw ushın 'exit' jazıń): ")
    
    if tekst.lower() == 'exit':
        break
    
    if len(tekst) < 3:
        print("Tekst júdá qısqa!")
        continue
    
    print(f"Kiritilgen tekst uzınlıg'ı: {len(tekst)}") 

9. Orta arifmetikalıq esaplaw:
summa = 0
san_muǵdarı = 0

while True:
    san = input("San kiritiń (toqtaw ushın 'stop' jazıń): ")
    
    if san.lower() == 'stop':
        break
    
    summa += float(san)
    san_muǵdarı += 1

if san_muǵdarı > 0:
    orta = summa / san_muǵdarı
    print(f"Orta arifmetikalıq: {orta}")

10. Sandaǵı cifrlar summası:
san = int(input("San kiritiń: "))
summa = 0

while san > 0:
    summa += san % 10
    san //= 10

print(f"Cifrlardıń summasi: {summa}")


QOSÍMSHA ESLETPELER:
1. While ciklın paydalanǵanda:
• Cikl shártin durıs qoyıw
• Sheksiz cikldan saqlanıw
• Sanawıshtı durıs ózgertiw
2. Qáwipsizlik:
• Sheksiz cikllardan saqlanıw
• break hám continue operatorların abaylap qollanıw
• Cikl shártin tekserip turıw
3. Optimallastırıw:
• Cikl ishinde awır esaplawlardı azaytıw
• Kerekli ózgermelerdi cikl sırtında jariyalaw
• Cikl shártin ápiwayı etip jazıw

Test
1. While ciklı qanday jaǵdayda isleydi?
a) Shárt durıs bolǵanda
b) Shárt nadurıs bolǵanda
c) Hár waqıt
d) Tek bir ret
2. While ciklında shárt qay jerde tekseriledi?
a) Cikl baslanǵanda
b) Cikl ortasında
c) Cikl aqırında
d) Cikl sırtında
3. While ciklınan shıǵıw ushın qaysı operatordı qollanamız?
a) continue
b) pass
c) break
d) exit
4. Eger While ciklınıń shártı hesh qashan ózgermese ne boladı?
a) Cikl bir ret isleydi
b) Cikl sheksiz isleydi
c) Cikl hesh islemeydi
d) Qáte shıǵadı
5. While ciklında sanawıshtı qanday ózgertiwge boladı?
a) san += 1
b) san++
c) san = san + 1
d) a hám c juwapları durıs
6. Tómendegi kodtıń nátiyjesin anıqlań:
i = 0
while i &lt; 5:
    print(i)
    i += 1

a) 0 1 2 3 4
b) 1 2 3 4 5
c) 0 1 2 3 4 5
d) 1 2 3 4
7. While ciklın For ciklına almastırıwǵa bola ma?
a) Awa, barlıq jaǵdaylarda
b) Yaq, hesh qashan
c) Kóp jaǵdaylarda, biraq barlıq emes
d) Tek sanlar menen islegen jaǵdayda
8. Qaysı jaǵdayda While ciklı For ciklınan qolaylıraq?
a) Qashan islewi belgisiz bolǵanda
b) Anıq sanı bar elementler dizimin qayta islew kerek bolǵanda
c) Hár bir element ushın birdey ámel orınlaw kerek bolǵanda
d) Hesh qashan
9. While ciklında else blokı ne ushın qollanıladı?
a) Cikl shártı nadurıs bolǵanda
b) Cikl normal tamamlanǵanda (break siz)
c) Cikl break penen toqtaǵanda
d) Cikl ishinde qáte júz bergende
10. Tómendegi kodtıń nátiyjesin anıqlań:
x = 0
while x &lt; 3:
    x += 1
print(x) 

a) 2
b) 3
c) 4
d) 0
Juwaplar:
1. a, 2. a, 3. c, 4. b, 5. d, 6. a, 7. c, 8. a, 9. b, 10. b


]]>
bekan Sat, 22 Feb 2025 14:11:08 +0000
13-ámeliy jumıs: Python programmalastırıw tilinde If...Else shártleri https://megaline.uz/index.php?newsid=137 https://megaline.uz/index.php?newsid=137 1. Teoriyalıq bólim
If...Else shártleri - programmanıń belgilenbegen shártler tiykarında hár qıylı háreketlerdi orınlawına múmkinshilik beredi.
Tiykarǵı strukturası:
if shárt:
    # shárt durıs bolǵanda orınlanadı
else:
    # shárt nadurıs bolǵanda orınlanadı

Qosımsha elif strukturası:
if shárt1:
    # shárt1 durıs bolǵanda
elif shárt2:
    # shárt2 durıs bolǵanda
else:
    # hesh qaysı shárt durıs bolmaǵanda

2. Salıstırıw operatorları
# Teńlik: ==
# Teń emes: !=
# Úlken: >
# Kishi: <
# Úlken yamasa teń: >=
# Kishi yamasa teń: <=
# Obyekttiń bar ekenin tekeriw: in
# Logikalıq AND: and
# Logikalıq OR: or
# Logikalıq NOT: not

3. Ámeliy mısallar
1. Ápiwayı jası boyınsha tekseriw:
jas = 18
if jas >= 18:
    print("Sizge ruqsat etiledi")
else:
    print("Sizge ruqsat etilmeydi")

2. Bahalar boyınsha bahalaw:
baha = 85

if baha >= 90:
    nátiyshe = "Ayırıqsha"
elif baha >= 80:
    nátiyshe = "Jaqsı"
elif baha >= 70:
    nátiyshe = "Qanaatlandırarlı"
else:
    nátiyshe = "Qanaatlandırarsız"

print(f"Siziń nátiyjeńiz: {nátiyje}")

3. Login sisteması:
durıs_login = "admin"
durıs_parol = "12345"

login = input("Login: ")
parol = input("Parol: ")

if login == durıs_login and parol == durıs_parol:
    print("Sistemanıń ishinde!")
else:
    print("Login yamasa parol nadurıs!") 

4. Sanlar menen islewde:
san = int(input("San kiritiń: "))

if san > 0:
    print("Oń san")
elif san < 0:
    print("Teris san")
else:
    print("Nol")

if san % 2 == 0:
    print("Jup san")
else:
    print("Taq san")

5. Kompleks shárt:
jası = 25
tájiriybesi = 3
bilimi = "joqarı"

if jası >= 18 and (tájiriybesi >= 3 or bilimi == "joqarı"):
    print("Jumısqa alındıńız!")
else:
    print("Keshiriń, siz talaplarga juwap bermeysiz")

6. Menyu sisteması:
print("Menyunı tańlań:")
print("1. Qosıw")
print("2. Alıw")
print("3. Kóbeytiw")
print("4. Bóliw")

tańlaw = input("Tańlawıńızdı kiritiń (1-4): ")

if tańlaw in ["1", "2", "3", "4"]:
    san1 = float(input("Birinshi san: "))
    san2 = float(input("Ekinshi san: "))
    
    if tańlaw == "1":
        nátiyshe = san1 + san2
    elif tańlaw == "2":
        nátiyshe = san1 - san2
    elif tańlaw == "3":
        nátiyshe = san1 * san2
    else:
        if san2 != 0:
            nátiyshe = san1 / san2
        else:
            nátiyshe = "Nolge bóliw múmkin emes"
            
    print(f"Nátiyshe: {nátiyshe}")
else:
    print("Nadurıs tańlaw!") 

7. Waqıt boyınsha sálemlesiwdi anıqlaw:
import datetime

hazirgi_waqıt = datetime.datetime.now().hour

if 5 <= hazirgi_waqıt < 12:
    sálem = "Qayırlı tań!"
elif 12 <= hazirgi_waqıt < 17:
    sálem = "Kúnińız kewilli ótsin!"
elif 17 <= hazirgi_waqıt < 22:
    sálem = "Kesh jarıq!"
else:
    sálem = "Jaqsı tún!"

print(sálem) 

8. Jasına qarap bilet bahasın esaplaw:
def bilet_bahasın_esaplaw(jas):
    tiykarǵı_baha = 10000
    
    if jas <= 6:
        baha = 0  # 6 jasqa shekem biypul
    elif jas <= 12:
        baha = tiykarǵı_baha * 0.5  # 50% jeńillik
    elif jas >= 65:
        baha = tiykarǵı_baha * 0.7  # 30% jeńillik
    else:
        baha = tiykarǵı_baha
        
    return baha

jas = int(input("Jasıńızdı kiritiń: "))
baha = bilet_bahasın_esaplaw(jas)
print(f"Bilet bahasıı: {baha} sum")

9. Parol kúshin tekseriw:
def parol_kúshin_tekeriw(parol):
    uzınlıǵı = len(parol)
    úlken_hárip = any(x.isupper() for x in parol)
    kishi_hárip = any(x.islower() for x in parol)
    san_bar = any(x.isdigit() for x in parol)
    
    if uzınlıǵı < 8:
        return "Ápiwayı: uzınlıǵı 8 den kishi"
    elif úlken_hárip and kishi_hárip and san_bar:
        return "Kúshli parol"
    elif (úlken_hárip or kishi_hárip) and san_bar:
        return "Orta kúshlikte"
    else:
        return "Ápiwayı parol"

parol = input("Parol kiritiń: ")
print(parol_kúshin_tekeriw(parol)) 

10. Jıl máwsimin anıqlaw:
ay = int(input("Aydı kiritiń (1-12): "))

if ay in [12, 1, 2]:
    máwsim = "Qıs"
elif ay in [3, 4, 5]:
    máwsim = "Báhár"
elif ay in [6, 7, 8]:
    máwsim = "Jaz"
elif ay in [9, 10, 11]:
    máwsim = "Gúz"
else:
    máwsim = "Nadurıs ay nomeri"

print(f"Bul ay {máwsim} máwsimine tiyisli")

Bul mısallarda if...else shártleriniń hár túrli qollanılıwı kórsetilgen. Hár bir mısal real máselelerdi sheshiwge arnalǵan hám shártlerdiń hár qıylı múmkinshiliklerinen paydalanılǵan.

ÁMELIY MÍSALLAR:
1. Paydalanıwshı kirgizgen sannıń jup yamasa taq ekenin anıqlaw:
def san_tekeriw():
    san = int(input("San kiritiń: "))
    
    if san % 2 == 0:
        print(f"{san} - jup san")
    else:
        print(f"{san} - taq san")

san_tekeriw()

2. Úsh sannıń eń úlkenin tabıw:
def eń_úlkenin_tabıw():
    san1 = float(input("Birinshi sandı kiritiń: "))
    san2 = float(input("Ekinshi sandı kiritiń: "))
    san3 = float(input("Úshinshi sandı kiritiń: "))
    
    if san1 >= san2 and san1 >= san3:
        eń_úlken = san1
    elif san2 >= san1 and san2 >= san3:
        eń_úlken = san2
    else:
        eń_úlken = san3
    
    print(f"Eń úlken san: {eń_úlken}")

eń_úlkenin_tabıw()

3. Oqıwshınıń bahasın hárip penen belgilew:
def baha_belgilew():
    ball = float(input("Ballıńızdı kiritiń (0-100): "))
    
    if ball >= 90:
        hárip = 'A'
    elif ball >= 80:
        hárip = 'B'
    elif ball >= 70:
        hárip = 'C'
    elif ball >= 60:
        hárip = 'D'
    else:
        hárip = 'F'
    
    print(f"Siziń bahańız: {hárip}")

baha_belgilew()

4. Kalkulyator:
def kalkulyator():
    print("\nÁmeldi tańlań:")
    print("1. Qosıw (+)")
    print("2. Alıw (-)")
    print("3. Kóbeytiw (*)")
    print("4. Bóliw (/)")
    
    ámel = input("Ámeldi kiritiń (1-4): ")
    
    san1 = float(input("Birinshi san: "))
    san2 = float(input("Ekinshi san: "))
    
    if ámel == '1':
        nátiyshe = san1 + san2
        belgi = '+'
    elif ámel == '2':
        nátiyshe = san1 - san2
        belgi = '-'
    elif ámel == '3':
        nátiyshe = san1 * san2
        belgi = '*'
    elif ámel == '4':
        if san2 != 0:
            nátiyshe = san1 / san2
            belgi = '/'
        else:
            print("Qátelik: Nolge bóliw múmkin emes!")
            return
    else:
        print("Nadurıs ámel tańlandı!")
        return
    
    print(f"{san1} {belgi} {san2} = {nátiyshe}")

kalkulyator()

5. ATM operaciyaları:
def atm():
    balance = 1000000  # Dáslepki balans
    
    while True:
        print("\nATM menyusı:")
        print("1. Balansımdı kóriw")
        print("2. Aqsha sheshiw")
        print("3. Aqsha salıw")
        print("4. Shıǵıw")
        
        tańlaw = input("Tańlawıńızdı kiritiń (1-4): ")
        
        if tańlaw == '1':
            print(f"Siziń balansıńız: {balance} sum")
        
        elif tańlaw == '2':
            summa = float(input("Qansha summa alasız: "))
            if summa > balance:
                print("Balansıńızda jetkiliksiz ǵárejet!")
            elif summa <= 0:
                print("Nadurıs summa!")
            else:
                balance -= summa
                print(f"{summa} sum alındı")
                print(f"Qalǵan balans: {balance} sum")
        
        elif tańlaw == '3':
            summa = float(input("Qansha summa salasız: "))
            if summa <= 0:
                print("Nadurıs summa!")
            else:
                balance += summa
                print(f"{summa} sum salındı")
                print(f"Házirgi balans: {balance} sum")
        
        elif tańlaw == '4':
            print("Xosh bolıńız!")
            break
        
        else:
            print("Nadurıs tańlaw! Qaytadan urınıp kóriń.")

atm()

6. Login sisteması:
def login_sistema():
    paydalanıwshılar = {
        "admin": "admin123",
        "user": "pass123"
    }
    
    urunıw = 3
    
    while urunıw > 0:
        login = input("Login: ")
        parol = input("Parol: ")
        
        if login in paydalanıwshılar:
            if paydalanıwshılar[login] == parol:
                print("Sistemanıń ishinde!")
                return True
            else:
                urunıw -= 1
                print(f"Nadurıs parol. Qalǵan urunıwlar: {urunıw}")
        else:
            urunıw -= 1
            print(f"Bunday login tabılmadı. Qalǵan urunıwlar: {urunıw}")
    
    print("Siz bloklandıńız!")
    return False

login_sistema()

7. Temperatura konverteri:
def temperatura_konverter():
    print("\nTańlań:")
    print("1. Celsius -> Fahrenheit")
    print("2. Fahrenheit -> Celsius")
    
    tańlaw = input("Tańlawıńız (1/2): ")
    
    if tańlaw == '1':
        celsius = float(input("Celsius gradusın kiritiń: "))
        fahrenheit = (celsius * 9/5) + 32
        print(f"{celsius}°C = {fahrenheit}°F")
    
    elif tańlaw == '2':
        fahrenheit = float(input("Fahrenheit gradusın kiritiń: "))
        celsius = (fahrenheit - 32) * 5/9
        print(f"{fahrenheit}°F = {celsius}°C")
    
    else:
        print("Nadurıs tańlaw!")

temperatura_konverter()

8. Oyın: San tabıw:
import random

def san_tabıw_oyını():
    jasırın_san = random.randint(1, 100)
    urunıwlar = 0
    
    print("1 den 100 ge shekem san oyladım!")
    
    while True:
        shama = int(input("Sandı tawıp kóriń: "))
        urunıwlar += 1
        
        if shama < jasırın_san:
            print("Úlkenrek san ayıtıń")
        elif shama > jasırın_san:
            print("Kishirek san ayıtıń")
        else:
            print(f"Qutlıqlayman! {urunıwlar} urunıwda taptıńız!")
            break

san_tabıw_oyını()

9. Waqıt formatın ózgertiw:
def waqıt_formatin_ózgertiw():
    waqıt = input("Waqıttı kiritiń (24 saatlıq format, mısalı 14:30): ")
    
    try:
        saat, minut = map(int, waqıt.split(':'))
        
        if 0 <= saat <= 23 and 0 <= minut <= 59:
            if saat == 0:
                jańa_saat = 12
                belgi = 'AM'
            elif saat < 12:
                jańa_saat = saat
                belgi = 'AM'
            elif saat == 12:
                jańa_saat = 12
                belgi = 'PM'
            else:
                jańa_saat = saat - 12
                belgi = 'PM'
            
            print(f"{waqıt} = {jańa_saat:02d}:{minut:02d} {belgi}")
        else:
            print("Nadurıs waqıt formatı!")
    
    except:
        print("Nadurıs format! HH:MM formatında kiritiń")

waqıt_formatin_ózgertiw()

10. Qurallı qol oyını:
def qurallı_qol():
    variantlar = ['tas', 'qaǵaz', 'qayshı']
    kompyuter_ball = 0
    oyınshı_ball = 0
    
    while True:
        print(f"\nEsap - Siz: {oyınshı_ball}, Kompyuter: {kompyuter_ball}")
        print("\nTańlań:")
        print("1. Tas")
        print("2. Qaǵaz")
        print("3. Qayshı")
        print("4. Oyındı tamamlaw")
        
        tańlaw = input("Tańlawıńız (1-4): ")
        
        if tańlaw == '4':
            print(f"\nAqırǵı esap - Siz: {oyınshı_ball}, Kompyuter: {kompyuter_ball}")
            if oyınshı_ball > kompyuter_ball:
                print("Siz jeńdińiz!")
            elif oyınshı_ball < kompyuter_ball:
                print("Kompyuter jeńdi!")
            else:
                print("Teń!")
            break
        
        if tańlaw not in ['1', '2', '3']:
            print("Nadurıs tańlaw!")
            continue
        
        oyınshı = variantlar[int(tańlaw)-1]
        kompyuter = random.choice(variantlar)
        
        print(f"\nSiz: {oyınshı}")
        print(f"Kompyuter: {kompyuter}")
        
        if oyınshı == kompyuter:
            print("Teń!")
        elif ((oyınshı == 'tas' and kompyuter == 'qayshı') or
              (oyınshı == 'qaǵaz' and kompyuter == 'tas') or
              (oyınshı == 'qayshı' and kompyuter == 'qaǵaz')):
            print("Siz utdıńız!")
            oyınshı_ball += 1
        else:
            print("Kompyuter uttı!")
            kompyuter_ball += 1

qurallı_qol()

Bul mısallardıń hár biri if...else shártleriniń praktikalıq qollanılıwın kórsetedi. Hár bir mısaldı ózińiz orınlap kórip, kodtı ózgertiw arqalı úyreniwińizge boladı.


TEST
1. Tómendegi kodtıń nátiyjesinde ne shıǵadı?
x = 5
if x > 3:
    print("A")
else:
    print("B")

a) A
b) B
c) 5
d) Qátelik beredi
Durıs juwap: a) A
2. Python tilinde teńlikti tekseriw ushın qaysı operator qollanıladı?
a) =
b) ==
c) ===
d) !=
Durıs juwap: b) ==
3. Tómendegi shártte qaysı qátelik bar?
if x = 10:
    print("On")

a) if sóziniń jazılıwında
b) Útirlerdegi qátelik
c) Teńlik operatorı nadurıs (= ornına == kerek)
d) print funkciyasında
Durıs juwap: c) Teńlik operatorı nadurıs (= ornına == kerek)
4. elif ne ushın qollanıladı?
a) Birinshi shárt durıs bolǵanda
b) Basqa shártlerdi tekeriw ushın
c) Programmanı toqtatıw ushın
d) Cikldı baslaw ushın
Durıs juwap: b) Basqa shártlerdi tekeriw ushın
5. and operatorı qashan True qaytaradı?
a) Eki shárt te True bolǵanda
b) Bir shárt True bolǵanda
c) Eki shárt te False bolǵanda
d) Tek birinshi shárt True bolǵanda
Durıs juwap: a) Eki shárt te True bolǵanda
6. Tómendegi kodtıń nátiyjesinde ne shıǵadı?
x = 10
y = 20
if x > y:
    print("X úlken")
elif x == y:
    print("Teń")
else:
    print("Y úlken")

a) X úlken
b) Teń
c) Y úlken
d) Hesh nárse shıqpaydı
Durıs juwap: c) Y úlken
7. or operatorı qashan False qaytaradı?
a) Tek bir shárt False bolǵanda
b) Eki shárttiń biri True bolǵanda
c) Eki shárt te False bolǵanda
d) Eki shárt te True bolǵanda
Durıs juwap: c) Eki shárt te False bolǵanda
8. Qaysı jazıw durıs?
a) if(x > 0)
b) if x > 0:
c) if x > 0 then
d) if x > 0 {
Durıs juwap: b) if x > 0:
9. Tómendegi kodtıń nátiyjesinde ne shıǵadı?
x = 5
if x > 0:
    if x < 10:
        print("A")
    else:
        print("B")
else:
    print("C")

a) A
b) B
c) C
d) AB
Durıs juwap: a) A
10. not operatorı ne isledi?
a) Shárttiń mánisin terisine ózgertedi
b) Eki shártti biriktiredi
c) Shártlerdi salıstıradı
d) Programmanı toqtatadı
Durıs juwap: a) Shárttiń mánisin terisine (keri) ózgertedi
Qosımsha túsindiriw:
1-soraw: x = 5 bolǵanlıqtan, x > 3 shárti durıs (5 úshten úlken) hám "A" jazıwı shıǵadı.
2-soraw: Python tilinde bir teńlik belgisi (=) mánisti belgilew ushın, eki teńlik belgisi (==) salıstırıw ushın qollanıladı.
3-soraw: if shártinde teńlikti tekseriw ushın = emes, al == operatorı qollanılıwı kerek.
4-soraw: elif - basqa qosımsha shártlerdi tekseriw ushın qollanıladı, if hám else arasında birneshe elif bolıwı múmkin.
5-soraw: and logikalıq operatorı eki tárepindegi shártler de True bolǵanda ǵana True qaytaradı.
6-soraw: x = 10 hám y = 20 bolǵanda, y úlken bolǵanlıqtan "Y úlken" jazıwı shıǵadı.
7-soraw: or operatorı tek eki tárepindegi shártler de False bolǵanda ǵana False qaytaradı.
8-soraw: Python tilinde if shártinen keyin eki noqat (:) qoyıladı hám járdemshi kodlar abzac penen jazıladı.
9-soraw: Ishki (nested) if shártleri bar, x = 5 bolǵanda eki shárt te durıs hám "A" jazıwı shıǵadı.
10-soraw: not operatorı logikalıq mánisti kerisine ózgertedi: True bolsa False, False bolsa True qaytaradı.]]>
bekan Sat, 22 Feb 2025 14:06:07 +0000
12-ámeliy jumıs: Python programmalastırıw tilinde sózlikler (dictionaries) https://megaline.uz/index.php?newsid=136 https://megaline.uz/index.php?newsid=136 1. Sózlikler haqqında ulıwma túsinik
Sózlik - bul juplıqlar toplamı bolıp, hárbir element gilt-mánilik (key-value) juplıǵınan ibarat. Sózliktiń tiykarǵı ózgeshelikleri:
• Gilt unikal bolıwı kerek
• Mánilik hár qanday tipte bolıwı múmkin
• Sózlikler ózgeriwshi (mutable)
• Gilt-mánilik juplıqları tártipsiz saqlanadı
2. Sózlik jaratıw usılları
# 1-usıl: Bos sózlik
sozlik1 = {}
sozlik2 = dict()

# 2-usıl: Mánis berip jaratıw
student = {
    "atı": "Azamat",
    "jası": 20,
    "kurs": 2
}
# 3-usıl: dict() funkciyası járdeminde
student2 = dict(atı="Gúlnaz", jası=19, kurs=1)

3. Sózlik penen islewdiń tiykarǵı operaciyaları
# Sózlikke element qosıw
student["telefon"] = "+998901234567890"

# Elementti ózgertiw
student["jası"] = 21

# Elementti óshiriw
del student["telefon"]

# Elementti alıw
jası = student["jası"]
# yamasa
jası = student.get("jası")  # get() qáwipsizirek, sebebi gilt tawılmasa None qaytaradı

# Giltlerdi alıw
giltler = student.keys()

# Mánislerdi alıw
manisler = student.values()

# Gilt-mánilik juplıqların alıw
juplıqlar = student.items()

4. Ámeliy máseleler
1-másele: Studentler dizimin sózlik járdeminde basqarıw
# Studentler dizimin saqlaw ushın sózlik
studentler = {}

# Student qosıw funkciyası
def student_qosıw(id, atı, kurs):
    studentler[id] = {
        "atı": atı,
        "kurs": kurs
    }

# Student haqqında maǵlıwmat alıw
def student_koriw(id):
    if id in studentler:
        return studentler[id]
    return "Student tabılmadı"

# Studentti óshiriw
def student_oshiriw(id):
    if id in studentler:
        del studentler[id]
        return "Student óshirildi"
    return "Student tabılmadı"

# Testlew
student_qosıw(1, "Azamat", 2)
student_qosıw(2, "Gúlnaz", 1)

print(student_koriw(1))
print(student_koriw(2))
print(student_oshiriw(1))

2-másele: Telefon knijkası
telefon_knijka = {}

def kontakt_qosıw(atı, nomer):
    telefon_knijka[atı] = nomer

def kontakt_izlew(atı):
    return telefon_knijka.get(atı, "Kontakt tabılmadı")

def barlıq_kontaktlar():
    for atı, nomer in telefon_knijka.items():
        print(f"{atı}: {nomer}")

# Testlew
kontakt_qosıw("Azamat", "+998901234567")
kontakt_qosıw("Gúlnaz", "+998907654321")

print(kontakt_izlew("Azamat"))
print("Barlıq kontaktlar:")
barlıq_kontaktlar()

5. Qosımsha metodlar
sozlik = {"a": 1, "b": 2}

# clear() - sózlikti tazalaw
sozlik.clear()

# copy() - sózliktiń kóshirmesin jaratıw
jan_sozlik = sozlik.copy()

# update() - sózlikti basqa sózlik penen biriktiriw
sozlik.update({"c": 3, "d": 4})

# setdefault() - gilt bolmasa, default mánisti qosıw
man = sozlik.setdefault("e", 5)

ÁMELIY MÍSALLAR
1. Oqıwshınıń bahaların esaplaw sisteması:
oqıwshı = {
    "atı": "Alisher",
    "klass": 9,
    "pánler": {
        "matematika": [5, 4, 5, 4],
        "fizika": [4, 5, 4, 5],
        "informatika": [5, 5, 5, 4]
    }
}

def orta_baha_esaplaw(bahalar):
    return sum(bahalar) / len(bahalar)

# Hárbir pán boyınsha orta bahanı esaplaw
for pán, bahalar in oqıwshı["pánler"].items():
    orta_baha = orta_baha_esaplaw(bahalar)
    print(f"{pán}: {orta_baha}")

2. Dúkan tovarlardı basqarıw sisteması:
tovarlar = {
    "alma": {"baha": 12000, "muǵdar": 50},
    "banan": {"baha": 25000, "muǵdar": 30},
    "apelsin": {"baha": 15000, "muǵdar": 40}
}

def tovar_qosıw(atı, baha, muǵdar):
    tovarlar[atı] = {"baha": baha, "muǵdar": muǵdar}

def tovar_satıw(atı, muǵdar):
    if atı in tovarlar:
        if tovarlar[atı]["muǵdar"] >= muǵdar:
            tovarlar[atı]["muǵdar"] -= muǵdar
            return muǵdar * tovarlar[atı]["baha"]
        else:
            return "Jetkilikli tovar joq"
    return "Bunday tovar joq"

# Tovar qosıw
tovar_qosıw("nok", 8000, 60)

# Tovar satıw
print(tovar_satıw("alma", 5))  # 60000 qaytaradı
print(tovarlar["alma"]["muǵdar"])  # 45 qaytaradı

3. Waqıyalar kalendarı:
kalendar = {}

def waqıya_qosıw(sáne, waqıt, waqıya):
    if sáne not in kalendar:
        kalendar[sáne] = {}
    kalendar[sáne][waqıt] = waqıya

def kún_waqıyaların_koriw(sáne):
    if sáne in kalendar:
        print(f"\n{sáne} kúngi waqıyalar:")
        for waqıt, waqıya in kalendar[sáne].items():
            print(f"{waqıt}: {waqıya}")
    else:
        print("Bul kúnde waqıyalar joq")

# Waqıyalardı qosıw
waqıya_qosıw("2024-10-26", "10:00", "Jumıs jıynalısı")
waqıya_qosıw("2024-10-26", "15:30", "Prezentaciya")
waqıya_qosıw("2024-10-27", "12:00", "Túslik")

# Waqıyalardı kóriw
kún_waqıyaların_koriw("2024-10-26")

4. Kórsetilgen xızmetler esabı:
xızmetler = {
    "kompyuter remont": 200000,
    "virus tazalaw": 100000,
    "programa ornatıw": 50000
}

buyırtpalar = []

def buyırtpa_qosıw(klient, xızmet_atı):
    if xızmet_atı in xızmetler:
        buyırtpa = {
            "klient": klient,
            "xızmet": xızmet_atı,
            "baha": xızmetler[xızmet_atı]
        }
        buyırtpalar.append(buyırtpa)
        return "Buyırtpa qabıl etildi"
    return "Bunday xızmet joq"

def esap_shıǵarıw(klient):
    ulıwma_summa = 0
    klient_buyırtpaları = []
    
    for buyırtpa in buyırtpalar:
        if buyırtpa["klient"] == klient:
            klient_buyırtpaları.append(buyırtpa)
            ulıwma_summa += buyırtpa["baha"]
    
    if klient_buyırtpaları:
        print(f"\n{klient}niń buyırtpaları:")
        for b in klient_buyırtpaları:
            print(f"{b['xızmet']}: {b['baha']} sum")
        print(f"Ulıwma summa: {ulıwma_summa} sum")
    else:
        print("Buyırtpalar tabılmadı")

# Testlew
buyırtpa_qosıw("Azamat", "kompyuter remont")
buyırtpa_qosıw("Azamat", "virus tazalaw")
buyırtpa_qosıw("Gúlnaz", "programa ornatıw")

esap_shıǵarıw("Azamat")

5. Soraw-juwap sisteması:
sorawlar = {
    "Python nege arnalǵan?": {
        "juwap": "Python - ulıwma maqsetli programmalastırıw tili",
        "qıyınlıq": "ańsat"
    },
    "Dictionary degenimiz ne?": {
        "juwap": "Dictionary - gilt-mánilik juplıqlarınan ibarat struktura",
        "qıyınlıq": "orta"
    },
    "List penen Dictionary arasında qanday ayırma bar?": {
        "juwap": "List indeksler menen, al Dictionary giltler menen isleydi",
        "qıyınlıq": "qıyın"
    }
}

def soraw_beriw():
    durıs_juwaplar = 0
    
    for soraw, maǵlıwmat in sorawlar.items():
        print(f"\nSoraw ({maǵlıwmat['qıyınlıq']}): {soraw}")
        juwap = input("Siziń juwabıńız: ")
        
        if juwap.lower() == maǵlıwmat["juwap"].lower():
            print("Durıs!")
            durıs_juwaplar += 1
        else:
            print(f"Nátiyjesi: {maǵlıwmat['juwap']}")
    
    print(f"\nSiz {len(sorawlar)} sorawdan {durıs_juwaplar} durıs juwap berdińiz")

# Sistemanı iske túsiriw
soraw_beriw()

Bul mısallarda sózliklerdiń hár túrli qollanıw usılların kórsetilgen. Hár bir mısal real máselelerdi sheshiwge arnalǵan hám sózliklerdiń hár qıylı múmkinshiliklerinen paydalanılǵan.

Test
testler = {
    1: {
        "soraw": "Python tilinde bos sózlik jaratıwdıń durıs variantı qaysı?",
        "variantlar": {
            "a": "dict = []",
            "b": "dict = {}",
            "c": "dict = ()",
            "d": "dict = <<>>"
        },
        "durıs_juwap": "b",
        "túsindirme": "Bos sózlik {} járdeminde yamasa dict() funkciyası menen jaratıladı"
    },
    2: {
        "soraw": "Sózlikte bir gilt neshe ret qaytalanıwı múmkin?",
        "variantlar": {
            "a": "Sheksiz ret",
            "b": "2 ret",
            "c": "3 ret",
            "d": "Gilt unikal bolıwı kerek, qaytalanbawı shárt"
        },
        "durıs_juwap": "d",
        "túsindirme": "Sózlikte giltler unikal bolıwı shárt, bir gilt tek bir ret paydalanıladı"
    },
    3: {
        "soraw": "Sózliktiń mánisi qanday tipte bolıwı múmkin?",
        "variantlar": {
            "a": "Tek sanlı",
            "b": "Tek tekstli",
            "c": "Hár qanday tipte",
            "d": "Tek spisok"
        },
        "durıs_juwap": "c",
        "túsindirme": "Sózliktiń mánisi hár qanday tipte bolıwı múmkin: san, tekst, spisok, basqa sózlik h.t.b."
    },
    4: {
        "soraw": "Sózlikten elementti óshiriw ushın qaysı operator qollanıladı?",
        "variantlar": {
            "a": "remove()",
            "b": "pop()",
            "c": "del",
            "d": "clear()"
        },
        "durıs_juwap": "c",
        "túsindirme": "del operatorı sózlikten belgili bir elementti óshiriw ushın qollanıladı"
    },
    5: {
        "soraw": "Sózliktiń barlıq giltlerin alıw ushın qaysı metod qollanıladı?",
        "variantlar": {
            "a": "keys()",
            "b": "values()",
            "c": "items()",
            "d": "get()"
        },
        "durıs_juwap": "a",
        "túsindirme": "keys() metodı sózliktiń barlıq giltlerin qaytaradı"
    },
    6: {
        "soraw": "Sózlikte joq giltke múrajat etkenimizde qátelik bolmawı ushın qaysı metodtı qollanıw kerek?",
        "variantlar": {
            "a": "find()",
            "b": "get()",
            "c": "search()",
            "d": "index()"
        },
        "durıs_juwap": "b",
        "túsindirme": "get() metodı gilt tawılmasa None qaytaradı, qátelik júz bermeydi"
    },
    7: {
        "soraw": "Sózliktiń elementlerin sanaw ushın qaysı cikl eń qolay?",
        "variantlar": {
            "a": "while",
            "b": "for in",
            "c": "do while",
            "d": "repeat until"
        },
        "durıs_juwap": "b",
        "túsindirme": "for in cikli sózlik elementlerin sanaw ushın eń qolaylı usılı"
    },
    8: {
        "soraw": "Sózliktiń barlıq mánislerin alıw ushın qaysı metod qollanıladı?",
        "variantlar": {
            "a": "keys()",
            "b": "values()",
            "c": "items()",
            "d": "get()"
        },
        "durıs_juwap": "b",
        "túsindirme": "values() metodı sózliktiń barlıq mánislerin qaytaradı"
    },
    9: {
        "soraw": "Sózlikti tolıq tazalaw ushın qaysı metod qollanıladı?",
        "variantlar": {
            "a": "delete()",
            "b": "remove()",
            "c": "clear()",
            "d": "empty()"
        },
        "durıs_juwap": "c",
        "túsindirme": "clear() metodı sózliktiń barlıq elementlerin óshiredi"
    },
    10: {
        "soraw": "Eki sózlikti birlestiriw ushın qaysı metod qollanıladı?",
        "variantlar": {
            "a": "merge()",
            "b": "update()",
            "c": "append()",
            "d": "extend()"
        },
        "durıs_juwap": "b",
        "túsindirme": "update() metodı eki sózlikti biriktiriw ushın qollanıladı"
    }
}

def test_alıw():
    bal = 0
    
    for nomer, test in testler.items():
        print(f"\n{nomer}. {test['soraw']}")
        
        for variant, juwap in test['variantlar'].items():
            print(f"{variant}) {juwap}")
        
        user_juwap = input("\nJuwabıńızdı kiritiń (a/b/c/d): ").lower()
        
        if user_juwap == test['durıs_juwap']:
            print("Durıs! ✅")
            bal += 1
        else:
            print(f"Nátiyjesi: {test['túsindirme']} ❌")
    
    print(f"\nTest juwmaqlandı!")
    print(f"Sizdiń balıńız: {bal} / {len(testler)}")
    procent = (bal / len(testler)) * 100
    print(f"Procent: {procent}%")

# Testti baslawıńız ushın tómendegi qatardı kommentariydan shıǵarıń
# test_alıw()

Bul testlerdi orınlaw ushın programmanı iske túsirip, hár bir sorawǵa a, b, c yamasa d variantların kiritip juwap beriw kerek. Testtiń aqırında ulıwma bal hám procent kórsetiledi.]]>
bekan Wed, 19 Feb 2025 21:59:55 +0000
11-ámeliy jumıs: Python programmalastırıw tilinde kóplikler (Sets) https://megaline.uz/index.php?newsid=135 https://megaline.uz/index.php?newsid=135 1. Kóplik (Set) túsinigi:[/b]
Kóplik - bul Python tilindegi qáytalanatuǵın elementlerdi saqlap qalmaytuǵın, tártipsiz hám ózgeriwsheń kollekciya bolıp tabıladı. Kóplikler figuralı qawsırmalar {} menen belgilenedi yamasa set() funkciyası arqalı jaratıladı.
[b]2. Kópliklerdiń tiykarǵı qásiyetleri:[/b]
• Qáytalanatuǵın elementlerdi saqlap qalmaydı
• Tártipsiz (indekslengen emes)
• Ózgeriwsheń (mutable)
• Tek ózgermeytuǵın (immutable) elementlerdi saqlawı múmkin
[b]3. Kópliklerdiń artıqmashılıqları:[/b]
• Tez izlew hám elementlerdi tekseriwde
• Qáytalanatuǵın elementlerdi avtomatik túrde joq etiwde
• Matematikalıq kóplik ámellerinde (birlespe, kesispe, ayırma)
[b]4. Kópliklerdiń kemshilikleri:[/b]
• Tártipsiz bolǵanlıǵı sebepli indeks arqalı elementlerge kirise almaymız
• Tek ózgermeytuǵın elementlerdi saqlawı múmkin
[b]Ámeliy bólim:
1. Kóplik jaratıw:[/b]
# Figuralı qawsırmalar arqalı
fruits = {'alma', 'almurt', 'banan', 'apelsin'}

# set() funkciyası arqalı
numbers = set([1, 2, 3, 4, 5])

# Bos kóplik
empty_set = set()

[b]2. Kóplikke element qosıw:[/b]
fruits.add('juzim')
print(fruits)  # {'alma', 'almurt', 'banan', 'apelsin', 'juzim'}

fruits.update(['ananas', 'qawın'])
print(fruits)  # {'alma', 'almurt', 'banan', 'apelsin', 'juzim', 'ananas', 'qawın'}

[b]3. Kóplikten element óshiriw:[/b]
fruits.remove('banan')
print(fruits)  # {'alma', 'almurt', 'apelsin', 'juzim', 'ananas', 'qawın'}

# Eger element bolmasa qáte bermeydi
fruits.discard('mango')

[b]4. Kóplikler ústin ámellerdi qollanıw:[/b]
set1 = {1, 2, 3, 4, 5}
set2 = {4, 5, 6, 7, 8}

# Birlespe
union_set = set1.union(set2)
print(union_set)  # {1, 2, 3, 4, 5, 6, 7, 8}

# Kesispe
intersection_set = set1.intersection(set2)
print(intersection_set)  # {4, 5}

# Ayırma
difference_set = set1.difference(set2)
print(difference_set)  # {1, 2, 3}

[b]5. Kópliklerdi salıstırıw:[/b]
set1 = {1, 2, 3}
set2 = {1, 2, 3, 4, 5}

print(set1.issubset

[b]ÁMELIY MÍSALLAR[/b]
[b]1. Studentler dizimin kóplik túrinde saqlap, olardı basqarıw:[/b]
# Studentler kópligi
students = {'Aliy', 'Ayjan', 'Berdaq', 'Gúlnara', 'Dawlet'}

# Jańa student qosıw
students.add('Jańabay')
print("Jańa student qosılǵannan keyin:", students)

# Bir neshe student qosıw
new_students = {'Marat', 'Sáwle', 'Timur'}
students.update(new_students)
print("Bir neshe student qosılǵannan keyin:", students)

# Studentti óshiriw
students.remove('Aliy')
print("Aliy óshirilgennen keyin:", students)

# Studentti izlew
search_name = 'Gúlnara'
if search_name in students:
    print(f"{search_name} student diziminde bar")
else:
    print(f"{search_name} student diziminde joq")

[b]2. Eki klasstıń oqıwshıların salıstırıw:[/b]
class_a = {'Aliy', 'Berdaq', 'Gúlnara', 'Jańabay', 'Marat'}
class_b = {'Ayjan', 'Dawlet', 'Gúlnara', 'Sáwle', 'Timur'}

# Eki klassta da bar bolǵan oqıwshılar
common_students = class_a.intersection(class_b)
print("Eki klassta da oqıytugın oqıwshılar:", common_students)

# Tek A klassında bar bolǵan oqıwshılar
only_in_a = class_a.difference(class_b)
print("Tek A klassında oqıytugın oqıwshılar:", only_in_a)

# Barlıq oqıwshılar dizimi
all_students = class_a.union(class_b)
print("Barlıq oqıwshılar:", all_students)

[b]3. Sózlerdiń unikallıǵın tekseriwde kópliklerdi qollanıw:[/b]
text = "Bul bir úlken tekst. Bul tekstte sózler qaytalanıwı múmkin. Biz usı teksttegi unikal sózlerdi tabamız."

# Tekstti sózlerge ajıratıw hám kóplikke aylandırıw
words = set(text.lower().split())

print("Teksttegi unikal sózler sanı:", len(words))
[b]print("Unikal sózler:", words)

4. Sanlar kópligi menen islew:[/b]
numbers = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}

# Jup sanlar kópligi
even_numbers = {num for num in numbers if num % 2 == 0}
print("Jup sanlar:", even_numbers)

# Taq sanlar kópligi
odd_numbers = numbers.difference(even_numbers)
print("Taq sanlar:", odd_numbers)

# 5 ten úlken sanlar
greater_than_five = {num for num in numbers if num > 5}
print("5 ten úlken sanlar:", greater_than_five)


[b]5. Kóplikler járdeminde dublikatlardı joq etiw:[/b]
# Dublikatlı dizim
numbers_with_duplicates = [1, 2, 2, 3, 4, 4, 5, 5, 6, 7, 7, 8, 9, 9, 10]

# Kóplik járdeminde dublikatlardı joq etiw
unique_numbers = set(numbers_with_duplicates)

print("Dáslepki dizim:", numbers_with_duplicates)
print("Dublikatları joq etilgen dizim:", list(unique_numbers))

[b]6. Kóplikler menen logikalıq operaciyalardı qollanıw:[/b]
A = {1, 2, 3, 4, 5}
B = {4, 5, 6, 7, 8}
C = {3, 4, 5, 9, 10}

# Barlıq úsh kóplikte bar bolǵan elementler
common_elements = A & B & C
print("Barlıq úsh kóplikte bar bolǵan elementler:", common_elements)

# A yamasa B de bar, biraq C de joq bolǵan elementler
in_a_or_b_not_c = (A | B) - C
print("A yamasa B de bar, biraq C de joq bolǵan elementler:", in_a_or_b_not_c)

# Tek ǵana bir kóplikte bar bolǵan elementler
unique_to_one_set = (A ^ B ^ C) - ((A & B) | (B & C) | (A & C))
print("Tek ǵana bir kóplikte bar bolǵan elementler:", unique_to_one_set)

[b]7. Kópliklerdi qollanıp, tillerdi úyreniw progressin baqlawǵa mısal:[/b]
english_words = {"apple", "book", "cat", "dog", "elephant"}
learned_words = set()

def learn_word(word):
    if word in english_words:
       learned_words.add(word)
       print(f"'{word}' sózi úyrenildi!")
    else:
        print(f"'{word}' sózi dizimde joq.")

def check_progress():
    remaining_words = english_words - learned_words
    progress = (len(learned_words) / len(english_words)) * 100
    print(f"Siz {len(learned_words)} sóz úyrendińiz. ({progress:.2f}% progress)")
    print(f"Qalǵan sózler: {remaining_words}")

# Sózlerdi úyreniw
learn_word("apple")
learn_word("book")
learn_word("sun")  # Bul sóz dizimde joq

# Progressti tekserip kóriw
check_progress()

]]>
bekan Wed, 19 Feb 2025 21:53:18 +0000
10-ámeliy jumıs: Python programmalastırıw tilinde kortejler (Tuples) https://megaline.uz/index.php?newsid=134 https://megaline.uz/index.php?newsid=134 I. Teoriyalıq bólim
1. Kortej (Tuple) túsinigi
• Kortej - bir neshe elementlerdi óz ishine alǵan, tártiplengen hám ózgermeytuǵın (immutable) maǵlıwmatlar strukturası
• Python tilinde kortejler ( ) qawsırmalar belgisi menen jaratıladı
• Kortej elementleri 0-den baslanǵan index boyınsha saqlanadı
2. Kortejdiń tiykarǵı ózgeshelikleri:
• Kortejde hár túrli tipli elementler bolıwı múmkin (sanlar, tekstler, logikalıq maǵlıwmatlar)
• Kortej ózgermeytuǵın (immutable) esaplanadı
• Kortejde elementler qaytalanıwı múmkin
• Kortejde elementlerdiń tártibi saqlanadı
3. Kortejler menen islewdiń tiykarǵı operaciyaları:
• Kortej jaratıw
• Elementlerge kirisiw
• Kortejdi kesiw (slicing)
• Kortejlerdi birlestiriw
• Kortej elementlerin sanaw
4. Kortejler hám dizimler arasındaǵı ayırmashılıqlar:
• Kortejler ózgermeytuǵın, dizimler ózgeriwshi
• Kortejler ádette ( ) menen, dizimler [ ] menen jaratıladı
• Kortejler kóbirek operaciyalarda tezirek isleydi
• Kortejler kóbirek jáne ózgermeytuǵın maǵlıwmatlardı saqlaw ushın qollanıladı
II. Ámeliy bólim
1. Kortej jaratıw hám elementlerge misal:

# Bos kortej
bos_kortej = ()

# Sanlar korteji
sanlar = (1, 2, 3, 4, 5)

# Hár túrli tipli elementler
aralas = (1, "text", True, 3.14)

# Bir elementli kortej
bir_element = (42,)  # Esletpe: útirlı bolıwı kerek

2. Kortej elementlerine kirisiw:
sanlar = (1, 2, 3, 4, 5)
print(sanlar[0])  # 1
print(sanlar[-1])  # 5

3. Kortejdi kesiw (slicing):
sanlar = (1, 2, 3, 4, 5)
print(sanlar[1:4])  # (2, 3, 4)
print(sanlar[:3])   # (1, 2, 3)
print(sanlar[2:])   # (3, 4, 5)

4. Kortejlerdi birlestiriw:
a = (1, 2, 3)
b = (4, 5, 6)
c = a + b
print(c)  # (1, 2, 3, 4, 5, 6)

5. Kortej elementlerin sanaw:
sanlar = (1, 2, 2, 3, 4, 2)
print(sanlar.count(2))  # 3


Ámeliy tapsırma:
Tómendegi máselelerdi sheshiń:

1. Hápte kúnlerinen ibarat kortej jaratıń hám onıń 3-shi elementin shıǵarıń.
2. Eki kortejdi birlestirip, jańa kortej alıń hám onıń uzınlıǵın tabıń.
3. (1, 2, 3, 4, 5) kortejiniń 2-shi elementinen 4-shi elementine shekem bólimin alıń.
4. (1, 2, 2, 3, 4, 2, 5) kortejinde 2 sanı neshe ret ushırasatıǵının tabıń.
5. Ózińizdiń atıńız, jasıńız hám qızıǵıwshılıǵıńızdan turatıǵın kortej jaratıń hám onı ekranda kórsetip beriń.
Sheshimler:
1. Hápte kúnleri korteji:
hapte_kunleri = ("Dúyshembi", "Siyshembi", "Sárshembi", "Piyshembi", "Juma", "Shembi", "Ekshembi")
print(hapte_kunleri[2])  # Sárshembi

2. Kortejlerdi birlestiriw:
a = (1, 2, 3)
b = (4, 5, 6)
c = a + b
print(c)  # (1, 2, 3, 4, 5, 6)
print(len(c))  # 6

3. Kortejdi kesiw:
sanlar = (1, 2, 3, 4, 5)
print(sanlar[1:4])  # (2, 3, 4)

4. Element sanın esaplaw:
sanlar = (1, 2, 2, 3, 4, 2, 5)
print(sanlar.count(2))  # 3

5. Jeke maǵlıwmatlar korteji:
jeke_maglıwmatlar = ("Azamat", 25, "Programmalastırıw")
print(jeke_maglıwmatlar)  # ("Azamat", 25, "Programmalastırıw")

]]>
bekan Wed, 19 Feb 2025 21:48:37 +0000
9-ámeliy jumıs: Python programmalastırıw tilinde dizimler https://megaline.uz/index.php?newsid=133 https://megaline.uz/index.php?newsid=133 I. Teoriyalıq bólim
1. Dizim (List) túsinigi
• Dizim - bir neshe elementlerdi óz ishine alǵan, tártiplengen hám ózgeriwshi maǵlıwmatlar strukturası
• Python tilinde dizimler [ ] qawsırmalar belgisi menen jaratıladı
• Dizim elementleri 0-den baslanǵan index boyınsha saqlanadı
2. Dizimniń tiykarǵı ózgeshelikleri:
• Dizimde hár túrli tipli elementler bolıwı múmkin (sanlar, tekstler, logikalıq maǵlıwmatlar)
• Dizim ózgeriwshi (mutable) esaplanadı
• Dizimde elementler qaytalanıwı múmkin
• Dizimde elementlerdiń tártibi saqlanadı
3. Dizimler menen islewdiń tiykarǵı operaciyaları:
• Dizim jaratıw
• Elementlerdi qosıw
• Elementlerdi óshiriw
• Elementlerdi ózgertiw
• Dizimdi sortırovkalaw
• Dizimdi kóshiriw
II. Ámeliy bólim
1. Dizim jaratıw hám elementlerge misal:
# Bos dizim
bos_dizim = []

# Sanlar dizimi
sanlar = [1, 2, 3, 4, 5]

# Hár túrli tipli elementler
aralas = [1, "text", True, 3.14]

2. Dizimge element qosıw:
# append() metodi arqalı
sanlar = [1, 2, 3]
sanlar.append(4)  # [1, 2, 3, 4]

# insert() metodi arqalı
sanlar.insert(0, 0)  # [0, 1, 2, 3, 4]

3. Dizimnen element óshiriw:
# remove() metodi arqalı
sanlar = [1, 2, 3, 4, 5]
sanlar.remove(3)  # [1, 2, 4, 5]

# pop() metodi arqalı
sanlar.pop()  # aqırǵı elementti óshiredi

4. Dizimdi sortırovkalaw:
# Ósiwshi tártipte
sanlar = [3, 1, 4, 1, 5, 9, 2]
sanlar.sort()  # [1, 1, 2, 3, 4, 5, 9]

# Kemeyiwshi tártipte
sanlar.sort(reverse=True)  # [9, 5, 4, 3, 2, 1, 1]

5. Dizimdi kóshiriw:
# Tuwrı kóshiriw (durıs emes)
a = [1, 2, 3]
b = a  # b hám a bir dizimge siltelme boladı

# copy() metodi arqalı (durıs)
a = [1, 2, 3]
b = a.copy()  # b jańa dizim boladı

Ámeliy tapsırma:
Tómendegi máselelerdi sheshiń:

1. 1-den 10-ǵa shekem sanlardan turatıǵın dizim jaratıń
2. Dizimniń aqırǵı elementi menen birinshi elementin almastırıń
3. Dizimge jańa element qosıń hám onı sortırovkalań
4. Dizimniń barlıq elementlerin 2-ge kóbeytip shıǵıń
Sheshimi:
# 1. Dizim jaratıw
sanlar = list(range(1, 11))
print("Dáslepki dizim:", sanlar)

# 2. Elementlerdi almastırıw
sanlar[0], sanlar[-1] = sanlar[-1], sanlar[0]
print("Almastırılǵannan keyin:", sanlar)

# 3. Element qosıw hám sortırovkalaw
sanlar.append(5)
sanlar.sort()
print("Sortırovkalanǵannan keyin:", sanlar)

# 4. Elementlerdi 2-ge kóbeytiw
sanlar = [x * 2 for x in sanlar]
print("Kóbeytilgennen keyin:", sanlar)


Kodqa táriyip
1. Dizim jaratıw bólimi:
sanlar = list(range(1, 11))

• range(1, 11) funkciyası 1-den 10-ǵa shekem sanlar dizbegin dúzedi
• list() funkciyası bul dizbekti dizimge aylandıradı
• Nátiyjede [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] dizimi payda boladı
2. Elementlerdi almastırıw bólimi:
sanlar[0], sanlar[-1] = sanlar[-1], sanlar[0]

• sanlar[0] - dizimniń birinshi elementi (index 0)
• sanlar[-1] - dizimniń aqırǵı elementi
• = belgisiniń oń tárepindegi mánisler shep tárepke mánisleri menen almastırıladı
• Mısalı: [1, 2, 3, 4, 5] -> [5, 2, 3, 4, 1]
3. Element qosıw hám sortırovkalaw bólimi:
sanlar.append(5)
sanlar.sort()

• append(5) metodı dizimniń aqırına 5 sanın qosadı
• sort() metodı dizimdi ósiwshi tártipte sortırovkalaydı
• Mısalı: [5, 2, 3, 4, 1, 5] -> [1, 2, 3, 4, 5, 5]
4. Elementlerdi 2-ge kóbeytiw bólimi:
sanlar = [x * 2 for x in sanlar]

Bul qatarda list comprehension (dizim túsiniw) qollanılǵan:
• for x in sanlar - dizimniń hár bir elementi ushın
• x * 2 - elementi 2-ge kóbeytiledi
• Nátiyjede jańa dizim dúziledi
• Mısalı: [1, 2, 3] -> [2, 4, 6]
Hár bir qádemnen keyin print() funkciyası arqalı nátiyjeler ekranǵa shıǵarılıp barıladı. Bul programmanıń jumısın kóriw hám qáteliklerin tabıw ushın paydalı.
ÁMELIY MÍSALLAR:
1. Studentler hám bahalar mısalı:

# Studentler hám bahalar baǵdarlaması
def student_bahalar():
    # 1. Dizimlerdi jaratıw
    studentler = ["Arman", "Berdaq", "Gúlnaz", "Dawlet"]
    bahalar = [85, 92, 78, 95]
    
    # 2. Eń joqarı bahanı tabıw
    joqarı_baha = max(bahalar)
    joqarı_index = bahalar.index(joqarı_baha)
    joqarı_student = studentler[joqarı_index]
    
    # 3. Ortalıq bahanı esaplaw
    ortalıq_baha = sum(bahalar) / len(bahalar)
    
    # 4. Nátiyjelerin kórsetiw
    print("Student bahalarınıń analizi:")
    print("-" * 30)
    
    # Hár bir studenttiń bahasın kórsetiw
    for i in range(len(studentler)):
        print(f"{studentler[i]}: {bahalar[i]}")
    
    print("-" * 30)
    print(f"Eń joqarı baha: {joqarı_baha}, Student: {joqarı_student}")
    print(f"Ortalıq baha: {ortalıq_baha:.2f}")

# Baǵdarlamanı jumıs isletiw
student_bahalar()

2. Jup sanlar mısalı:
# Jup sanlar menen isleytuǵın baǵdarlama
def qos_sanlar_baǵdarlaması():
    # 1. Jup sanlar dizimin jaratıw (2 den 20 ǵa shekem)
    sanlar = list(range(2, 21, 2))
    print("Dáslepki qos sanlar dizimi:", sanlar)
    
    # 2. Dizimge jańa element qosıw
    sanlar.append(22)
    print("22 qosılǵannan keyin:", sanlar)
    
    # 3. Dizimdi kerisine aylandırıw
    sanlar.reverse()
    print("Kerisine aylanǵan dizim:", sanlar)
    
    # 4. Dizimniń barlıq elementlerin 2 ge kóbeytiw
    jańa_sanlar = [san * 2 for san in sanlar]
    print("Elementler 2 ge kóbeytirilgennen keyin:", jańa_sanlar)
    
    # 5. Dizimniń ulıwma maǵlıwmatların kórsetiw
    print(f"\nDizim haqqında maǵlıwmatlar:")
    print(f"Dizim uzınlıǵı: {len(sanlar)}")
    print(f"Eń kishi san: {min(sanlar)}")
    print(f"Eń úlken san: {max(sanlar)}")
    print(f"Barlıq sanlardıń qosındısı: {sum(sanlar)}")

# Baǵdarlamanı jumıs isletiw
qos_sanlar_baǵdarlaması()

3. Shopping list mısalı:
# Shopping list baǵdarlaması
def shopping_list_baǵdarlaması():
    # 1. Bos shopping list jaratıw
    shopping_list = []
    
    # 2. Funkciyalar
    def produkt_qosıw(produkt):
        shopping_list.append(produkt)
        print(f"{produkt} shopping listke qosıldı")
    
    def produkt_óshiriw(produkt):
        if produkt in shopping_list:
            shopping_list.remove(produkt)
            print(f"{produkt} shopping listten óshirildi")
        else:
            print(f"{produkt} shopping listte joq")
    
    def shopping_list_kórsetiw():
        if shopping_list:
            print("\nShopping list:")
            for i, item in enumerate(shopping_list, 1):
                print(f"{i}. {item}")
        else:
            print("\nShopping list bos")
    
    # 3. Shopping listke produktlar qosıw
    produkt_qosıw("alma")
    produkt_qosıw("nan")
    produkt_qosıw("sút")
    produkt_qosıw("gósht")
    
    # 4. Shopping listti kórsetiw
    shopping_list_kórsetiw()
    
    # 5. Bir produkttı óshiriw
    produkt_óshiriw("alma")
    
    # 6. Jańa halattı kórsetiw
    shopping_list_kórsetiw()
    
    # 7. Bar/joq produkttı óshirip kóriw
    produkt_óshiriw("balıq")

# Baǵdarlamanı jumıs isletiw
shopping_list_baǵdarlaması()

4. Sanlar dizimin filtrlew mısalı:
# Sanlar dizimin filtrlew baǵdarlaması
def sanlar_filtrlew():
    # 1. 1 den 20 ǵa shekem sanlar dizimin jaratıw
    sanlar = list(range(1, 21))
    print("Dáslepki sanlar dizimi:", sanlar)
    
    # 2. Taq sanlar dizimin jaratıw
    taq_sanlar = [san for san in sanlar if san % 2 != 0]
    print("Taq sanlar:", taq_sanlar)
    
    # 3. Jup sanlar dizimin jaratıw
    qos_sanlar = [san for san in sanlar if san % 2 == 0]
    print("Qos sanlar:", qos_sanlar)
    
    # 4. 5 ke bólinetuǵın sanlar
    bes_bóliniwshi = [san for san in sanlar if san % 5 == 0]
    print("5 ke bólinetuǵın sanlar:", bes_bóliniwshi)
    
    # 5. 10 nan úlken sanlar
    on_úlken = [san for san in sanlar if san > 10]
    print("10 nan úlken sanlar:", on_úlken)
    
    # 6. Statistika kórsetiw
    print("\nStatistika:")
    print(f"Taq sanlar sanı: {len(taq_sanlar)}")
    print(f"Qos sanlar sanı: {len(qos_sanlar)}")
    print(f"5 ke bólinetuǵın sanlar sanı: {len(bes_bóliniwshi)}")
    print(f"10 nan úlken sanlar sanı: {len(on_úlken)}")

# Baǵdarlamanı jumıs isletiw
sanlar_filtrlew()

Bul baǵdarlamalardıń hár biri:
1. Funkciyalar arqalı strukturalanǵan
2. Anıq kommentariyalar menen táriplengen
3. Nátiyjeleri kórsetiletuǵın etip jazılǵan
4. Qáteliklersiz jumıs isleydi

]]>
bekan Wed, 19 Feb 2025 21:44:15 +0000
8-ámeliy jumıs: Python programmalastırıw tili operatorları https://megaline.uz/index.php?newsid=132 https://megaline.uz/index.php?newsid=132 1. Arifmetikalıq operatorlar:
# Qosıw
a = 10 + 5  # 15

# Alıw
b = 10 - 5  # 5

# Kóbeytiw
c = 10 * 5  # 50

# Bóliw
d = 10 / 5  # 2.0 (pútin emes nátiyje)

# Pútin bóliw
e = 10 // 3  # 3 (pútin bólimi)

# Qaldıq
f = 10 % 3  # 1 (qaldıǵı)

# Dárejege kóteriw
g = 2 ** 3  # 8 (2 sanınıń 3-shi dárejesi)

# Quramalı mısal
h = (10 + 5) * 2 / 3  # 10.0

2. Menshiklew operatorları:
# Tikkeley menshiklew
x = 5

# Qosıp menshiklew
x += 3  # x = x + 3

# Alıp menshiklew
x -= 2  # x = x - 2

# Kóbeytip menshiklew
x *= 4  # x = x * 4

# Bólip menshiklew
x /= 2  # x = x / 2

# Qaldıqtı menshiklew
x %= 3  # x = x % 3

# Dárejeni menshiklew
x **= 2  # x = x ** 2

3. Salıstırıw operatorları:
a = 5
b = 10

# Teńlik
print(a == b)  # False

# Teń emeslik
print(a != b)  # True

# Úlken
print(a > b)   # False

# Kishi
print(a < b)   # True

# Úlken yamasa teń
print(a >= b)  # False

# Kishi yamasa teń
print(a <= b)  # True

4. Logikalıq operatorlar:
# and operatorı
print(True and True)    # True
print(True and False)   # False

# or operatorı
print(True or False)    # True
print(False or False)   # False

# not operatorı
print(not True)        # False
print(not False)       # True

# Quramalı logikalıq ańlatpalar
x = 5
y = 10
print(x < 10 and y > 5)  # True
print(x > 10 or y < 15)  # True

5. Identifikator operatorları:
# is operatorı
a = [1, 2, 3]
b = [1, 2, 3]
c = a

print(a is b)      # False
print(a is c)      # True
print(a is not b)  # True

6. Aǵzalıq operatorları:
# in operatorı
sanlar = [1, 2, 3, 4, 5]
print(3 in sanlar)       # True
print(6 in sanlar)       # False
print(6 not in sanlar)   # True

text = "Python"
print("th" in text)      # True

7. Bit operatorları:
a = 60  # 60 = 0011 1100 
b = 13  # 13 = 0000 1101

# Bit AND
print(a & b)   # 12 = 0000 1100

# Bit OR
print(a | b)   # 61 = 0011 1101

# Bit XOR
print(a ^ b)   # 49 = 0011 0001

# Bit NOT
print(~a)      # -61 = 1100 0011

# Ońǵa jıljıtıw
print(a >> 2)  # 15 = 0000 1111

# Shepke jıljıtıw
print(a << 2)  # 240 = 1111 0000

Ámeliy shınıǵıwlar:
1. Kalkulyator:

def kalkulyator(san1, san2, operator):
    if operator == '+':
        return san1 + san2
    elif operator == '-':
        return san1 - san2
    elif operator == '*':
        return san1 * san2
    elif operator == '/':
        if san2 != 0:
            return san1 / san2
        return "Nolge bóliw múmkin emes"
    else:
        return "Nadurıs operator"

# Testlew
san1 = float(input("Birinshi sandı kiritiń: "))
san2 = float(input("Ekinshi sandı kiritiń: "))
operator = input("Operatordı kiritiń (+, -, *, /): ")
print("Nátiyje:", kalkulyator(san1, san2, operator))

2. San sistemalarında islewshi programa:
def san_sistema_almastırıw(san, sistema):
    if sistema == 2:
        return bin(san)[2:]  # Ekilik sistema
    elif sistema == 8:
        return oct(san)[2:]  # Segizlik sistema
    elif sistema == 16:
        return hex(san)[2:]  # On altılıq sistema
    else:
        return "Nadurıs sistema"

# Testlew
san = int(input("Sandı kiritiń: "))
sistema = int(input("Sistema (2, 8, 16): "))
print("Nátiyje:", san_sistema_almastırıw(san, sistema))

3. Bit operatorları qollanılǵan másele:
def bit_operatsiyalar(a, b):
    print(f"AND: {a & b}")
    print(f"OR: {a | b}")
    print(f"XOR: {a ^ b}")
    print(f"NOT a: {~a}")
    print(f"a >> 2: {a >> 2}")
    print(f"a << 2: {a << 2}")

# Testlew
a = int(input("A sanın kiritiń: "))
b = int(input("B sanın kiritiń: "))
bit_operatsiyalar(a, b)

4. Logikalıq operatorlar máselesi:
def student_bahalaw(baha, qatnasıw):
    ótkenbe = baha >= 50 and qatnasıw >= 80
    qayta_tapsırıw = (baha < 50 and qatnasıw >= 80) or (baha >= 50 and qatnasıw < 80)
    
    if ótkenbe:
        return "Ótken"
    elif qayta_tapsırıw:
        return "Qayta tapsırıw"
    else:
        return "Ótpegen"

# Testlew
baha = float(input("Bahasın kiritiń (0-100): "))
qatnasıw = float(input("Qatnasıw protsentin kiritiń (0-100): "))
print("Nátiyje:", student_bahalaw(baha, qatnasıw))

5. Quramalı operator máselesi:
def san_analizi(san):
    jup = san % 2 == 0
    oń = san > 0
    úsh_bólinedi = san % 3 == 0
    bes_bólinedi = san % 5 == 0
    
    nátiyje = []
    
    if jup:
        nátiyje.append("jup")
    else:
        nátiyje.append("taq")
        
    if oń:
        nátiyje.append("oń")
    else:
        nátiyje.append("teris")
        
    if úsh_bólinedi and bes_bólinedi:
        nátiyje.append("15 ke bólinedi")
    elif úsh_bólinedi:
        nátiyje.append("3 ke bólinedi")
    elif bes_bólinedi:
        nátiyje.append("5 ke bólinedi")
    
    return ", ".join(nátiyje)

# Testlew
san = int(input("Sandı kiritiń: "))
print("San analizi:", san_analizi(san))



]]>
bekan Wed, 19 Feb 2025 21:37:24 +0000
7-ámeliy jumıs: Python programmalastırıw tilinde logikalıq ózgeriwshiler https://megaline.uz/index.php?newsid=131 https://megaline.uz/index.php?newsid=131 1. Logikalıq ózgeriwshiler (Boolean):
# Boolean tipleri
haqıyqat = True
jalǵan = False

# Tipti tekeriw
print(type(haqıyqat))  # <class 'bool'>

2. Salıstırıw operatorları:
a = 5
b = 10

# Teńlik
print(a == b)  # False

# Teń emeslik
print(a != b)  # True

# Úlken
print(a > b)   # False

# Kishi
print(a < b)   # True

# Úlken yamasa teń
print(a >= b)  # False

# Kishi yamasa teń
print(a <= b)  # True

3. Logikalıq operatorlar:
# and - eki shárt te durıs bolıwı kerek
print(True and True)    # True
print(True and False)   # False
print(False and True)   # False
print(False and False)  # False

# or - eki shárttiń biri durıs bolsa jetkilikli
print(True or True)     # True
print(True or False)    # True
print(False or True)    # True
print(False or False)   # False

# not - shárttiń terisi
print(not True)         # False
print(not False)        # True

4. Quramalı logikalıq ańlatpalar:
jası = 25
student = True
jumıs_tájiriybesi = 3

# Bir neshe shárt
print(jası >= 18 and student)  # True
print(jası < 20 or jumıs_tájiriybesi > 2)  # True
print(not (jası < 20) and student)  # True

# Qawsırmalardı qollanıw
print((jası >= 20 and student) or jumıs_tájiriybesi > 5)  # True

5. Boolean konversiyası:
# Sanlar
print(bool(0))      # False
print(bool(1))      # True
print(bool(-5))     # True

# Qatarlar
print(bool(""))     # False
print(bool("abc"))  # True

# Dizimler
print(bool([]))     # False
print(bool([1,2]))  # True

# None
print(bool(None))   # False

6. is hám in operatorları:
# is operatorı - obyektler birdey me
a = [1, 2, 3]
b = [1, 2, 3]
c = a

print(a is b)  # False
print(a is c)  # True

# in operatorı - element dizimde bar ma
sanlar = [1, 2, 3, 4, 5]
print(3 in sanlar)      # True
print(6 in sanlar)      # False
print(6 not in sanlar)  # True

Ámeliy máseleler:
1. Jasın tekseriwshi programa:
def jas_tekser(jas):
    if jas < 0:
        return "Nadurıs jas"
    elif jas < 18:
        return "Jasóspirim"
    elif jas < 65:
        return "Eresek"
    else:
        return "Pensioner"

# Testlew
jas = int(input("Jasıńızdı kiritiń: "))
print(jas_tekser(jas))

2. Login sisteması:
def login_tekser(login, parol):
    durıs_login = "admin"
    durıs_parol = "12345"
    
    login_durıs = login == durıs_login
    parol_durıs = parol == durıs_parol
    
    if login_durıs and parol_durıs:
        return "Sistemag'a kiriw ámelge asırıldı"
    elif not login_durıs:
        return "Login nadurıs"
    else:
        return "Parol nadurıs"

# Testlew
login = input("Login: ")
parol = input("Parol: ")
print(login_tekser(login, parol))

3. San klasifikatorı:
def san_klasifikatorı(san):
    jup = san % 2 == 0
    oń = san > 0
    
    if oń and jup:
        return "Oń jup san"
    elif oń and not jup:
        return "Oń taq san"
    elif not oń and jup:
        return "Teris jup san"
    else:
        return "Teris taq san"

# Testlew
san = int(input("San kiritiń: "))
print(san_klasifikatorı(san))

4. Kalendar kúnin tekseriwshi:
def kún_durıs_pa(ay, kún):
    if ay < 1 or ay > 12:
        return False
        
    if ay in [4, 6, 9, 11]:
        max_kún = 30
    elif ay == 2:
        max_kún = 28
    else:
        max_kún = 31
        
    return 1 <= kún <= max_kún

# Testlew
ay = int(input("Aydı kiritiń (1-12): "))
kún = int(input("Kúndi kiritiń: "))
print("Kún durıs pa:", kún_durıs_pa(ay, kún))

5. Parol bekkemligin tekseriwshisi:
def parol_bekkem_be(parol):
    uzınlıǵı_jetkilikli = len(parol) >= 8
    úlken_hárip_bar = any(c.isupper() for c in parol)
    kishi_hárip_bar = any(c.islower() for c in parol)
    san_bar = any(c.isdigit() for c in parol)
    
    barlıq_shártler = [
        uzınlıǵı_jetkilikli,
        úlken_hárip_bar,
        kishi_hárip_bar,
        san_bar
    ]
    
    return all(barlıq_shártler)

# Testlew
parol = input("Parol kiritiń: ")
if parol_bekkem_be(parol):
    print("Parol bekkem")
else:
    print("Parol bekkem emes")

]]>
bekan Wed, 19 Feb 2025 21:32:40 +0000