Задача 1) 36 (это 24₁₆).
Задача 2) 38 (это 26₁₆).
Объяснение:
Задача 1)
24₁₆ = 36₁₀ (24₁₆ = 16¹ * 2 + 16⁰ * 4 = 32+4 = 36₁₀)
37₈ = 31₁₀ (37₈ = 8¹ * 3 + 8⁰ * 7 = 24 + 7 = 31₁₀)
100001₂ = 33₁₀ (100001₂ = 2⁵ * 1 + 2⁴ * 0 + 2³ * 0 + 2² * 0 + 2¹ * 0 + 2⁰ * 1 = 32 + 0 + 0 + 0 + 0 + 1 = 33₁₀)
36 < 33 < 31
Задача 2)
26₁₆ = 38₁₀ (26₁₆ = 16¹ * 2 + 16⁰ * 6 = 32+6 = 38₁₀)
41₈ = 33₁₀ (41₈ = 8¹ * 4 + 8⁰ * 1 = 32+1 = 33₁₀)
100011₂ = 35₁₀ (100011₂ = 2⁵ * 1 + 2⁴ * 0 + 2³ * 0 + 2² * 0 + 2¹ * 1 + 2⁰ * 1 = 32 + 0 + 0 + 0 + 2 + 1 = 35₁₀)
38 < 35 < 33
В ответе напишите буквы x, y, z в том порядке, в котором идут соответствующие им столбцы (сначала – буква, соответствующая первому столбцу; затем – буква, соответствующая второму столбцу, и т. д.). Буквы в ответе пишите подряд, никаких разделителей между буквами ставить не нужно.
Пример. Пусть задано выражение x → y, зависящее от двух переменных x и y, и фрагмент таблицы истинности:
Переменная 1 Переменная 2 Функция
??? ??? F
0 1 0
Тогда первому столбцу соответствует переменная y, а второму столбцу соответствует переменная x. В ответе нужно написать: yx.
Логическая функция F задаётся выражением (x ≡ z ) ∨ (x → (y ∧ z)).
Дан частично заполненный фрагмент, содержащий неповторяющиеся строки таблицы истинности функции F.
Определите, какому столбцу таблицы истинности соответствует каждая из переменных x, y, z.
// Внимание! Если программа не работает, обновите версию!
begin
var n:=ReadInteger('Количество строк в матрице:');
var m:=ReadInteger('Количество столбцов в матрице:');
Writeln('*** Исходная матрица [',n,',',m,'] ***');
var a:=MatrRandom(n,m,-9,9);
a.Println(3); Writeln(3*a.ColCount*'-');
// 1. удалить строки с нулевыми элементами
var v:=a.Rows.Select(x->x.All(y->y<>0)).ToArray;
var q:=new integer[v.Where(r->r=true).Count,a.ColCount];
var k:=0;
for var i:=0 to v.Count-1 do
if v[i] then begin
q.SetRow(k,a.Row(i)); k+=1
end;
Writeln('Матрица, не содержащая строк с нулями');
a:=Copy(q);
a.Println(3);
// 2. отсортировать элементы первого столбца по возрастанию
a.SetCol(0,a.Col(0).OrderBy(x->x).ToArray);
Writeln('Матрица с отсортированной колонкой 1');
a.Println(3);
// 3. игры с k и b
var b:integer;
Write('Введите значения b и 1<=k<=',a.RowCount,': '); Read(b,k);
for var j:=k to a.RowCount-1 do a[j,m-1]+=b;
Writeln('Матрица с модифицированной последней колонкой');
a.Println(3)
end.
Пример
Количество строк в матрице: 5
Количество столбцов в матрице: 8
*** Исходная матрица [5,8] ***
-4 -8 4 -4 8 -6 5 -2
2 -7 -4 6 8 4 9 -8
0 -8 -4 -7 -4 -7 6 -3
6 -4 -8 9 -7 -5 -3 -2
-9 7 -1 -2 -9 9 7 4
Матрица, не содержащая строк с нулями
-4 -8 4 -4 8 -6 5 -2
2 -7 -4 6 8 4 9 -8
6 -4 -8 9 -7 -5 -3 -2
-9 7 -1 -2 -9 9 7 4
Матрица с отсортированной колонкой 1
-9 -8 4 -4 8 -6 5 -2
-4 -7 -4 6 8 4 9 -8
2 -4 -8 9 -7 -5 -3 -2
6 7 -1 -2 -9 9 7 4
Введите значения b и 1<=k<=4: 5 2
Матрица с модифицированной последней колонкой
-9 -8 4 -4 8 -6 5 -2
-4 -7 -4 6 8 4 9 -8
2 -4 -8 9 -7 -5 -3 3
6 7 -1 -2 -9 9 7 9
Замечание: Под удалением без всяких условностей понимается именно удаление. Матрица после удаления просто содержит меньшее количество строк.