Skip to content

12-dars: Oylik imtihon (CS asoslari + Scratch + Git/GitHub)

Dars haqida

Davomiyligi: 90 daqiqa Format: Test + amaliy ish Maqsad: 3-oy davomida o'rganilgan barcha ko'nikmalarni baholash.

Imtihon tuzilmasi

QismVaqtBall
1-qism: Test (CS asoslari + Git)25 daqiqa30 ball
2-qism: Scratch loyihasi30 daqiqa35 ball
3-qism: Git/GitHub amaliy35 daqiqa35 ball
Jami90 daqiqa100 ball

O'tish chegarasi: 60 ball

1-qism: Test (30 ball)

20 ta savol, har biri 1.5 ball. Vaqt — 25 daqiqa.

CS asoslari (savol 1–5)

1. Algoritm nima?

  • a) Dasturlash tili
  • b) Muammoni yechishning ketma-ket qadamlari
  • c) Kompyuter qurilmasi
  • d) Tarjima dasturi

2. Decimal 13 binary'da qanday yoziladi?

  • a) 1100
  • b) 1101
  • c) 1011
  • d) 1110

3. Binary 1010 decimal'da qanday yoziladi?

  • a) 5
  • b) 10
  • c) 12
  • d) 15

4. ASCII jadvalida 'A' raqami nechta?

  • a) 64
  • b) 65
  • c) 97
  • d) 100

5. Binary search qachon ishlatiladi?

  • a) Faqat raqamlar bilan
  • b) Sortlangan ro'yxatda
  • c) Faqat matnda
  • d) Har doim

Pseudocode va Flowchart (savol 6–10)

6. Pseudocode nima?

  • a) Real dastur kodi
  • b) Dasturlash tilini o'rganish
  • c) Algoritmni odam tilida yozish
  • d) Foydalanuvchi interfeysi

7. Flowchart'da romb shakli nimani anglatadi?

  • a) Boshlash
  • b) Amal
  • c) Shart
  • d) Tugatish

8. Quyidagi pseudocode natijasi qanday?

SET x = 5
SET y = 3
IF x > y:
    PRINT "Katta"
ELSE:
    PRINT "Kichik"
  • a) Katta
  • b) Kichik
  • c) 5
  • d) 8

9. AND va OR farqi?

  • a) AND — ikkalasi rost, OR — kamida biri
  • b) AND — kamida biri, OR — ikkalasi
  • c) Farqi yo'q
  • d) AND — son, OR — matn

10. Bubble Sort qaysi naqshga tegishli?

  • a) Search
  • b) Sort
  • c) Filter
  • d) Counting

Scratch (savol 11–15)

11. Scratch'da move 10 steps qaysi kategoriya?

  • a) Looks
  • b) Motion
  • c) Control
  • d) Events

12. forever blokining vazifasi:

  • a) Bir marta ishlash
  • b) Tugagunchaga qadar cheksiz takrorlash
  • c) 10 marta takrorlash
  • d) 1 sekund kutish

13. Sprite'ning kostyumini o'zgartirish:

  • a) next costume
  • b) next backdrop
  • c) move costume
  • d) change color

14. when 🟢 clicked qaysi kategoriya?

  • a) Motion
  • b) Looks
  • c) Events
  • d) Control

15. Variable yaratish uchun qaysi kategoriya?

  • a) My Blocks
  • b) Variables
  • c) Operators
  • d) Sensing

Terminal va Git (savol 16–20)

16. Terminal'da hozirgi papkani ko'rish:

  • a) pwd
  • b) ls
  • c) cd
  • d) mkdir

17. git add . nima qiladi?

  • a) Hammasini commit qiladi
  • b) Hamma o'zgarishlarni staging'ga qo'yadi
  • c) GitHub'ga yuklaydi
  • d) Yangi branch yaratadi

18. Commit message qaysi konventsiyaga ko'ra:

  • a) asdf
  • b) feat: add login form
  • c) xato tuzatildi
  • d) 12345

19. GitHub'dagi repo'ni kompyuterga olish:

  • a) git push
  • b) git pull
  • c) git clone
  • d) git fetch

20. Pull Request nimani anglatadi?

  • a) Faylni o'chirish
  • b) Branchdan main'ga qo'shish so'rovi
  • c) Repo'ni nusxalash
  • d) Bug yaratish

