• IndexOutOfRangeException
  • Kompyuter tizimlari kafedrasi




    Download 5,29 Mb.
    bet50/154
    Sana08.01.2024
    Hajmi5,29 Mb.
    #131939
    1   ...   46   47   48   49   50   51   52   53   ...   154
    Bog'liq
    Majmua

    int[] nums = new int[5];
    nums[0] = 1;
    nums[1] = 2;
    nums[2] = 3;
    nums[3] = 5;
    nums[4] = 7;
    Console.WriteLine(nums[3]); //5
    Bizda faqat 5 ta element uchun belgilangan massiv mavjud bo‘lgani uchun, masalan, oltinchi elementni qo‘llay olmaymiz, ya’ni: nums[6]=8;. Agar ushbu ifodani yozsak IndexOutOfRangeException turidagi xatolikni keltirib chiqaradi.
    Massivni initsializatsiya qilish
    Quyida bir o‘lchovli massivni initsializatsiya qilishning umumiy shakli keltirilgan:
    [] = {val1, val2, val3, ..., valN};
    Bu yerda, val1 - valN navbat bilan, chapdan o‘ngga va indeks tartibida berilgan dastlabki qiymatlarni bildiradi. Massiv boshlang‘ich qiymatlarini C# da saqlash uchun yetarli miqdordagi xotira avtomatik ravishda ajratiladi va new operatoridan foydalanish zarurati yo‘qoladi. Misol sifatida, quyida massiv elementlarining o‘rtacha arifmetik qiymatini hisoblaydigan dastur keltirilgan.
    using System;
    class Average
    {
    static void Main()
    {
    int[] nums = { 99, 10, 100, 18, 78, 23, 63, 9, 87, 49 };
    int avg = 0;
    for (int i = 0; i < 10; i++)
    avg = avg + nums[i];
    avg = avg / 10;
    Console.WriteLine("O‘rtacha: " + avg);
    }
    }
    Dastur natijasi:
    O'rtacha: 53
    Massivni ishga tushirishda new operatorini ham ishlatish mumkin, garchi bunga alohida ehtiyoj bo‘lmasa ham. Masalan, quyida keltirilgan kod to‘g‘ri deb hisoblanadi, ammo yuqoridagi dasturda nums massivini initsializatsiya qilish uchun ortiqcha hisoblanadi.
    int[] nums = new int[] { 99, 10, 100, 18, 78, 23, 63, 9, 87, 49};
    Agar new operatori massiv mavjud bo‘lgan qatorga mos keladigan o‘zgaruvchiga tayinlangan bo‘lsa, uning ko‘payishiga qaramay, new operatori bilan massivni initsializatsiya qilish yaxshiroq bo‘ladi. Masalan:
    int[] nums;
    nums = new int[] { 99, 10, 100, 18, 78, 23, 63, 9, 87, 49 };
    Bunday holda, nums o‘zgaruvchisi birinchi qatorda e’lon qilinadi va ikkinchisida esa boshlanadi.
    Eslatma: Bir massivni ishga tushirishda uning o‘lchamlari aniq belgilanishi mumkin, ammo bu o‘lchov elementlari soni bilan mos kelishi kerak.
    Misol sifatida, quyida nums massivini initdializatsiya qilishning yana bir usuli mavjud.

    Download 5,29 Mb.
    1   ...   46   47   48   49   50   51   52   53   ...   154




    Download 5,29 Mb.