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)
1-2048
2-2
3-0,0024
Сравнения
3 байта =24бита
1536битов<1,5килобайта(1,5кб=12288 бит)
(x+y+z)/3 = 0,(3)x+0,(3)y+0,(3)z
Program massiv;
var <span> mass = array [1..15] of integer;</span><span>
i, max, n_max: integer;</span>
begin<span>
{заполнение массива}
</span><span> for i:= 1 to 15 do mass[i] = (random(32)-15) * 3;</span><span>
max := 0;
</span><span> n_max := 0;
</span><span> {нахождение максимума, вывод на экран}
</span><span> for i:= 1 to 15 do</span><span>
begin</span><span>
if mass[i] > max then</span><span>
begin</span><span>
max := mass[i];
</span><span> n_max := i;</span><span>
end;</span><span>
write(mass[i], ' ');</span><span>
end;</span><span>
writeln('Индекс максимального: ', n_max);
</span><span>end.</span>
<span>Для перевода числа из любой системы счисления в
десятичную систему надо содержимое каждого
разряда умножить на его "вес" (то есть на основание системы в степени
n-1, где n-номер разряда), а затем суммировать полученные результаты.
В
разрядах, где шестнадцатеричная цифра записана буквой, нужно записать
вместо неё соответствующее десятичное число (вместо A пишем 10, далее: B=11,
C=12, D=13, E=14, F=15).
Считаем по вышеуказанным правилам:
1) 0010</span>₂<span> = 0*2⁰ + 1*2¹ + 0*2² + 0*2³ = 0*1 + 1*2 + 0*4 + 0*8 = 0+2+0+0 = 2₁₀
</span>1011₂ = 1*2⁰ + 1*2¹ + 0*2² + 1*2³ = 1*1 + 1*2 + 0*4 + 1*8 = 1+2+0+8 = 11₁₀
11101₂ = 1*2⁰ + 0*2¹ + 1*2² + 1*2³ + 1*2⁴ = 1*1 + 0*2 + 1*4 + 1*8 +1*16 = 1+0+4+8+16 = 29₁₀
0111₂ = 1*2⁰ + 1*2¹ + 1*2² + 0*2³ = 1*1 + 1*2 + 1*4 + 0*8 = 1+2+4+0 = 7₁₀
0101₂ = 1*2⁰ + 0*2¹ + 1*2² + 0*2³ = 1*1 + 0*2 + 1*4 + 0*8 = 1+0+4+0 = 5₁₀
2) 777<span>₈ = </span>7*8⁰ + 7*8¹ + 7*8² = 7*1 + 7*8 + 7*64 = 7+56+448 = 511₁₀
375₈ = 5*8⁰ + 7*8¹ + 3*8² = 5*1 + 7*8 + 3*64 = 5+56+192 = 253₁₀
111₈ = 1*8⁰ + 1*8¹ + 1*8² = 1*1 + 1*8 + 1*64 = 1+8+64 = 73₁₀
1015₈ = 5*8⁰ + 1*8¹ + 0*8² + 1*8³ = 5*1 + 1*8 + 0*64 + 1*512 = 5+8+0+512 = 525₁₀
3) 15₁₆ = 5*16⁰ + 1*16¹ = 5*1 + 1*16 = 5+16 = 21₁₀
A6₁₆ = 6*16⁰ + 10*16¹ = 6*1 + 10*16 = 6+160 = 166₁₀
1F5₁₆ = 5*16⁰ + 15*16¹ + 1*16² = 5*1 + 15*16 + 1*256 = 5+240+256 = 501₁₀
63<span>₁₆ = 3*16⁰ + 6*16¹ = 3*1 + 6*16 = 3+96 = 99₁₀</span>