Boolean ma'lumotlar turi bilan e'lon qilinadi bool kalit so'z va faqat
qiymatlarni qabul qilishi mumkin true, yoki false. Qiymat qaytarilganda true = 1
va false = 0.
Char Ma'lumotlar turi saqlash uchun foydalaniladigan yagona belgi. Belgilar 'A'
yoki 'c' kabi bir tirnoq bilan o'ralgan bo'lishi kerak.
String - Turi belgi (matn) bir ketma-ketlikni saqlash uchun ishlatiladi. satrda
yozilganidek qo'sh tirnoqda yozilishni unutmang. Misol uchun string ism =
"MasterSherkulov"; Satrlardan foydalanish uchun siz qo'shimcha kutubxonadan
foydalanishingizga to'g'ri keladi kutubxonaga kiritishingiz kerak:
Ma’lumotlar toifalari
Ko’plab dasturlash tillarida ma’lumotlar bazaviy va keltirilgan toifalarga
ajratiladi. Ma’lumotlarning toifalarini 1.1-rasmdagidek klassifikatsiyalash mumkin.
Ma’lumotlarning ixtiyoriy toifasi qiymatlar sohasi va ular ustida bajarilishi
mumkin bo’lgan amallar orqali tavsiflanadi. void kalit so’zi hech qanday toifaga ega
emaslikni anglatadi. Bunday toifadagi funksiyalar hech qanday qiymatni
qaytarmaydi. Lekin asosiy dastur tanasi, ya’ni main() funksiyasi void toifasiga ega
bo’lolmaydi, u int toifasida bo’lishi kerak.
Amallar odatda unar ya’ni bitta operandga qo’llaniladigan amallarga va binar
ya’ni ikki operandga qo’llaniladigan amallarga ajratiladi.
Binar amallar additiv ya’ni qo’shuv [+] va ayirish [–] amallariga, hamda
multiplikativ ya’ni ko’paytirish [*], bo’lish [/] va modul olish[%] amallariga
ajratiladi. Additiv amallarining ustuvorligi multiplikativ amallarining ustuvorligidan
pastroqdir. Butun sonni butun songa bo’lganda natija butun songacha yaxlitlanadi.
Masalan, 10/3=3, (-10)/3=-3, 10/(-3) =-3.
Modul amali butun sonni butun songa bo’lishdan hosil bo’ladigan qoldiqqa
tengdir. Agar modul amali musbat operandlarga qo’llanilsa, natija ham musbat
bo’ladi, aks holda natija ishorasi kompilyatorga bog’liqdir.
Binar arifmetik amallar bajarilganda tiplarni keltirish quyidagi qoidalar asosida
amalga oshiriladi:
1.
short va char tiplari int tipiga keltiriladi;
2.
agar operandlar biri long tipiga tegishli bo’lsa ikkinchi operand
ham long tipiga keltiriladi va natija ham long tipiga tegishli bo’ladi;
3.
agar operandlar biri float tipiga tegishli bo’lsa ikkinchi operand
ham float tipiga keltiriladi va natija ham float tipiga tegishli bo’ladi;
4.
agar operandlar biri double tipiga tegishli bo’lsa ikkinchi operand
ham double tipiga keltiriladi va natija ham double tipiga tegishli bo’ladi;
5.
agar operandlar biri long double tipiga tegishli bo’lsa ikkinchi
operand ham long double tipiga keltiriladi va natija ham long double tipiga
tegishli bo’ladi;
Unar amallarga ishorani o’zgartiruvchi unarminus [–] va unar plus [+] amallari
kiradi. Bundan tashqari [++] va [--] amallari ham unar amallarga kiradi.
[++] unar amali qiymatni 1 ga oshirishni ko’rsatadi. Amalni prefiks ya’ni ++i
ko’rinishda ishlatish oldin o’zgaruvchi qiymatini oshirib so’ngra foydalanish
lozimligini, postfiks ya’ni i++ ko’rinishda ishlatishdan oldin o’zgaruvchi
qiymatidan foydalanib, so’ngra oshirish kerakligini ko’rsatadi. Masalan, i qiymati 2
ga teng bo’lsin, u holda 3+(++i) ifoda qiymati 6 ga, 3+i++ ifoda qiymati 5 ga teng
bo’ladi. Ikkala holda ham i qiymati 3 ga teng bo’ladi.
[--] unar amali qiymatni 1 ga kamaytirishni ko’rsatadi. Bu amal ham prefiks va
postfiks ko’rinishda ishlatilishi mumkin. Masalan, i qiymati 2 ga teng bo’lsin, u
holda --i ifoda qiymati 1 ga, i-- ifoda qiymati 2 ga teng bo’ladi. Ikkala holda ham i
qiymati 1 ga teng bo’ladi.
Masala: Ushbu masalalarni C++ dasturlash tilida int a=100, b=10, c=5;
qiymatlar berilgan. Sikl, unar va arifmetik amallar yordamida ekranga a=4 va b=810
natija chiqsin
Dasturning ko’di:
#include
#include
using namespace std;
int main(int argc, char *argv[])
{
int a=100,b=10,c=5;
for(int i=0; i<2; i++)
{ a/=b-c;
}
for(int i=0; i<2; i++)
{ b*=a+c;
}
cout<<"a="< cout<<"b="< system("PAUSE");
}
Dostları ilə paylaş: |