Tizimli va amaliy dasturlashtirish



Download 238,35 Kb.
Pdf ko'rish
bet1/4
Sana08.11.2022
Hajmi238,35 Kb.
#862323
  1   2   3   4
Bog'liq
1- amaliy ish topshirigi DTQvaE



O’ZBEKISTON RESPUBLIKASI AXBOROT TEXNOLOGIYALARI VA 
KOMMUNIKASIYALARINI RIVOJLANTIRISH VAZIRLIGI 
 
MUHAMMAD AL-XORAZMIY NOMIDAGI 
 TOSHKENT AXBOROT TEXNOLOGIYALARI UNIVERSITETI 
“TIZIMLI VA AMALIY DASTURLASHTIRISH” KAFEDRASI 
“DASTURIY TA’MINOT QURILMASI VA EVOLYUSIYASI” 
 
FANIDAN 
 
1 - AMALIY ISH 
Bajardi __________________________ 
(f.i.sh.) 
________________________________ 
(guruh) 
Tekshirdi: Sharipov Bahodir Akilovich 
_______________________________ 
 
 
 
 
 
 
 
 
 
 
 
 
 
TOSHKENT – 2022 



1- AMALIY ISH. 
Mavzu: HALSTEDNING MURAKKABLIK O‘LCHOVLARI 
Ishning maqsadi: Halsted dasturlarining metrik nazariyasi asoslarini 
o'rganish, dastur modullari uchun miqdoriy xarakteristikalarni hisoblash. 
Vazifa: 
1.
Nazariy material bilan tanishish. 
2.
Berilgan masala uchun dastur yozish, murakkablikni aniqlash uchun 
Halstedning murakkablik o‘lchovlari asosida dasturning miqdoriy 
xarakteristikalarni hisoblash. 
3.
Amaliy ish bo’yicha hisobot tayyorlash. 
NAZARIY QISM 
Dasturiy ta’minotni konstruktsiyalash (“Software Construction”) bilim sohasi 
quyidagi bo’limlarni o’z ichiga oladi: 

murakkablikni kamaytirish (
Reduction
in Complexity), 

uslubdan og’ishning oldini olish (Anticipation of 
Diversity
), 

sinovlarni tuzilmalashtirish (Structuring for Validation), 

tashqi standartlardan foydalanish (Use of External Standards). 
Murakkablikni kamaytirish - bu konstruktsiyalashdagi murakkablikni 
minimallashtirish, kamaytirish va alohida qismlarga bo’lish. Murakkablikni 
minimallashtirish, ijrochilarning murakkab tuzilmalarni va uzoq vaqt davomida 
katta hajmdagi ma’lumotlarni qayta ishlash qobiliyatining cheklanganligi bilan 
belgilanadi. Murakkablikni minimallashtirishga, xususan, konstruktsiyalash 
jarayonida modullar va boshqa sodda elementlardan foydalanish, shuningdek, 
standartlarning tavsiyalari yordamida erishiladi. 
Dasturiy ta’minotning murakkabligi
 
- bu dasturlashning ajralmas xususiyati 
bo’lib, u dasturlarni yaratish vaqti va xarajatlarida, dastur matnining hajmida yoki 
uzunligida, boshqaruvni uzatuvchi operatorlari (tarmoqlanish operatorlari, davriy 
operatorlar, funktsiyalarni chaqirish) tomonidan o’rnatilgan mantiqiy tuzilishining 
xususiyatlarida namoyon bo’ladi. Dasturiy ta’minot ko’rsatkichi - bu dasturiy 
ta’minotning ba’zi xususiyatlari yoki uning texnik xususiyatlarining raqamli 
qiymatini olish imkonini beruvchi o’lchov. Miqdoriy usullar boshqa sohalarda 
yaxshi ishlaganligi sababli, ko’plab kompyuter olimlari va amaliyotchilar ushbu 
yondashuvni dasturiy ta’minotni ishlab chiqishga o’tkazishga harakat qilishdi. 
Amaldagi o’lchovlar to’plamiga quyidagilar kiradi: 

o’sish tartibi (asimptotik tahlil va O-notatsiya nuqtai nazaridan algoritmlarni 
tahlil qilishni anglatadi), 

kod satrlari soni, 

siklomatik murakkablik, 

funktsiya nuqtalarini tahlil qilish, 

kodning 1000 satridagi xatolar soni, 

test orqali kodni qamrab olish darajasi, 

talablarni qoplash , 




sinflar va interfeyslar soni, 

bog’liqlik. 
Dastur kodidagi ba’zi ko’rsatkichlarni hisoblashga asoslangan o’lchamlar 
guruhiga Halsted o’lchamlari kiradi. Ushbu o’lchamlar quyidagilarga asoslanadi: 
n1 — dasturning takrorlanmas operatorlari soni, jumladan ajratuvchi belgilar, 
protsedura nomlari va operatsiya belgilari (operatorlar lug’ati); 
n2 — dasturning takrorlanmas operandlari soni (operandlar lug’ati); 
N1 — dasturdagi operatorlarning umumiy soni; 
N2 — dasturdagi operandlarning umumiy soni; 
n1’ — dasturning takrorlanmas operatorlarning nazariy soni; 
n2’ — dasturning takrorlanmas operandlarning nazariy soni. 
Kiritilgan belgilarni hisobga olgan holda, biz quyidagilarni aniqlashimiz 
mumkin: 
n=n1+n2 — dastur lug’ati; 
N=N1+N2 — dastur uzunligi; 
n’=n1’+n2’ — bu dasturning nazariy lug’ati; 
N’= n1*log2(n1) + n2*log2(n2) - dasturning nazariy uzunligi (stilistik 
jihatdan to’g’ri bo’lgan dasturlar uchun N ning N’ dan chetlanishi 10% dan 
oshmaydi); 
V=N*log2n — dastur hajmi; 
V’=N’*log2n’ - dasturning nazariy hajmi, bu yerda n* - dasturning nazariy 
lug’ati; 
L=V’/V — dasturlash sifat darajasi, ideal dastur uchun L=1; 
L’= (2 n2)/ (n1*N2) — nazariy parametrlarni hisobga olmagan holda faqat 
real dastur parametrlariga asoslangan dasturlash sifat darajasi; 
EC=V/(L’)2 — dasturni tushunishning murakkabligi; 
D=1/ L’ - dasturni kodlashning murakkabligi; 
y’ = V/ D2 — ifodaning til darajasi; 
I=V/D — dasturning axborot mazmuni, bu xususiyat dasturni yaratish uchun 
aqliy xarajatlarni aniqlash imkonini beradi; 
E=N’ * log2(n/L) — dasturni ishlab chiqishda zarur bo’lgan intellektual 
harakatni baholash, dasturni yozishda talab qilinadigan elementar qarorlar sonini 
tavsiflash. 
Halsted o‘lchamlarini tushunish uchun quyidagi misolni ko‘rib chiqamiz: 
Misol sifatida pufakchali saralash algoritmining dasturini keltiramiz. Bu dastur C++ 
dasturlash tilida yozilgan. 
/* Pufakchali saralash algoritmining C++ tilidagi dasturi */ 
int main() 
{ int *arr; int size, temp; cout << "n = "; cin >> size; 
if (size <= 0) { cerr << "Invalid size" << endl; return 1; } 
arr = new int[size]; 
for (int i = 0; i < size; i++) { cout << "arr[" << i << "] = "; cin >> arr[i]; } 
for (int i = 0; i < size - 1; i++)
{ for (int j = 0; j < size - i - 1; j++)



{ if (arr[j] > arr[j + 1])
{ temp = arr[j]; arr[j] = arr[j + 1]; arr[j + 1] = temp; } } } 
for (int i = 0; i < size; i++) { cout << arr[i] << " "; } 
cout << endl; delete [] arr; 
return 0; } 
Dasturning takrorlanmas operatorlari (operatorlar lug‘ati) sonini hisoblab 
chiqamiz. Bu holda ajratuvchi belgilar, dastur(yoki funktsiya) nomlari va operatsiya 
belgilarini ham qo‘shib hisoblaymiz:

Download 238,35 Kb.

Do'stlaringiz bilan baham:
  1   2   3   4




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish