Читайте также:
|
|
Пример 1. Проанализируйте запись с помощью логических операций высказываний, являющихся истинными при выполнении следующих условий:
высказывание | запись высказывания с помощью логических операций |
неверно, что 0 < Х <= 3, У > 5 | ! ((0 < Х) && (Х <= 3) && (У > 5));или (X<=0) || (X > 3) || (Y <=5); |
Х не является min (Х, У) | ! (X <=Y); или X>Y |
Z является min (Х, У, Z) | (Z <= X) && (Z <= Y); |
Y не является max (X,Y,Z) и не является min (X, Y, Z) | ! ((Y >= Х) && (Y >= Z)) && (! ((У <= X) && (Y <= Z))); |
X, Y, Z равны между собой | (X==Y) && (X==Z) && (Y==Z); или (X==Y) && (X==Z) || (X==Y) && (Y==Z || (Z==X) && (Z==Y)); |
каждое из чисел X, Y, Z строго положительно | (X>0) && (Y >0) && (Z>0); |
хотя бы одно из чисел X, Y, Z положительно | (X>0) || (Y >0) || (Z>0); |
только одно из чисел X, Y, Z является положительным | ((X>0) && (Y<0) && (Z<0)) || ((Y>0) && (X<0) && (Z<0)) || ((Z>0) && (X<0) && (Y<0)); |
ни одно из чисел X, Y, Z не равно 10 | (X!=10) && (Y!= 10) && (Z!= 10);или int(X==10)+int(Y==10)+int(Z==10)=0; |
Пример 2. Для следующих логических выражений проанализируйте формулировки высказываний на обычном языке:
(X == 12) && (Y == 12) && (Z == 12): каждое из чисел равно 12;
(X < 0) && (Y > 0) || (Y < 0) && (X > 0): X и Y имеют разные знаки;
X*Y<0;
(X * Y * Z < 0) && (X * Y > 0): X и Y имеют одинаковые знаки,
а Z – им противоположный;
X * Y * Z < 0: две переменные имеют
одинаковые знаки,
а третья – им противоположный
Пример 3. Вычислить и вывести на экран результат логического выражения для заданных значений логических переменных a, b, c:
#include <stdio.h>
#include <conio.h>
int main()
{bool a, b, c, d;
a = true; b=true; c = false;
d = a && (!(b &&(!c)));
printf (" %d\n", d); // 0
_getch();
return 0;
}
Пример 4. Вычислить и вывести на экран результат логического выражения для заданных значений целых переменных a, b, c:
a || b && c
#include <stdio.h>
#include <conio.h>
int main()
{bool a, b, c, d;
int ia, ib, ic;
printf (" input a, b, c:\n");
printf ("0 - true, 1 - false:\n");
scanf ("%i%i%i, ", &ia, &ib, &ic);
a = bool(ia); b=bool (ib); c = bool(ic);
d = a || b &&c;
printf ("d= %d\n", d);
_getch();
return 0;
}
Результат:
1 1 1
d= 1
Пример 5. Присвоить логической переменной b значение логического выражения, истинного при выполнении условия «целые n и k имеют одинаковую четность» и ложного в противном случае:.
#include <stdio.h>
#include <conio.h>
int main()
{int n, k;
bool b;
printf ("input n,k:\n");
scanf ("%i%i", &n, &k);
b = (n % 2 == k % 2);
printf ("b=%d\n", b);
_getch();
return 0;
}
Результат:
4 8
b=1
Дата добавления: 2015-07-08; просмотров: 1326 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Примеры использования | | | Пример 6. |