Test javoblari (o'qituvchi uchun)

1-b, 2-b, 3-b, 4-b, 5-b, 6-c, 7-c, 8-a, 9-a, 10-b, 11-b, 12-b, 13-a, 14-c, 15-b, 16-a, 17-b, 18-b, 19-c, 20-b

2-qism: Scratch loyihasi (35 ball)

Vaqt: 30 daqiqa

Vazifa: Tutib oluvchi o'yin (To'liq)

Maqsad: Quyidagi imkoniyatlari bilan to'liq o'yin yarating:

Talab qilingan elementlar

  1. 3 ta sprite (5 ball)

    • Savat (asosiy o'yinchi)
    • Olma (yuqoridan tushuvchi)
    • Tosh (yuqoridan tushuvchi — yomon)
  2. Savatni boshqarish (5 ball)

    • Strelka klavishlar (chap-o'ng)
    • Smooth harakat
    • Ekrandan chiqib ketmasin
  3. Olma va Tosh harakati (5 ball)

    • Clone'lar yordamida
    • Tasodifiy joydan tushish
    • Pastga sekin tushish
  4. Variables (8 ball)

    • score — ball
    • lives — hayotlar (3 ta)
    • time — vaqt (30 sekund)
    • Stage'da ko'rsatish
  5. Tegishish (collision) (5 ball)

    • Olma + Savat: score +1, olma o'chadi
    • Tosh + Savat: lives -1, tosh o'chadi
    • Pastga tushib ketsa: olma — bekor, tosh — bekor
  6. O'yin tugashi (4 ball)

    • lives = 0 yoki time = 0 → game over
    • Final score ko'rsatish
    • "Yutdingiz!" yoki "Yiqildingiz!"
  7. Tovush (3 ball)

    • Olma tutilganda — ovoz
    • Hayot yo'qotilganda — ovoz
    • Game over — ovoz

Saqlash va Share

  1. Scratch'da Save now (saqlash)
  2. Loyiha nomi: imtihon-tutib-oluvchi
  3. Share qiling (yuqoridagi tugma)
  4. Project URL'ini Drive'ga yoki email orqali jo'nating

Baholash mezonlari

MezonBall
3 ta sprite5
Savat boshqaruvi5
Olma + Tosh clone5
3 ta variable to'g'ri ishlatish8
Collision detection5
Game over mantig'i4
Tovush effektlari3
Jami35

3-qism: Git/GitHub amaliy (35 ball)

Vaqt: 35 daqiqa

Vazifa: To'liq Git/GitHub workflow

1. Setup (3 ball)

bash
$ git config --global user.name "Sizning ismingiz"
$ git config --global user.email "sizning@email.com"

Tekshiring:

bash
$ git config --global --list

2. Local repo yaratish (5 ball)

bash
$ cd ~/Documents
$ mkdir imtihon-loyihasi
$ cd imtihon-loyihasi
$ git init

Quyidagi fayllarni yarating:

README.md:

markdown
# Imtihon loyihasi

## Talaba

[Sizning ismingiz va familiyangiz]

## Foundation 3-oy

Bu loyiha 3-oy imtihoni uchun yaratilgan.

## Mavzular

- CS asoslari
- Scratch
- Git va GitHub
- Terminal

about.md:

markdown
# Men haqimda

Men [Ism Familiya], Foundation 3-oy talabasi.

## Yutuqlar

- Word, Excel — to'liq
- AI vositalar — to'liq
- Scratch — birinchi o'yin yaratdim
- Git/GitHub — boshlang'ich daraja

## Maqsad

6 oy ichida dasturchi bo'lish.

.gitignore:

.DS_Store
*.tmp
*.log

3. Commit'lar (7 ball)

Har faylni alohida commit qiling:

bash
$ git add README.md
$ git commit -m "docs: add README"

$ git add about.md
$ git commit -m "docs: add about page"

$ git add .gitignore
$ git commit -m "chore: add gitignore"

4. GitHub repo va push (8 ball)

  1. GitHub'da yangi repo yarating: imtihon-loyihasi (Public, README'siz!)

  2. Local repo bilan bog'lang:

    bash
    $ git remote add origin https://github.com/USERNAME/imtihon-loyihasi.git
    $ git branch -M main
    $ git push -u origin main

5. Branch va o'zgarish (5 ball)

bash
$ git checkout -b feature/skills
$ echo "## Ko'nikmalarim" > skills.md
$ echo "" >> skills.md
$ echo "### Office" >> skills.md
$ echo "- Microsoft Word" >> skills.md
$ echo "- Microsoft Excel" >> skills.md
$ echo "- Microsoft PowerPoint" >> skills.md
$ echo "" >> skills.md
$ echo "### AI" >> skills.md
$ echo "- ChatGPT" >> skills.md
$ echo "- Claude" >> skills.md
$ echo "- Canva AI" >> skills.md
$ echo "" >> skills.md
$ echo "### CS asoslari" >> skills.md
$ echo "- Scratch" >> skills.md
$ echo "- Git/GitHub" >> skills.md
$ echo "- Terminal" >> skills.md

$ git add skills.md
$ git commit -m "feat: add skills list"
$ git push -u origin feature/skills

6. Pull Request (4 ball)

  1. GitHub'da repo sahifasi
  2. Compare & pull request tugmasini bosing
  3. Sarlavha: feat: add skills list
  4. Tavsif:
    Bu PR — `skills.md` faylini qo'shadi.
    
    ## O'zgarishlar
    - Yangi fayl: skills.md
    - Office, AI va CS bo'yicha ko'nikmalar
  5. Create pull request
  6. Merge pull request (o'zingiz merge qiling)

7. Local'ga pull (3 ball)

bash
$ git checkout main
$ git pull
$ ls
# README.md, about.md, .gitignore, skills.md bor bo'lishi kerak

$ git log --oneline
# 4-5 ta commit ko'rinishi kerak

Topshirish

  1. GitHub repo URL'ini email orqali o'qituvchiga jo'nating:

    • Subject: 3-oy imtihon — [Ism Familiya]
    • Body: repo URL + Scratch loyiha URL
  2. Drive'ga screenshot'lar:

    • GitHub repo bosh sahifasi
    • Commits ro'yxati (4+ commit)
    • Pull Request (Merged holatda)
    • Scratch loyiha

Baholash mezonlari

MezonBall
Git setup to'g'ri3
Repo init va fayllar5
Conventional commits (alohida)7
GitHub repo va push8
Branch va o'zgarish5
Pull Request4
Local pull va sync3
Jami35

Imtihondan oldin tayyorgarlik

Tavsiyalar

  1. Yaxshi uxlang — 7+ soat
  2. Internet barqaror bo'lsin
  3. Akkauntlar tekshiring (Scratch, GitHub)
  4. Git o'rnatilganini tekshiring (git --version)
  5. Vaqtni boshqaring:
    • Test: 25 daqiqa
    • Scratch: 30 daqiqa
    • Git/GitHub: 35 daqiqa

Imtihondan keyin

Natijalar

  • 90+ — A+, ajoyib
  • 80–89 — A, juda yaxshi
  • 70–79 — B, yaxshi
  • 60–69 — C, o'tdi
  • < 60 — F, qayta topshirish

Qayta topshirish

60'dan past — 1 hafta ichida.

4-oyga tayyorgarlik

4-oydan boshlab — real dasturlash. C tili o'rganiladi.

Tayyorgarlik

  1. VS Code o'rnatilganini tekshiring
  2. C compiler o'rnatish:
    • Windows: MinGW yoki WSL
    • Mac: Terminal'da clang --version (Xcode bilan keladi)
    • Linux: sudo apt install gcc
  3. Daftar va ruchka — qog'ozda algoritm yozish
  4. GitHub'da c-darslari repo yarating — kelajakdagi vazifalar uchun

4-oyda nima bo'ladi?

OyMavzu
4C — sintaksis, sikllar, funksiyalar
5C — massiv, string, algoritmlar
6Python va yakuniy loyiha

C'da:

  • Hello, World! chiqarish
  • O'zgaruvchilar va turlar
  • if, for, while
  • Funksiya
  • Massiv

Bularning hammasi siz Scratch'da ko'rgan tushunchalar — faqat tekst formati bilan.

Refleksiya

3-oy yakunlangandan keyin — Drive'da Google Doc:

3-oy refleksiya

1. Eng yoqimli dars: ___
2. Eng qiyin mavzu: ___
3. Eng katta yutuq: ___
4. Birinchi marta yaratgan Scratch loyiha: ___
5. GitHub username: ___
6. Birinchi public repo: ___
7. 4-oyga maqsadlar:
   - ___
   - ___
   - ___

Drive havolasini o'qituvchiga jo'nating.

Aloqa

Imtihon vaqtida muammo bo'lsa — darrov o'qituvchini chaqiring.

Yutuqlar tilab qolaman! Endi real dasturlash boshlanadi. 🚀

Master IT o'quv markazi — o'qitish rejasi