Dasturlarni tekshirishning formal usullari Mavzu: Ketma-ket dasturlarni deduktiv tekshirish



Download 20,19 Kb.
Sana23.03.2023
Hajmi20,19 Kb.
#920857

2022/2023-o‘quv yili __-semestrda _______________________ bakalavriat yo‘nalishlarining ____-guruh talabalariga «Dasturiy injiniring» kafedrasi o‘qituvchilari tomonidan o‘tiladigan «Dasturlarni tekshirishning formal usullari»
Mavzu: Ketma-ket dasturlarni deduktiv tekshirish
Ketma-ket dasturlar, yani alg'oritmlar, deduktiv tekshirishni amalga oshirish uchun quyidagi usullardan foydalanish mumkin:
Test qilish: Ketma-ket dasturni o'zgartirishsiz yoki kuchli testlar yordamida sinab ko'ring. Bu, dasturning asosiy funktsiyalarini va xususiyatlari tekshirilgan holda dasturda biron bir xatolik yoki nomutanosiblik borligini aniqlashga yordam beradi.
Kode analiz qilish: Ketma-ket dasturda kodning barcha qismlarini tekshirib, ushbu kodda xatolik yoki nomutanosibliklarni aniqlash mumkin. Bu, xususiyati dastur kichik bo'lsa va biron bir test qilish mumkin bo'lmagan vaqt uchun foydali bo'ladi.
Debug qilish: Debug oynasi yordamida ketma-ket dasturda sodir bo'lgan xatoliklarni topish va ularni tuzatish mumkin. Debug oynasida, dasturning har bir qadamini bajarishni to'xtatib, o'zini tekshirish va muammolarni aniqlash mumkin.
Kodni tiklash: Ketma-ket dasturda kodni to'g'rilash yordamida kodda xatolik yoki nomutanosibliklarini aniqlab, ularni tuzatish mumkin. Buni qilish uchun dasturning qayta yozilishini talab qilish kerak bo'ladi.
Formal verifikatsiya: Ketma-ket dasturda biron bir xatolik qolmaganini tasdiqlash uchun formal verifikatsiya yordamidan foydalanish mumkin. Bu usulda, dasturning ishlashini ko'rsatuvchi matematik modellari ishlatiladi.
Bu usullar ketma-ket dasturlarni deduktiv tekshirish uchun foydalaniladigan eng mashhur usullardir. Ushbu usullarning har biri biror xil natijalarga erishishga yordam beradi.
Deduktiv tekshirish, dasturlarning to'g'ri ishlashi uchun lozim bo'lgan shartlar va ehtimollar to'g'risida chora-tadbirlar amalga oshirish yordamida, dasturlarning xato yoki muammo qolmaganligini tasdiqlash usuli hisoblanadi.
Deduktiv tekshirishning boshqa ma'nolari ham mavjud, shu jumladan, matematik modellarda yoki tizimlarda muhim natijalarga erishishda foydalaniladigan ma'lumotlar yoki aniq xususiyatlarga asoslangan tasdiqlash usuli.
Bu usulda, dasturning to'g'ri ishlashi uchun kerakli bo'lgan barcha shartlar va ehtimollar aniqlanib, dastur yaratuvchisi tomonidan aniqlangan testlar yordamida, dastur to'g'ri ishlashi haqida aniqligi tasdiqlanadi.

Deduktiv tekshirishning muhim asosiy qismi, lozim bo'lgan shartlar va ehtimollar aniqlash va to'g'ri ishlash uchun testlar yaratishdir. Bu testlar odatda katta sonli ma'lumotlar to'plamidan tashkil topgan holda, dasturning barcha funktsiyalarini tekshirish uchun yaratiladi.


Deduktiv tekshirish, dasturlarning to'g'ri ishlashiga nisbatan yuzaga keladigan har qanday muammolarni aniqlashga yordam beradi va dasturni yaxshilash uchun zarur bo'lgan o'zgarishlarni belgilashga imkon beradi.


Deduktiv tekshirishda bir necha sinflarga bo'linadi, masalan, funksiyalar, klaslar, sinfdagi obyektlar va h.k. Shu sababli, quyidagi C++ kodida deduktiv tekshirishni ko'rsatishning yalpi darajasini ko'rsataman:
#include
using namespace std;

bool isEqual(int a, int b) {


if (a == b) {
return true;
} else {
return false;
}
}

int main() {


int x = 3;
int y = 4;
bool result;

result = isEqual(x, y);


if (result == true) {


cout << "x va y o'zaro teng." << endl;
} else {
cout << "x va y o'zaro teng emas." << endl;
}

return 0;


}
Deduktiv tekshirishda bir necha sinflarga bo'linadi, masalan, funksiyalar, klaslar, sinfdagi obyektlar va h.k. Shu sababli, quyidagi C++ kodida deduktiv tekshirishni ko'rsatishning yalpi darajasini ko'rsataman:

c
Copy code


#include
using namespace std;

bool isEqual(int a, int b) {


if (a == b) {
return true;
} else {
return false;
}
}

int main() {


int x = 3;
int y = 4;
bool result;

result = isEqual(x, y);


if (result == true) {


cout << "x va y o'zaro teng." << endl;
} else {
cout << "x va y o'zaro teng emas." << endl;
}

return 0;


}
Bu kodda, isEqual nomli bir funktsiya yaratilgan. Bu funktsiya ikkita butun sonni qabul qilib, ularning qiymatlari bir-biriga teng ekanligini aniqlaydi. Agar ikkisi bir-biriga teng bo'lsa, true qiymati qaytariladi; aks holda false qiymati qaytariladi.
Dasturda, x va y o'zgaruvchilariga mos qiymatlar ta'qdim etiladi. result o'zgaruvchisi isEqual funktsiyasini chaqiradi va isEqual funktsiyasidan qaytgan qiymatni saqlaydi.
So'nggi qadamda, result o'zgaruvchisining qiymati tekshiriladi. Agar true qiymati qaytgan bo'lsa, x va y o'zaro teng ekanligini tasdiqlash uchun cout operatori yordamida ma'lumot konsolga chiqariladi. Aks holda, x va y o'zaro teng emasligini tasdiqlash uchun ma'lumot konsolga chiqariladi.
Bu kod, deduktiv tekshirishning asosiy qismlarini ko'rsatadi, shu jumladan, funktsiyalar yaratish, amallar chaqirish va yordamchi o'zgaruvchilardan foydalanish.

Download 20,19 Kb.

Do'stlaringiz bilan baham:




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