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ş: