signed int
-2 147 483 648 … 2 147 483
647
4
unsigned int
0 … 4 294 967 295
4
signed long
int
-2 147 483 648 … 2 147 483
647
4
unsigned long
int
0 … 4 294 967 295
4
float
3.4e-38 … 3.4e+38
4
double
1.7e-308 … 1.7e+308
8
long double
3.4e-4932 … 3.4e+4932
10
Standart matematik funksiyalar
Dasturlarda buyruqlar tarkibida turli ko’rinishdagi standart funksiyalardan foydalanish
mumkin. Matematik funksiyalar arifmetik amallarda ishlatiladi. Quyidagi jadvalda standart
matematik funktsiyalar keltitrilgan (4-jadval)
4-jadval
Funktsiya
Ifodalanishi
Funktsiya
Ifodalanishi
Sin x
sin(x)
x
sqrt(x); pow(x,1/2.)
Cos x
cos(x)
x
abs(x) ёки fabs(x)
Tg x
tan(x)
Arctan x
atan(x)
e
x
exp(x)
Arcsin x
asin(x) ?
Ln x
log(x)
Arccos x
acos(x) ?
Lg x
log10(x)
3
2
x
pow(x,2/3.)
x
a
pow(x,a)
Log
2
x
log(x)/log(2)
Masalan,
a
ac
b
b
2
4
2
→ (-b+sqrt(b*b-4*a*c)/(2*a);
yoki
(-b+pow(b*b-4*a*c,1/2.)/(2*a);
e
sin x
+ tg
2
(x+3) → exp(sin(x)) + pow(tan(x+3),2);
k=(m*5)+((7 % n) / (9+x));
Quyida keltirilgan funktsiyalar ma’lumotlar toifasini o’zgartirish(o’girish) vazifasini
bajaradi (5-jadval): 5-jadval
Funktsiyaning C++dagi ifodasi
Funktsiyaning vazifasi
CHR(N)
INTTOSTR(K)
FLOATTOSTR (N)
FLOATTOSTR(N, F, K,M)
STRTOINT (S)
STRTOFLOAT (S)
ROUND (N)
TRUNC (N)
FRAC(N)
INT (N)
Kodi n(butun son) ga teng simvolni aniqlash
Butun k sonini satrga o’tkazish
Haqiqiy n sonini satrga o’tkazish Haqiqiy n
sonini satrga
o’tkazish,bunda:f - format;k - aniqlik; m - kasr
qismidagi raqamlar soni
S Satrni butun songa o’tkazish
S Satrni haqiqiy songa o’tkazish
Haqiqiy sonni yaxlitlash
Haqiqiy son kasr qismini olib tashlash
Kasrli sonning kasr qismi
Kasr sonning butun qismi
Ifodalar
C++ algoritmik tilida arifmеtik, mantiqiy va bеlgili ifodalar aniqlangan.
Arifmеtik ifodalar
o’zgaruvchilar, o’zgarmaslar, arifmеtik amal bеlgilari qavslardan va
standart funksiyalardan tashkil topadi. Arifmеtik ifodada qatnashayotgan amallar ustivorligiga
qarab bajariladi.
Amallar quyidagi ustivorlikka ega.
•
qavs
ichidagi amallar;
•
funktsiyalarnin chaqirish;
•
ko’paytirish, bo’lish, qoldiqni aniqlash;
•
qo’shish, ayirish.
Rang
Amallar
Yo’nalish
1
() [] -> :: .
Chapdan o’ngga
2
! ~ + - ++ -- & * (tip) sizeof
new delete tip()
O’ngdan chapga
3
. * ->*
Chapdan o’ngga
4
* / % (multiplikativ binar amallar)
Chapdan o’ngga
5
+ - (additiv binar amallar)
Chapdan o’ngga
6
<<>>
Chapdan o’ngga
7
<<= >= >
Chapdan o’ngga
8
= !=
Chapdan o’ngga
9
&
Chapdan o’ngga
10
^
Chapdan o’ngga
11
|
Chapdan o’ngga
12
&&
Chapdan o’ngga
13
||
Chapdan o’ngga
14
?:(shartli amal)
Chapdan o’ngga
15
= *= /= %= += -= &= ^=
|= <<= >>=
Chapdan o’ngga
16
, (vergul amali)
Chapdan o’ngga
Arifmеtik ifodada bir xil ustivorlikka ega amallar kеtma-kеt kеlsa, ular chapdan o’ngga
qarab bajariladi.
Misol:
e
sin (x)+cosx
+tg (x+ 3).
C++da bu ifoda quyidagi ko’rinishda yoziladi:
exp(sin(sqrt(x))+cos(sqr(x)))+sin(x+sqrt(3))/cos(x+sqrt(3)).
Mantiqiy ifodalar
o’z ichiga mantiqiy o’zgarmaslarni, mantiqiy o’zgaruvchilarni,
mantiqiy amal bеlgilarini, mantiqiy natija bеradigan standart funktsiyalarni qamrab oladi.
Ifodada solishtirish amallari (>, <, =,<=,=>,<>), mantiqiy ko’paytirish &&, mantiqiy
qo’shish II va mantiqiy inkor qilish ! amallarini bajarish mumkin. Quyidagi jadvalda BOOLEAN
toifasidagi A va B o’zgaruvchilari ustida mantiqiy amallarning bajarilishi natijasi kеltirilgan (6-
jadval).
6-jadval
A
B
! A
!B
A && B
A II B
TRUE
TRUE
FALSE
FALSE
TRUE
TRUE
TRUE
FALSE
FALSE
TRUE
FALSE
TRUE
FALSE
TRUE
TRUE
FALSE
FALSE
TRUE
FALSE
FALSE
TRUE
TRUE
FALSE
FALSE
Mantiqiy ifodada ham amallar ustivorligiga ko’ra bajariladi:
1. Qavs ichidagi amal va mantiqiy inkor amali (!).
2. Mantiqiy ko’paytirish (&&) amallari.
3. Mantiqiy qo’shish (II) va solishtirish amallari.
Quyidagi misolda bеrilgan mantiqiy ifodada amallarning bajarilish kеtma-kеtligi
kеltirilgan, bu yеrda A=2, B=4, C=5;
(A>3) && (A=C+3) II ! (B=5)
1) (A>3) =FALSE
2) (A=C+3) =FALSE
3) (B=5)=FALSE
4) !(B=5)=TRUE
5) (A>3) && (A=C+3)= FALSE
6) (A>3) && (A=C+3) II ! (B=5)=TRUE
Bu mantiqiy ifodaning qiymati TRUE ga tеng.
Borland C++ Builder 6 da dastur tarkibi
C++ tilida dastur preprotsessor direktivalari, global ob’ektlar va funktsiyalarning tavsiflari
va ta’riflari ketma-ketligidan tashkil topadi. Direktivalar dasturni kompilyatsiya qilingungacha
boshqaradi. Ta’riflar funktsiyalarni va ob’ektlarni kiritadi. Ob’ektlar dasturdagi qayta
ishlanadigan ma’lumotlarni tasvirlash uchun zarur. Funktsiyalar dasturdagi amallarni aniqlaydi.
Tavsiflar kompilyatorga dasturning turli qismlari yoki boshqa fayllarda aniqlangan ob’ekt
va funktsiyalarning nomi va xossalari haqida ma’lumot beradi.
Dastur bitta yoki bir nechta matnli fayl ko’rinishida shakllanadi. Matnli fayl qatorlarga
ajratilgan bo’ladi. Har bir qator qator oxiri belgisi bilan tugatiladi.
Dastur qayta ishlashning uchta bosqichidan o’tadi:
matnni preprotsessor yordamida o’girish;
kompilyatsiya qilish;
kompanovkalash (barcha bog’lanishlarni taxrirlash yoki yig’ish).
Yuqorida keltirilgan bosqichlar muvaffaqiyatli tugatilgan so’ng dasturning mashina kodi
shakllanadi (8-rasm).
Preprotssesorning vazifasi dastur matnini uni kompilytsiyagacha o’girishdir.
Preprotssesorli qayta ishlashning tartibini dasturchi direktivalar yordamida belgilaydi. Har bir
direktiva '#' belgisidan boshlanadi, masalan, #include yoki #define. #define matnda o’zgartirish
qoidalarini, '#' include esa dasturda qanday matnli fayllarni qo’shish lozimligini ko’rsatadi.
#include direktivasi kompilyatorning standart kutubxonalari bilan birgalikda uzatiladigan
sarlavha fayllari katalogidan kerakli fayl matnini dastur matniga qo’shadi. Standart kutubxonalar
uchun sarlavha fayllari ro’yhati C++ tili standartida belgilangan. Global ob’ektlar va
funktsiyalarning tavsiflari va ta’riflari albatta main nomli funktsiya bo’lishi shart. Chunki bu
funktsiya dasturning asosiy funktsiyasi bo’lib, usiz dastur bajarilmaydi. C++da dastur tuzish va
bajarish natijasida turli ko’rinishagi ilovalar yaratiladi. Asosan 2 ta muhitda dastur tuzish va
bajarish mumkin konsol va forma ilova muhitida.
C++ tilidagi dasturning har bir bo’lagini qarab chiqamiz.
1.
Direktivalar
– #
include direktiva – instruksiya degan ma’noni beradi. C++
tilida dasturning tuzilishiga, ya’ni ehtiyojiga qarab, kerakli direktivalar ishlatiladi. Ular <> belgisi
orasida keltiriladi. Umuman olganda quyidagi asosiy direktivalar mavjud (jami 32 ta):
-
# include - C da oddiy kiritish/chiqarish dasturi uchun. Bu yerda std - standart,
i – input, o - output degani.
-
# include
- C++ da kiritish/chiqarish uchun, oddiy amallar bajarilsa.
-
# include - standart funktsiyalarni ishlatish uchun
-
# include - dasturning tashqi ko’rinishini shakllantirish uchun;
-
# include - satr toifasidagi o’zgaruvchilar ustida amallar bajarish uchun;
-
# include - standart kutubxona fayllarini chaqirish uchun;
-
# include - kompyuter ichidagi soat qiymatlaridan foydalanish uchun;
-
# include - C++ tilining grafik imkoniyatlaridan foydalanish uchun.
Bu fayllar maxsus kutubxona e’lon fayllari hisoblanadilar va ular alohida INCLUDE deb
nomlanadigan papkada saqlanadilar. Hozirda C++ kutubxonasi yangilandi va undagi fayllarning
nomlaridan “.h” (head – sarlavha ma’nosida) kengaytmasi olib tashlandi va oldiga “c” xarfi
kushildi (C dan kolgan 18tasiga). Bu fayllarda funktsiya prototiplari, toifalari, o’zgaruvchilar,
o’zgarmaslar ta’riflari yozilgan bo’ladi.
C++ tilidagi dasturning har bir bo’lagini qarab chiqamiz.
Do'stlaringiz bilan baham: