Ma’ruza Oqimlar. Kiritish va chiqarish oqimlari (cin, cout)


Download 327 Kb.
bet2/2
Sana22.12.2021
Hajmi327 Kb.
#182340
1   2
Bog'liq
5-maruza

namespace

{

// e’lonlar

}

Nomlar fazosi ichida e’lon qilingan identifikatorlar faqat ko‘rinish sohasida bo‘ladi va yuzaga kelishi mumkin bo‘lgan kelishmovchiliklarning oldi olinadi. Misol tariqasida quyidagi nomlar fazosini yarataylik:



namespace shaxsiy_nomlar

{

int x,y

float z;

}

Kompilyatorga konkret nomlar fazosidagi nomlarini ishlatish kerakligini ko‘rsatish uchun ko‘rinish sohasiga ruxsat berish amalidan foydalanish mumkin:



shaxsiy_nomlar::x=5;

Agar dastur matnida konkret nomlar fazosiga nisbatan ko‘p murojaat qilinadigan bo‘lsa using namespace qurilmasini ishlatish orqali yozuvni soddalashtirish mumkin:



using namespace ;

Yuqorida keltirilgan misoldagi nomlar fazosini qo‘rsatish uchun quyidagi kodni yozishimiz kerak bo‘ladi:



using namespace shaxsiy_nomlar;

:: amali – ko‘rinish sohasiga ruxsat berish amali hisoblanadi.

Nomlar fazosi funksiyalar ichida e’lon qilinishi mumkin emas, lekin ular boshqa nomlar fazosi ichida e’lon qilinishi mumkin. Ichma – ich joylashgan nomlar fazosidagi identifikatorlarga murojaat qilish uchun uni qamrab olgan barcha nomlar fazosi nomlari ketma – ket ravishda ko‘rsatilishi kerak. Misol uchun, quyidagi ko‘rinishda nomlar fazosi e’lon qilingan bo‘lsin.

namespace yuqori

{

namespace urta

{

namespace quyi

{

int ichki_uzgaruvchi;

}

}

}

ichki_uzgaruvchi o‘zgaruvchisiga murojaat qo‘yidagi tartibda amalga oshiriladi:

yuqori::urta::quyi::ichki_uzgaruvchi = 5;

Umuman olganda, o‘z nomiga ega bo‘lmagan nomlar fazosini e’lon qilish mumkin. Bu holda namespace kalit so‘zidan keyin hech nima yozilmaydi. Misol sifatida quyidagini ko‘rib chiqamiz:



namespace

{

char c_nomsiz;

int i_nomsiz;

float f_nomsiz;

string s_nomsiz;

}

Yuqorida keltirilgan nomlar fazosi elementlariga murojaat hech bir prefiks ishlatmasdan amalga oshiriladi. Nomsiz nomlar fazosi faqat o‘zi e’lon qilingan fayl chegarasida amal qiladi.



5.4. Matematik standart funksiyalar

C++ dasturlash tilida matematik standart funksiyalarni ishlatish uchun dasturga alohida kutubxonani chaqirilib olinadi. Bu kutubxona math.h yoki cmath kalit so‘zlari yordamida chaqiriladi. Bu matematik kutubxonada matematika fanida ishlatiladigan barcha funksiyalar berilgan. Quyida keltirilgan jadvalda ba’zi matematik funksiyalarni C++ dasturlash tilida yozilishi keltirilgan:















4 - jadval

Matematik yozilishi

C++ dasturlash tilida yozilishi




Matematik yozilishi

C++ dasturlash tilida yozilishi



abs(x)




tg x

tan(x)



sqrt(x)






asin(x)



pow(x,b)






acos(x)



exp(x)






atan(x)



log(x)






sinh(x)



sin(x)






cosh(x)



cos(x)






tanh(x)

Bu funksiyalardan tashqari o‘zgarmaslarning ham qiymatlari berilgan. Masalan, hammamizga ma’lum bo‘lgan matematika kursidagi π soni C++ dasturlash tilida M_PI deb yoziladi. Quyidagi jadvalda π soni bilan bog‘liq bo‘lgan o‘zgarmaslar keltirilgan:



M_2_PI






M_SQRT2



M_1_PI






M_SQRT1_2

π

M_PI






M_2_SQRTPI



M_PI_2






M_LN2



M_PI_4






M_LN10

Ba’zi sodda funksiyalarni ham C++ dasturlash tilida o‘zgarmaslar to‘plamiga kirtilgan. Masalan,  soni soddalashtirilgan va o‘zgarmaslar to‘plamiga keltirilgan.
Nazorat savollari:

  1. :: amali qanday amal?

  2. Nomlar fazosi deganda nimani tushunasiz?

  3. Butun sonlar tipini sanab bering?

  4. Haqiqiy sonlar tipiga kiruvchi ma’lumotlar tipini sanab bering?

  5. O‘zgaruvchi deganda nimani tushunasiz?

  6. Oqimlar nima?

  7. Kiritish operatorini tushuntirib bering?

  8. Chiqarish operatorini tushuntirib bering?

  9. Qanday ma’lumotlar tipini bilasiz?

Download 327 Kb.

Do'stlaringiz bilan baham:
1   2




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