#include <stdio.h>
#include <iostream>
#include <cstdlib>
#include <time.h>
using namespace std;
int main(){
srand(time(NULL));
setlocale(LC_ALL , "Rus");
int size,min,max;
printf("Введите кол-во елементов массива: ");
scanf("%d" , &size);
printf("Введите минимум: ");
scanf("%d" , &min);
printf("Введите максимум: ");
scanf("%d" , &max);
if(min > max){
printf("Минимум не может быть больше за максимум...");
return 1;
}
int *arr = new int[size];
for(int i = 0; i < size; i++){
arr[i] = rand() % 20 + 1;
}
for(int i = 0; i < size; i++){
printf("%d\t", arr[i]);
}
printf("\nИндексы : ");
for(int i = 0; i < size; i++){
if(arr[i] >= min && arr[i] <= max){
printf("%d " , i);
}
}
delete[] arr;
return 0;
}
(x1 ∨ x2) ∧ ((x1 ∧ x2) → x3) ∧ (¬x1 ∨ y1) = 1
(x2 ∨ x3) ∧ ((x2 ∧ x3) → x4) ∧ (¬x2 ∨ y2) = 1
…
(x6 ∨ x7) ∧ ((x6 ∧ x7) → x8) ∧ (¬x6 ∨ y6) = 1
(x7 ∨ x8) ∧ (¬x7 ∨ y7) = 1
(¬x8 ∨ y8) = 1
В ответе не нужно перечислять все различные наборы значений переменных x1, x2, … x8, y1, y2, … y8, при которых выполнена данная система равенств. В качестве ответа Вам нужно указать количество таких наборов.
Из последнего уравнения находим, что возможны три варианта значений x8 и y8: 01, 00, 11. Построим древо вариантов для первой и второй пар значений.
Таким образом, имеем 16 наборов переменных.
Дерево вариантов для пары значений 11:
Получаем 45 вариантов. Таким образом, система будет иметь 45 + 16 = 61 различных наборов решений.