Вопрос задан 26.05.2018 в 16:38. Предмет Информатика. Спрашивает Дудник Марьяна.

Помогите пожалуйста решить. И если не сложно, то можете ещё обьяснить решение, а то 3 день голову

ломаю
0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Антоняк Володя.

1. догадаться что скрывается под многоточием. вероятно, полностью этот блок выглядит так:
(x1>x2)^(x1>y1)=1
(x2>x3)^(x2>y2)=1
(x3>x4)^(x3>y3)=1
(x4>x5)^(x4>y4)=1
(x5>x6)^(x5>y5)=1
(x6>x7)^(x6>y6)=1
(x7>y7)=1

2. понять что такое "наборы значений переменных". - это просто списки значений для иксов и игриков. значит, нам сначала придётся определить эти значения, а потом посчитать количество этих "наборов".

3. логические переменные - переменные, в которых минимальное значение 0, а максимальное 1.

4. значит, подставляя разные значения в иксы и игрики, мы должны найти нужный ответ.

5. предположительно, автор вопроса придумал количество иксов и игриков беря за основу количество битов в байте...

6. ответ (ноль) на данное задание можно получить 2 способами:
  1 - не долгое логическое размышление
    1. результат логического умножения может быть 1, только если все множители == 1
    2. данный в условии блок может быть переструктурирован как:
(
((x1>x2)^(x1>y1))^
((x2>x3)^(x2>y2))^
((x3>x4)^(x3>y3))^
((x4>x5)^(x4>y4))^
((x5>x6)^(x5>y5))^
((x6>x7)^(x6>y6))^
(x7>y7)
) = 1
    3. т.е. ни при каких наборах значений это логическое равенство не может быть верным, т.е. не может быть 1, т.е. не может соответствовать сразу всем перечисленным условиям

  2 - эксперементальное: написать программу

пишу на Python, потому что паскаль уже давно забыл

count = 0


def bin_values(in_int):
    ret = []
    b = bin(in_int)[2:]
    while len(b) != 7:
        b = '0' + b
    for i in b:
        ret.append(bool(int(i)))
    return ret

for xs in range(2**7):
    x1, x2, x3, x4, x5, x6, x7 = bin_values(xs)
    print(xs)
    print(x1, x2, x3, x4, x5, x6, x7)

    for ys in range(2**7):
        y1, y2, y3, y4, y5, y6, y7 = bin_values(ys)

        if (
            ((x1 > x2) and (x1 > y1)) and
            ((x2 > x3) and (x2 > y2)) and
            ((x3 > x4) and (x3 > y3)) and
            ((x4 > x5) and (x4 > y4)) and
            ((x5 > x6) and (x5 > y5)) and
            ((x6 > x7) and (x6 > y6)) and
            (x7 > y7)
        ):
            count += 1

print(count)


0 0

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос