|
Labarotoriya ishi №11. Mavzu: Dart tili tamoyillaridan foydalanib ilovalar ishlab chiqish. Ishdan maqsad
|
bet | 5/8 | Sana | 13.05.2024 | Hajmi | 1,47 Mb. | | #229545 |
Bog'liq 19,20 Dart Ifoda va instruksiya
Ifoda – bir yoki bir nechta operatorlar orqali yozilgan bir qatorli bo’lgan buyruqlar jamlanmasi.
void main() {
var fisrt_number = 5;
var second_number = 6;
print(fisrt_number + second_number);
}
>> 11
tomondan qarab bajarilishi ko’rsatib o’tilgan.Yuqoridagi kodda var fisrt_number = 5; qatorini olsak, ‘=’ tayinlash operatori orqali kichik bir ifoda yozib ketilmoqda bu joyda. Ya’ni fisrt_number o’zgaruvchisiga 5 qiymati o’zlashtirilmoqda.
Lekin ko’p holatda biz yozadigan ifodalar bu kabi kichik bo’lmaydi. Aksincha, ancha katta bo’ladi.
Yodda tuting!
Ifoda tugaganligini ‘;’ nuqta-vergul belgisi orqali bilib olamiz va doimo shu belgi bilan ifodani tamomlaymiz.
Ifodada operatorlarning ham xuddi matematikadagi arifmetik amallarning ustunligi singari ustovorligi bor. Bu ‘operator precendence’ deyiladi va har bir dasturlash tilida bu mavjud. Quyidagi rasmda Dart dasturlash tilidagi operatorlarning ustuvorligi, nomi, belgisi va qaysi
Qavslar doimo operator darajasini bir karra oshirib beradi. Bu uchun ham bir kod tahlilini qisqacha ko’radigan bo’lsak,
void main() {
int x = 5;
double y = 3.4;
var result = (x & 1) * ++y;
print(result);
}
>> 4.4
result = (x & 1) * ++y; – ifodasida
x & 1 qismi bajariladi, chunki qavslar uning darajasini oshirgani uchun. Hozircha natija 1 bo’ladi
++y qismi keyin bajariladi, y qiymati 1 ga oshib 4.4 bo’ladi.
Endi esa * operatori bajariladi. Chiqqan natijalar 1 va 4.4 o’rtasida. Shunda so’nggi natija bo’lib ekranga 4.4 qiymati chiqadi.
Instruksiya – dasturlash tilida aniq bir vazifani bajarishga qaratilgan buyruq va kalit so’zlar bilan belgilangan kod qismi.
Biz ko’p kalit so’zlarni operatorlar deb atashga ham o’rganib qolganmiz. Masalan, if-else, for, while, switch-case va boshqalar. Lekin aslida yuqoridagi operatorlar jadvalini ham qarasak, bular u jadvaldan o’rin olmagan. Aslida biz bularni operator emas, balki instruksiya deb atashimiz to’g’ri bo’ladi.
Nega endi? Instruksiya ta’rifiga e’tibor berib tahlil qilsak ham bular barchasi shunga dalolat beradi.
void main() {
int x = 5;
double y = 3.4;
if (x < 0) {
var result = (x & 1) * ++y;
print(result);
} else {
print("Hello, UzbekDevs!");
}
}
|
| |