• 52. Dasturda yuz beradigan xatoliklar.Semantik xatolar 52  51 bilan bir xil ekan 53. Dasturda yuz beradigan xatoliklar.Mantiqiy xatolar
  • 51. Dasturda yuz beradigan xatoliklar. Sintaktik xatolar




    Download 30.3 Kb.
    bet1/4
    Sana19.02.2023
    Hajmi30.3 Kb.
    #42795
      1   2   3   4
    Bog'liq
    51. Dasturda yuz beradigan xatoliklar. Sintaktik xatolar
    approk, Fotometrik usulda nodir metallar aniqlash, Estetik tarbiya, k1323, 12121212, 11-sinf ona tili Umarova, “Ochiq kodli operatsion tizim xavfsizligi” fanidan “Axborot xavf, 22-мектеп Нашебентлик протокол, 2. Qurilish tashkilotlarida buxgalteriya hisobining vazifalari, 4 -а синф 77, O‘quvchilarga “Yog‘och tuzilishi va turlari” mavzusini o‘qitish metodikasi, O’zbekiston respublikasi oliy va o’rta maxsus ta’lim vazirligi a-fayllar.org, Oʻquvchilarga duradgorlikda ishlatiladigan yelimlar ularni ishga tayyorlash” mavzusini oʻqitish metodikasi. , 1. Arra va uning turlari haqida ma’lumot. Arralash va arralardan-fayllar.org



    51. Dasturda yuz beradigan xatoliklar.Sintaktik xatolar

    Xatolarni borligini aniqlab ularni to‘g‘rilash - sozlash deb


    ataladi. Dasturlarni u yeki bu xatolarda sozlash majburiydir. Aks xolda biz uni testdan o‘tkazishimiz kerak bo‘ladi. Jarayonni sozlash dasturni ishlash usuliga bog‘liq, yaoni foydalaniladigan mashinaga, jarayon sistemasiga, dasturlash tiliga, beriladigan vazifa tarkibiga va xattoki dasturni muayyan xususiyatiga xam boulik bo‘ladi. Yana shuni aniq aytish mumkinki, xar birxil,qurilma va mashinalar dastur kamchiliklari dasturlash xatolari bilan uzluksiz bog‘liq.
    Masalan: Sintaksis xatolar bo‘lganda dasturlashni aniq tili orkali oldindan bilib yeki aniqlab olinadi.
    area() funksiyasini quyidagicha chaqirsak nima sodir bo’ladi:
    int s1 = area(7; // xato: qavs tushirib qoldirilgan )
    int s2 = area(7) // xato: nuqta vergul tushirib qoldirilgan ;
    Int s3 = area(7); // xato: Int — tur emas
    int s4 = area('7); // xato: tirnoqcha tushirib qoldirilgan '
    Xar bir qator sintaktik xatoga ega, boshqacha qilib aytganda ular C++ grammatikasiga to’g’ri kelmaydi. Afsuski barcha hollarda ham xatolarni dasturchi tushinishiga oson qilib ifodalash qiyin. Natijada eng oddiy sintaktik xatolar xam tushunarsiz ifodalanadi, bundan tashqari xatolikka ko’rsatayotgan qator ham bir oz uzoqroqda joylashgan bo’ladi. Shuning uchun kompilyator ko’rsatayotgan qatorda hech qanday xatolik ko’rmayotgan bo’lsangiz biroz yuqoriroq qatorlarni tekshirib chiqing.


    52. Dasturda yuz beradigan xatoliklar.Semantik xatolar
    52  51 bilan bir xil ekan
    53. Dasturda yuz beradigan xatoliklar.Mantiqiy xatolar

    Mantiqiy xatoliklar. Dasturda mantiqiyxatoliklar kutilgan natija olinmaganda sodir bo‘ladi. Bu holat turli sabablarga ko‘ra yuzaga keladi. Misol tariqasida quyidagi dasturni ko‘ribchiqamiz:


    1 #include
    2 using namespace std;
    3
    4 int main()
    5 {
    6 cout << "Selsiy 35 darajasining Farangeytdagi ko‘rsatkichi" << endl;
    7 cout << (9 / 5) * 35 + 32 << endl;
    8
    9 return 0; 10 }

    Natija: Selsiy 35 darajasining Farangeytdagi ko‘rsatkichi
    67
    Dastur Selsiy 35 darajasi Farangeytning 67 darajasiga teng degan noto‘g‘ri natija berdi. Natija 95 bo‘lishi kerak edi. C++da butun qiymatlar o‘rtasida bo‘lish amali bajarilganda natijaning butun qismigina uzatiladi: 9/5=1. To‘g‘ri natijani olish uchun esa 9.0/5 ko‘rinishda kiritilishi lozim.
    Umuman olganda, sintaksis xatolikni aniqlash juda oson, chunki uni kompilyator ko‘rsatib beradi. Runtime xatoligi ham u qadar murakkab emas, unda dastur strukturasi yoki qaysidir operatorning noto‘g‘ri kiritilganlini dastur kodini qaytadan ko‘rib chiqish orqali aniqlash mumkin. Mantiqiy xatolikni aniqlash esa umuman boshqa masala. Bu turli vaziyatlarda sodirbo‘lishi lozim. Mantiqiy xatolikni aniqlash uchun bajarilishi lozim bo‘lgan masalaning nazariyasi va dasturlash tili qonuniyatlarining mutanosibligini ko‘rib chiqish, fikrlash orqali aniqlash mumkin bo‘ladi.

    Download 30.3 Kb.
      1   2   3   4




    Download 30.3 Kb.

    Bosh sahifa
    Aloqalar

        Bosh sahifa



    51. Dasturda yuz beradigan xatoliklar. Sintaktik xatolar

    Download 30.3 Kb.