Отримання знань

дистанційна підтримка освіти школярів


Складені умови

   Іноді умова буває складеною (складається з простих за допомогою операцій або (or) чи і (and)).

   Оператор or – не вимогливий. Достатньо, щоб одна з умов виконувалась, щоб вся умова була істинна.

    Наприклад

           Я отримаю подарунок на день народження або на Різдво.

           Сьогодні – день народження, отже, подарунок буде. Різдво не повинно бути в той же день.

     Оператор and – суворий. Загальна умова буде правдива, якщо істинними є всі умови.

     Наприклад

           Я подивлюсь фільм у кінотеатрі, якщо жанр фільму мене зацікавить і вистачить грошей на квиток.

           Якщо жанр фільму мене не зацікавить, то фільм дивитись не буду, навіть якщо вистачає коштів на квиток.
           І навпаки, якщо жанр фільму мені подобається, а грошей немає, то фільм переглянути не буде змоги.


Оператор or

Фрагмент програми Умова № 1 Умова № 2 Загальна умова Результат виконання
1  a= 21
 b= 4
 if (a+1>20) or (b-3>0):
      t= a+b
 else:
      t= a-b

 a+1>20
 a+1= 21+1= 22

 22>20
+

 b-3>0
 b-3= 4-3= 1

1>0
    +    

+  t= a+b
 t= 21+4= 25
2  a= 35
 b= 1
 if (a+1>20) or (b-3>0):
      t= a+b
 else:
      t= a-b

 a+1>20
 a+1= 35+1= 36

36>20
+

 b-3= 1-3= -2
 -2>0

-
можна не перевіряти

+  t= a+b
 t= 35+1= 36
3  a= 7
 b= 14
 if (a+1>20) or (b-3>0):
      t= a+b
 else:
     t= a-b

 a+1>20
 a+1= 7+1= 8

8>20
-

 b-3>0
 b-3= 14-3= 11

11>0
+

+  t= a+b
 t= 7+14= 21
4  a= 19
 b= 2
 if (a+1>20) or (b-3>0):
      t= a+b
 else:
      t= a-b

 a+1>20
 a+1= 19+1= 320

20>20
-

 b-3>0
 b-3= 2-3= -1

-2>0
-

-  t= a-b
 t= 19-2= 17

Оператор and

Фрагмент програми Умова № 1 Умова № 2 Загальна умова Результат виконання
1  x= 13
 y= 27
 if (x+y>34) and (y-10>14):
      w= 2*x
 else:
      w= 3*y

 x+y>34
 x+y= 13+27= 40

40>34
+

 y-10>14
 y-10= 27-10= 17

17>14
+

+  w= 2*x
 w= 2*13= 26
2  x= 26
 y= 9
 if (x+y>34) and (y-10>14):
      w= 2*x
 else:
      w= 3*y

 x+y>34
 x+y= 26+9= 35

35>34
+

 y-10>14
 y-10= 9-10= -1

-1>14
-

-  w= 3*y
 w= 3*9= 27
3  x= 8
 y= 25
 if (x+y>34) and (y-10>14):
      w= 2*x
 else:
      w= 3*y

 x+y>34 
 x+y= 8+25= 33

33>34
-

 y-10>14
 y-10= 25-10= 15

15>14
+
можна не перевіряти

-  w= 3*y
 w= 3*25= 75

В системі: гості - (1); користувачі - (0)