BIR QARASHDA !
while tsikli uchun aniqlashtirish bosqichi yoki
do-while sikli
O'zgaruvchilarni e'lon qilish va ishga tushirish
Mustaqil ish
Videolar
Bosqichma-bosqich takomillashtirish texnikasi
Dasturlash uslubi
Imperativ dasturlash
Modulni ishlab chiqish uchun zarur bo'lgan qadamlar
dastur
Yuqoridan pastga modulli dasturlash
Pastdan yuqoriga modulli dasturlash
Strukturaviy dasturlash
Ob'ektga yo'naltirilgan dasturlash
Misol bilan psevdo kod
Samarali bosqichma-bosqich takomillashtirish qadamlari
16.8.2021
Bosqichma-bosqich takomillashtirish texnikasi
Agar bizda tegishli matematik bo'lsa, biz norasmiy algoritm yozishimiz mumkin
muammo uchun model.
Algoritmning dastlabki versiyasida umumiy bayonotlar bo'ladi, ya'ni.
norasmiy ko'rsatmalar.
Keyin bu norasmiy algoritmni rasmiy algoritmga aylantiramiz, ya'ni ko'proq
har qanday dasturlash tili sintaksisini qo'llash orqali aniq ko'rsatmalar va
semantika qisman.
Nihoyat, rasmiy algoritmni a ga aylantirish orqali dastur ishlab chiqilishi mumkin
dasturlash tili qo'llanma.
Yuqoridagi muhokamadan biz bir necha qadamlar borligini tushundik
matematik modeldan dasturga erishish.
Har bir qadamda takomillashtirish (yoki konvertatsiya) mavjud.
Bosqichma-bosqich takomillashtirish texnikasi
Ya'ni norasmiy algoritmni dasturga aylantirish uchun biz o'tishimiz kerak
Biz dasturga kelgunimizcha rasmiylashtirishning bir necha bosqichlari - uning ma'nosi
rasmiy ravishda dasturlash tili qo'llanmasi bilan belgilanadi - bosqichma-bosqich deb ataladi
takomillashtirish texnikasi.
Shaklda tasvirlangan takomillashtirish jarayonida uchta bosqich mavjud
Bosqichma-bosqich takomillashtirish texnikasi
1. Modellashtirishning birinchi bosqichida muammoni an yordamida ifodalashga harakat qilamiz
Grafik, daraxt va boshqalar kabi tegishli matematik model. Ushbu bosqichda
muammoning yechimi juda norasmiy tarzda ifodalangan algoritmdir.
2. Keyingi bosqichda algoritm psevdo-tilda (yoki rasmiy) yoziladi.
algoritm) ya'ni har qanday dasturlash tili konstruktsiyalarining aralashmasi va kamroq rasmiy ingliz bayonotlari. ustida bajariladigan operatsiyalar
har xil turdagi ma'lumotlar o'zgarmas bo'ladi.
3. Yakuniy bosqichda biz har bir mavhum ma'lumotlar turi uchun dasturni tanlaymiz
va ushbu turdagi turli operatsiyalar uchun protseduralarni yozing. The
psevdo-til algoritmidagi qolgan norasmiy bayonotlar almashtiriladi
(yoki har qanday dasturlash tili) C/C++ kodi orqali.
Dasturlash uslubi
1. Protsessual
2. Modulli
3. Strukturaviy
4. Ob'ektga yo'naltirilgan
1.Protsessual dasturlash
Protsessual dasturlash - bu foydalanish kontseptsiyasiga asoslangan paradigma
protseduralar. Jarayon (ba'zan kichik dastur, muntazam yoki
usuli) - bajariladigan buyruqlar ketma-ketligi.
Har qanday protsedurani umumiy dasturning istalgan nuqtasidan chaqirish mumkin,
shu jumladan boshqa protseduralar yoki hatto o'zi (natijada rekursiya).
Ilovalar - Dasturlash uslubi
Protsessual dasturlash keng ko'lamli loyihalarda keng qo'llaniladi,
quyidagi imtiyozlar muhim bo'lganda:
• protseduralar sifatida ishlab chiqilgan bo'lak kodlarining qayta ishlatilishi
• dastur mantig'iga amal qilish qulayligi;
• Kodning saqlanishi.
• Asosiy urg‘u narsalarni (algoritmlarni) bajarishga qaratiladi.
• Aksariyat funktsiyalar global ma'lumotlarni almashadi.
• Ma'lumotlar tizim bo'ylab funksiyadan funksiyaga ochiq harakat qiladi.
• Funksiyalar ma'lumotlarni bir shakldan ikkinchisiga o'zgartiradi.
Imperativ dasturlash
Protsessual dasturlash imperativ dasturlashning kichik paradigmasidir, chunki
yordamida bo'lsa ham hisoblashning har bir bosqichi aniq tasvirlangan
tartiblarni belgilash.
Modulli dasturlash
Dastur asta-sekin kichikroq bo'limga bo'linadi
modullar. Dastur osongina modulli shaklda yozilishi mumkin, bu esa imkon beradi
individual pastki ketma-ketlikda parchalanishi uchun umumiy muammo
dasturlari.
Shunday qilib, biz ketma-ket bo'ysunuvchiga bo'lingan modulni ko'rib chiqishimiz mumkin
modul. Aksincha, bir qancha modullar birlashib a ni tashkil qilishi mumkin
ustun modul.
A sub-modul, dastur va oliy boshqa joyda joylashgan
modul, agar kerak bo'lsa, bo'ysunuvchi modulga havola qiling va
uni amalga oshirishga chaqirish.
Yuqori modulning bir qismidagi ushbu faoliyat chaqiruv sifatida tanilgan va bu
modul chaqiruvchi modul, sub modul esa chaqiruvchi deb ataladi
modul. Sub modul funksiya yoki kabi pastki dasturlar bo'lishi mumkin
protseduralar.
Modulli dasturni ishlab chiqish uchun zarur qadamlar
1. Muammoni aniqlang
2. Maqsadga erishish uchun zarur bo'lgan bosqichlarni belgilang
3. Muammoni kichik vazifalarga ajrating
4. Har bir kichik vazifa uchun kichik dastur prototipini yarating
5. Har bir kichik dastur uchun 3 va 4-bosqichlarni keyingi parchalanishgacha takrorlang
qarshi samarali ko'rinadi Modulli dasturlash turlari
Modulli dasturlash juda protsessualdir.
Asosiy e'tibor butunlay kodni (funktsiyalarni) yozishga qaratilgan. Modulda ma'lumotlar passivdir
Dasturlash.
Modulli dasturlash boshqaruv o'zgaruvchilari va bayroqlardan foydalanishni rad etadi
parametrlar; ularning mavjudligi qo'ng'iroq qiluvchining ham bilishi kerakligini ko'rsatadi
funktsiya qanday amalga oshirilishi haqida ko'p.
Modulli dasturlash uchun ikkita usuldan foydalanish mumkin. Ular sifatida tanilgan
yuqoridan pastga va pastdan yuqoriga. Yuqoridan pastga yoki nima bo'lishidan qat'iy nazar
pastdan yuqoriga usuli qo'llaniladi, yakuniy natija modulli dasturdir.
Bu yakuniy natija muhim, chunki barcha xatolarni aniqlash mumkin emas
dastlabki sinov vaqti. Hali ham xatolar mavjud bo'lishi mumkin
dastur.
Agar dastur to'liq sinovdan o'tkazilgandan keyin xato aniqlansa,
keyin tegishli modullar ular tomonidan ajratilishi va qayta sinovdan o'tkazilishi mumkin.
Modulli dasturlashning afzalliklari
Foydalanilgan dizayn usulidan qat'i nazar, agar dastur yozilgan bo'lsa
modulli shaklda xato manbasini aniqlash va uni sinab ko'rish osonroq
izolyatsiya, agar dastur bitta funktsiya sifatida yozilgan bo'lsa.
Modulli dasturlashning afzalliklari
1. Butun muammoning murakkabligini kamaytiring
2. Kodning takrorlanishidan saqlaning
3. disk raskadrovka dasturi osonroq va ishonchli
4. Ish faoliyatini yaxshilaydi
5. Modulli dastur ma'lumotlar strukturasidan foydalanishni yashiradi
6. Global ma'lumotlar modulda ham yashiringan
7. Qayta foydalanish imkoniyati- modullarni qayta yozmasdan boshqa dasturda foydalanish mumkin va
qayta sinovdan o'tkazish
Yuqoridan pastga modulli dasturlash
8. Modulli dastur dasturning harakatchanligini yaxshilaydi
9. Rivojlanish ishlarini kamaytiradi
Yuqoridan pastga modulli dasturlash
Yuqoridan pastga loyihalash tamoyillari dasturni bo'linishni talab qiladi
asosiy modulga va unga tegishli modullarga.
Har bir modul, shuningdek, dasturiy ta'minot bo'yicha kichik modullarga bo'linishi kerak
muhandislik va dasturlash uslubi.
Modullarning bo'linishi modul faqat quyidagilardan iborat bo'lgunga qadar davom etadi
o'z-o'zidan tushuniladigan va bundan keyin bo'lishi mumkin bo'lmagan elementar jarayon
bo'linadi.
Dasturlash uslubi
1. Protsessual
2. Modulli
3. Strukturaviy
4. Ob'ektga yo'naltirilgan
1.Protsessual dasturlash
Protsessual dasturlash - bu foydalanish kontseptsiyasiga asoslangan paradigma
protseduralar. Jarayon (ba'zan kichik dastur, muntazam yoki
usuli) - bajariladigan buyruqlar ketma-ketligi. Har qanday protsedurani umumiy dasturning istalgan nuqtasidan chaqirish mumkin,
shu jumladan boshqa protseduralar yoki hatto o'zi (natijada rekursiya).
Yuqoridan pastga algoritm dizayni
Yuqoridan pastga algoritmni loyihalash - bu tartibga solish va kodlash texnikasi
modullar ierarxiyasi qo'llaniladigan dasturlar va ularni buzish
spetsifikatsiya har biri bitta yozuvga ega bo'lgan sodda va sodda qismlarga bo'linadi
va bitta chiqish nuqtasi bo'lib, unda boshqaruv pastga qarab o'tadi
strukturaning yuqori darajalariga shartsiz shoxlarsiz tuzilish.
Ya'ni, yuqoridan pastga dasturlash asosan modullarni yaratishga intiladi
funksionallik, odatda funksiyalar yoki protseduralar yoki usullar shaklida.
Pastdan yuqoriga modulli dasturlash
Pastdan yuqoriga algoritm dizayni yuqoridan pastga qarama-qarshidir.
Bu dastur tuzilgan dasturlash uslubiga ishora qiladi
dasturlash tilining mavjud primitivlaridan boshlab, va
asta-sekin ko'proq va yanada murakkab xususiyatlarni qurish, hammasi bo'lgunga qadar
ariza yozilgan.
Ya'ni, dizaynni muayyan modullar bilan boshlash va ularni ko'proq qilish
murakkab tuzilmalar, tepada tugaydi. Pastdan yuqoriga ko'tarish usuli keng qo'llaniladi
test uchun, chunki eng past darajadagi funktsiyalarning har biri yozilgan va sinovdan o'tgan
birinchi.
Ushbu test past darajadagi funktsiyalarni chaqiradigan maxsus test funktsiyalari tomonidan amalga oshiriladi,
ularni turli parametrlar bilan ta'minlash va natijalarini tekshirish
to'g'rilik.
Pastdan yuqoriga modulli dasturlash
Eng past darajadagi funktsiyalar sinovdan o'tkazilgandan va to'g'ri ekanligi tasdiqlangandan so'ng,
keyingi darajadagi funktsiyalar sinovdan o'tkazilishi mumkin. Chunki eng past darajadagi funksiyalar allaqachon
sinovdan o'tgan bo'lsa, har qanday aniqlangan xatolar, ehtimol, yuqori darajaga bog'liq
funktsiyalari. Bu jarayon davom etib, darajalarni yuqoriga ko'tarib, nihoyat asosiyga qadar davom etadi
funktsiyasi sinovdan o'tkaziladi.
Strukturaviy dasturlash
Bu dasturlash uslubi; va bu dasturlash uslubi ma'lum
bir nechta nomlar bilan: Protsessual dekompozitsiya, Strukturaviy
dasturlash va boshqalar.
Strukturaviy dasturlash tuzilmalar bilan dasturlash emas
lekin dasturlarni yozish uchun quyidagi turdagi kod tuzilmalaridan foydalangan holda:
1. Ketma-ket bajariladigan gaplar ketma-ketligi
2. Ko'rsatmalarning shartli bajarilishi (ya'ni, "agar" bayonotlari)
3. Loop yoki iteratsiya (ya'ni, "for, do...while va while"
bayonotlar)
4. Strukturalangan pastki dastur chaqiruvlari (ya'ni, funktsiyalar)
Strukturaviy dasturlash
Xususan, quyidagi tillardan foydalanish taqiqlanadi:
• “O'tish” bayonotlari
• Looplar o'rtasidan "buzish" yoki "davom etish"
• Funksiya/protsedura/kichik dasturga bir nechta chiqish nuqtalari (ya'ni, bir nechta
"Qaytish" bayonotlari)
• Funksiya/protsedura/kichik dastur/usulga bir nechta kirish nuqtalari
Dasturlashning ushbu uslubida amalga oshirish tafsilotlari katta xavf tug'diradi Ko'pgina ma'lumotlar tuzilmalari funktsiyalar o'rtasida taqsimlanishi kerak va shuning uchun
global miqyosda namoyon bo'ladi.
Bu o'z navbatida boshqa funktsiyalarni ushbu amalga oshirish tafsilotlaridan foydalanishga undaydi;
Shunday qilib, turli qismlar o'rtasida kiruvchi bog'liqliklar paydo bo'ladi
dastur.
Strukturaviy dasturlashning afzalliklari
Asosiy kamchilik shundaki, barcha qarorlar boshidanoq qabul qilinadi
loyiha to'g'ridan-to'g'ri yoki bilvosita yuqori darajadagi spetsifikatsiyaga bog'liq
ilova.
Ma'lumki, bu spetsifikatsiya vaqt o'tishi bilan o'zgarib turadi.
Bu sodir bo'lganda, dasturning katta qismlariga katta xavf tug'iladi
qayta yozish kerak.
Strukturaviy dasturlashning afzalliklari
1. ravshanlik: tuzilgan dasturlash ularning aniqligi va mantiqiy naqshiga ega
boshqaruv tuzilmasi va dasturlashning ushbu ulkan o'sishi tufayli
hosildorlik
2. Strukturaviy dasturlashning yana bir kaliti shundaki, har bir kod blokida a
bitta kirish nuqtasi va bitta chiqish nuqtasi.shuning uchun biz uzoq ketma-ketlikni buzishimiz mumkin
kodni modullarga aylantiradi
Ob'ektga yo'naltirilgan dasturlash
3. Xizmat ko'rsatish: strukturaga xos bo'lgan aniqlik va modullik
dasturlash xatoni topish va keraklisini qayta loyihalashda katta yordam beradi
kod bo'limi.
Ob'ektga yo'naltirilgan dasturlash
Ob'ektga yo'naltirilgan yondashuvni ixtiro qilishda asosiy rag'batlantiruvchi omil - bu
protsessual yoki modulda uchraydigan ba'zi kamchiliklarni olib tashlash
yondashuv.
OOP ma'lumotlarga dasturni ishlab chiqishda muhim element sifatida qaraydi va shunday qiladi
uning tizim atrofida erkin oqishiga yo'l qo'ymang.
U ma'lumotlarni o'zida ishlaydigan funktsiyaga yaqinroq bog'laydi va uni himoya qiladi
tashqi funktsiyadan tasodifiy o'zgartirishdan.
OOP muammoni chaqirilgan bir qator ob'ektlarga ajratish imkonini beradi
ob'ektlarni yaratadi va keyin ushbu ob'ektlar atrofida ma'lumotlar va funksiyalarni quradi.
Ob'ektga yo'naltirilgan dasturlash
Ob'ektga yo'naltirilgan dasturlarda ma'lumotlar va funktsiyalarni tashkil qilish bo'yicha ko'rsatilgan
Anjir.
Ob'ekt ma'lumotlariga faqat bog'langan funksiya orqali kirish mumkin
o'sha ob'ekt. Biroq, bir ob'ektning funktsiyasi boshqasining funktsiyasiga kirishi mumkin
ob'ektlar.
Obektga yo'naltirilgan dasturlashning xususiyatlari
• Jarayonga emas, balki ma'lumotlarga e'tibor qaratiladi.
• Dasturlar ob'ektlar deb ataladigan narsalarga bo'linadi.
• Ma'lumotlar tuzilmalari shunday tuzilganki, ular xarakterlanadi
ob'ektlar.
• Ob'ekt ma'lumotlari ustida ishlaydigan funksiyalar bir-biriga bog'langan
ma'lumotlar strukturasida.
• Ma'lumotlar yashirin va tashqi funktsiyadan foydalanib bo'lmaydi.
• Ob'ektlar funksiya orqali bir-biri bilan aloqa qilishi mumkin.
• Yangi ma'lumotlar va funksiyalarni istalgan vaqtda osongina qo'shish mumkin
zarur.
• Dasturni loyihalashda pastdan yuqoriga yondashuvga amal qiladi.
Pseudo-kod Bosqichma-bosqich takomillashtirish jarayonining asosi psevdokod, a
past darajadagi dizayn vositasi yoki yozuv shlyapasi bizga yozish uchun moslashuvchanlikni beradi
Biz hali to'liq tushunmagan algoritmlar.
Pseudo-kod, shuningdek, "tuzilgan ingliz tili" sifatida ham tanilgan (hech bo'lmaganda
Ingliz tilida so'zlashuvchi mamlakatlar), psevdokoddan foydalanadi
Dasturlash tiliga o'xshash boshqaruv tuzilmalari
Ketma-ketlik - bir narsadan keyin
Tanlash - agar
Takrorlash – while, fo
funktsiyalar va ma'lumotlarning tabiiy tilda (inglizcha) tavsiflari
guruhlash va o'qish uchun dastur uslubidagi chekinish va \{~\}
Pseudo-kod misoli
void PrimerElection() {
barcha nomzodlarni o'qing; praymeriz o'tkazadigan shtatlarning # tasini o'qing;
har bir bunday holat uchun {
ushbu shtatda berilgan ovozlarni o'qish;
nomzodlarga delegatlar tayinlash;}
har bir nomzod uchun c {
nomzod (c) uchun hisobotni chop etish
}
}
Samarali bosqichma-bosqich takomillashtirish qadamlari
Muammoning dastlabki bayonotidan boshlang
Uni bir necha umumiy bosqichlarga ajrating
Har bir "qadam" ni oling va uni batafsilroq bosqichlarga bo'ling
Jarayonni har bir "qadam" bo'yicha takrorlashni davom eting, siz buzilishni olmaguningizcha
juda aniq va psevdokodda ko'proq yoki kamroq yozilishi mumkin
Psevdokodni haqiqiy kodga tarjima qiling
Misol
Muammo bayoni: test baholari to'plami uchun o'rtacha sinfni aniqlang,
foydalanuvchi tomonidan kiritilgan. Test baholari soni oldindan ma'lum emas (shuning uchun
Buni ko'rsatish uchun foydalanuvchi maxsus kodni -- "qo'riqchi" qiymatini kiritishi kerak bo'ladi
u baholarni yozishni tugatdi).
Samarali bosqichma-bosqich takomillashtirish qadamlari
Muammoning dastlabki bayonotidan boshlang
Uni bir necha umumiy bosqichga ajrating
Har bir "qadam" ni oling va uni batafsilroq bosqichlarga bo'ling
Jarayonni har bir "qadam" bo'yicha takrorlashni davom eting, siz buzilishni olmaguningizcha
juda aniq va psevdokodda ko'proq yoki kamroq yozilishi mumkin
Psevdokodni haqiqiy treskaga tarjima qiling
Misol
Muammo bayoni: test baholari to'plami uchun o'rtacha sinfni aniqlang,
foydalanuvchi tomonidan kiritilgan. Test baholari soni oldindan ma'lum emas (shuning uchun
Buni ko'rsatish uchun foydalanuvchi maxsus kodni -- "qo'riqchi" qiymatini kiritishi kerak bo'ladi
u baholarni yozishni tugatdi).
Dastlabki bosqichlarga bo'linish
Oʻzgaruvchilarni eʼlon qilish va ishga tushirish. Baholarni kiritish (foydalanuvchiga tezkorlik kiritish va kiritishga ruxsat berish)
O'rtacha sinf va chiqish natijasini hisoblang. Endi "hisoblash" ni ajratib oling
oldinga qadam, biz oldik:
Hisoblash:
baholarni qo'shing
baholarni hisoblang yig'indini sanoqqa bo'ling
Biz bu muammo bo'lishini tushundik, chunki qilishdan oldin barcha kiritishni qilish kerak
yig'indisi va soni bizdan hamma uchun etarli o'zgaruvchilarga ega bo'lishni talab qiladi
baholar (lekin kiritilishi kerak bo'lgan baholar soni oldindan ma'lum emas).
Shunday qilib, biz "qadamlar" bo'limini qayta ko'rib chiqdik.
Qadamlarning qayta ko'rib chiqilgan taqsimoti
Qadamlarning qayta ko'rib chiqilgan taqsimoti
O'zgaruvchilarni e'lon qilish va ishga tushirish
Kiritish baholari -- kiritilgan baholarni hisoblang va qo'shing
O'rtacha sinfni hisoblash
Bosqichlarni kichikroq bosqichlarga bo'lish
Shunday qilib, endi biz ushbu 3 bosqichni batafsilroq ajratishimiz mumkin.
Kirish bosqichi taxminan quyidagicha taqsimlanishi mumkin:
foydalanuvchi sentinel qiymatini kiritmaguncha pastadir (-1 yaxshi bo'lardi)
foydalanuvchini baho kiritishni taklif qilish (kerakli ma'lumotlarni bering, masalan, chiqish uchun -1)
foydalanuvchiga baho yozishga ruxsat berish (o'zgaruvchida saqlash)
yig'indini saqlash uchun ishlatiladigan o'zgaruvchiga baho qo'shing, hisoblagichga 1 qo'shing (qancha
baholar)
For while yoki do-while siklini takomillashtirish bosqichi
Biz buni maxsus ravishda while yoki do-while sikli sifatida yozishimiz mumkin. Shunday qilib, bitta
Pseudo-kodni ko'proq shakllantirish uchun ko'proq tozalash bosqichi yaxshi fikr bo'ladi
biz yozishimiz kerak bo'lgan haqiqiy kod kabi.
Misol uchun:
Do
foydalanuvchini baho kiritishni taklif qilish (kerakli ma'lumotlarni bering, masalan, chiqish uchun -1)
foydalanuvchiga baho yozishga ruxsat berish (o'zgaruvchida saqlash)
bahoni yig'indini saqlash uchun ishlatiladigan o'zgaruvchiga qo'shing
hisoblagichga 1 qo'shing (qancha baholarni kuzatish uchun)
foydalanuvchi sentinel qiymatini kiritmagan bo'lsa (-1 yaxshi bo'lardi)
For while yoki do-while siklini takomillashtirish bosqichi
Agar biz ushbu formatga qarasak, biz "qo'shish" va "hisoblash" bosqichlarini tushunamiz
Agar foydalanuvchi yozuvi baho bo'lsa, bajarilishi kerak, agar u baho bo'lsa EMAS
sentinel qiymati. Shunday qilib, biz yana bir takomillashtirishni qo'shishimiz mumkin:
qilmoq
foydalanuvchini baho kiritishni taklif qilish (kerakli ma'lumotlarni bering, masalan, chiqish uchun -1)
foydalanuvchiga baho yozishga ruxsat berish (o'zgaruvchida saqlash)
agar kiritilgan qiymat GRADE bo'lsa (nazoratchi qiymat emas)
yig'indini saqlash uchun ishlatiladigan o'zgaruvchiga baho qo'shing, hisoblagichga 1 qo'shing (to
qancha baholarni kuzatib boring)
foydalanuvchi sentinel qiymatini kiritmagan bo'lsa (-1 yaxshi bo'lardi)
O'zgaruvchilarni e'lon qilish va ishga tushirish
Bu parchalanish bizga qanday o'zgaruvchilar kerakligini ko'rishga yordam beradi, shuning uchun
o'zgaruvchilarni e'lon qilish va ishga tushirish bosqichi endi amalga oshirilishi mumkin
aniqroq:
o'zgaruvchilarni ishga tushirish:
baho o'zgaruvchisi (foydalanuvchi yozuvini saqlash uchun)
yig'indisi o'zgaruvchisi (0 ga boshlangan) hisoblagich (0 ga boshlangan)
Javobni hisoblash va chop etish bosqichi quyidagicha bo'ladi:
summani hisoblagichga bo'ling va natijani saqlang
chop etish natijasi
Hammasini bir joyga qo'yish
Bu taxminan dars oxirida biz uni qoldirgan joy:
o'zgaruvchilarni ishga tushirish:
baho o'zgaruvchisi (foydalanuvchi yozuvini saqlash uchun)
summa o'zgaruvchisi (0 ga boshlangan)
hisoblagich (0 ga boshlangan) sinfga kirish:
qilmoq
foydalanuvchini baho kiritishni taklif qilish (kerakli ma'lumotlarni bering, masalan, chiqish uchun -1)
foydalanuvchiga baho yozishga ruxsat berish (o'zgaruvchida saqlash)
Hammasini bir joyga qo'yish
agar kiritilgan qiymat GRADE bo'lsa (nazoratchi qiymat emas)
bahoni yig'indini saqlash uchun ishlatiladigan o'zgaruvchiga qo'shing
hisoblagichga 1 qo'shing (qancha baholarni kuzatish uchun)
foydalanuvchi sentinel qiymatini kiritmagan bo'lsa (-1 yaxshi bo'lardi)
O'rtacha hisob:
summani hisoblagichga bo'ling
javobni chop eting
Mustaqil Wor
Tartiblash. Saralash muammosi. Umumiy tartiblash
strategiyalar.
Xesh jadvallari.
Python dasturlash haqida qisqacha video -
Modulli dasturchiga kirish
https://www.youtube.com/watch?v=PB
UtAdR1n6g&t=58s
Foydalanish bosqichma-bosqich takomillashtirish haqida qisqacha video
psevdokod
https://www.youtube.com/watch?v=6
WuVZ2QUvGE
16.8.2021
Strukturaviy dasturlash haqida qisqacha video
https://www.youtube.com/watch?v=T