JavaRush /Kurslar /All lectures for UZ purposes /Shartli operatorning ishlash nozikliklari

Shartli operatorning ishlash nozikliklari

All lectures for UZ purposes
Daraja, Dars
Mavjud

1. Ketma-ketlik if-lar

Ba'zan dasturda qaysidir o'zgaruvchi yoki biror ifodaning qiymatiga qarab turli xil harakatlarni bajarish kerak bo'ladi.

Aytaylik, vazifa quyidagicha:

  • Agar harorat 20 darajadan yuqori bo'lsa — ko'ylak kiyish
  • Agar harorat 10 darajadan yuqori va 20 dan kichik yoki teng bo'lsa — sviter kiyish
  • Agar harorat 0 darajadan yuqori va 10 dan kichik yoki teng bo'lsa — plash kiyish
  • Agar harorat 0 darajadan past bo'lsa — palto kiyish.

Buni kodda qanday ifodalash mumkin:

int temperature = 9;

if (temperature > 20) {
   System.out.println("ko'ylak kiyish");
} else { // bu yerda harorat 20 dan kichik yoki teng
   if (temperature > 10) {
      System.out.println("sviter kiyish");
   } else { // bu yerda harorat 10 dan kichik yoki teng
      if (temperature > 0) {
         System.out.println("plash kiyish");
      } else // bu yerda harorat 0 dan past
         System.out.println("palto kiyish");
   }
}

if-else operatorlarini bir-biriga qo'yish va dasturda murakkab mantiqni amalga oshirish mumkin.

Odatda bunday konstruktsiyani dasturchilar bir oz boshqacha yozadilar:

int temperature = 9;

if (temperature > 20) {
   System.out.println("ko'ylak kiyish");
} else if (temperature > 10) { // bu yerda harorat 20 dan kichik yoki teng
   System.out.println("sviter kiyish");
} else if (temperature > 0) { // bu yerda harorat 10 dan kichik yoki teng
   System.out.println("plash kiyish");
} else { // bu yerda harorat 0 dan past
   System.out.println("palto kiyish");
}

Ikki keltirilgan misol tengdir, lekin ikkinchisi qabul qilish nuqtai nazaridan osonroq


2. else ning nozikliklari

Muhim nuqta:

Agar if-else konstruktsiyasida burilgan qavslar qo'yilmagan bo'lsa, else avvalgi (unga eng yaqin) if-ga tegishli bo'ladi.

Misol:

Bizning kodimiz Qanday ishlaydi
int age = 65;

if (age < 60)
   if (age > 20)
      System.out.println("Ishlash kerak");
else
   System.out.println("Ishlamasa ham bo'ladi");
int age = 65;

if (age < 60) {
   if (age > 20)
     System.out.println("Ishlash kerak");
   else
     System.out.println("Ishlamasa ham bo'ladi");
}

Agar chap tarafdagi kodga qarasangiz, ekranda «Ishlamasa ham bo'ladi» degan yozuv ko'rsatiladi deb o'ylashingiz mumkin. Lekin bu shunday emas. Aslida else va «Ishlamasa ham bo'ladi» buyrug'i ikkinchi (unga yaqin) if-ga tegishli.

O'ng tarafdagi kodda qizil bilan bog'langan if va else ko'rsatilgan. Ayniqsa burilgan qavslar harakatlar tartibini aniq ko'rsatmoqda. Ishlamasa ham bo'ladi yozuvi age 60 dan katta bo'lganda hech qachon ekranga chiqmaydi.



3. Operatorning if-else dan foydalanish misoli

Agar biz if-else operatorini yaxshi tushungan bo'lsak, misol keltiramiz:

import java.util.Scanner;
public class Solution {
   public static void main(String[] args) {
     Scanner console = new Scanner(System.in);  // Scanner obyektini yaratamiz
     int a = console.nextInt();  // klaviaturadan birinchi raqamni o'qish
     int b = console.nextInt();  // klaviaturadan ikkinchi raqamni o'qish
     if (a < b)                   // agar a b dan kichik bo'lsa
       System.out.println(a);     // a ni ekranga chiqarish
     else                         // aks holda
       System.out.println(b);     // b ni ekranga chiqarish
   }
}
Ikki sondan eng kichigini ekranga chiqarish
Izohlar
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION