|
kiritish ob’yektidan maxsus open
|
bet | 8/18 | Sana | 14.05.2024 | Hajmi | 91,02 Kb. | | #231246 |
Bog'liq 1. Kompyuter nima hardware, software-fayllar.orgkiritish ob’yektidan maxsus open funksiyasini quyidagicha tartibda chaqirib olamiz:kiritish.open("sonlar.txt");Bu ko`rsatma satri sonlar.txt deb nomlangan faylni ochadi. Agar bunday fayl tarkibda avval yaratilmagan bo`lsa xatolik berishi mumkin.
Optimal holatda, bir vaqtning o`zida kiritish ob’yektining faylini yaratish va o`sha faylni ochish quyidagi ko`rsatma satri orqali amalga oshiriladi:
ofstream kiritish("sonlar.txt");
Fayldan ma’lumotni o`qish uchun xuddi cin ob’yekti kabi “>>” – oqim operatoridan foydalaniladi:
kiritish >> score1;
kiritish >> score2;
kiritish >> score3;
yoki
kiritish >> score1 >> score2 >> score3;
Bu ko`rsatma bajarilgandan so`ng 95, 56 va 36 sonlari fayldan quyidagicha o`qiladi:
rasm. Kiruvchi oqim ma’lumotni fayldan o`qiydi.
Faylbilan bog`liq operatsiyalar bajarib bo`lingandan so`ng kiritish ob’yektidan close funksiyasi chaqirib olinadi.
kiritish.close();
44.Do-while sikli(do-while loop). do-while– sikl operatori ham while– sikl operatoriga o`xshaydi, farqli tomoni, u birinchi sikl tanasini hisoblaydi, keyin shartni tekshiradi. do-while – sikl operatorining tuzilishi while – sikl operatorining tuzilishidan farq qiladi. Uning snintaksisi quyidagicha: do {
// Sikl tanasi;
Ko`rsatmalar(s);} while(siklni-davom-ettirish-sharti);
Uning bajarilish blok-sxemasi 8.2-rasmda keltirilgan.
rasm. do-while– sikl operatori birinchi sikl tanasini hisoblaydi, keyin hisoblashni davom ettirish yoki to`xtatish uchun shartli ifodani tekshiradi.do-while– sikl operatori birinchi sikl tanasini hisoblaydi. Keyin esa siklni-davom-ettirish-sharti tekshiriladi. Agar shartning qiymati true bo`lsa, sikl tanasi yana hisoblanadi; aks holda, sikl ishi to`xtatiladi.
45.For sikli(for loop, control variable, initial-action).
for sikli sikllarni yozishning ixchamlashgan sintaksisiga ega.
for siklida yuqoridagi holatni sodda ko’rinishda yozish mumkin:
for(i=boshlangichQiymat; i//sikl tanasi … }
Siklda nazorat o’zgaruvchisi siklning nazorat qismida yoki undan oldin e’lon qilinishi mumkin. Agar siklning nazorat o’zgaruvchisi(boshlang’ich qiymati) faqat siklda qo’llaniladigan bo’lsa, uni for siklning boshlang’ich qiymat qismida e’lon qilgan ma’qul. Agar boshlang’ich qiymat siklda e’lon qilinsa, undan sikldan tashqarida foydalanib bo’lmaydi. Yuqoridagi misolda i o’zgruvchisidan sikldan tashqarida foydalanib bo’lmaydi, chunki u for siklining ichida e’lon qilingan.
46.Ichma-ich sikllar(nested loop).Bir sikl boshqa bir siklning ichida bo’lishi mumkin.Ichma-ich sikllar tashqi va bir necha ichki sikllardan iborat bo’ladi. Tashqi sikl har safar takrorlanganda, ichki sikl to’liq takrorlanadi.
47.Sonli xatoliklarni kamaytirish (minimizing numeric errors).Sikl shartida haqiqiy sonlardan foydalanish sonli xatoliklarga olib kelishi mumkin.Haqiqiy sonlar dasturda sonli xatoliklarni sodir qilish ehtimoli mavjud.
Quyidagi 5.9 listingda 0.01 dan boshlanuvchi va 1.0 da tugovchi, har qadami 0.01 ga oshib boruvchi yig’indini aniqlash masalasi qaralgan. Quyidagicha: 0.01+0.02+0.03+…
Natija 49.5 bo’ldi, ammo 50.5 chiqishi lozim edi. Qanday sodir bo’ldi? Har bir takrorlanishda i 0.01 ga ortib boraverdi. Sikl tugayotganda i ning qiymati 1 dan kata bo’ldi (aynan 1 ga teng emas). Shuning uchun i qiymat sum ga qo’shilmadi.
Buni quyidagicha amalga oshirish mumkin:
double joriyQiymat = 0.01;
for (int count = 0; count < 100; count++) {
sum += joriyQiymat;
joriyQiymat += 0.01; }
48.Break va continue kalit so’zlari(keywords break and continue).
|
| |