Написать программу в pascal, которая выводит массив с образованного из массивов а и в формулой: c[i,j]=a[i,j]/b[i,j]. размеры массивов 3х3. ввод массивов а и в осуществлять в строчку, через пробел. массив с должен представлять из себя матрицу.
// PascalABC.NET 3.3, сборка 1561 от 02.11.2017 // Внимание! Если программа не работает, обновите версию!
begin Writeln('Введите в строку элементы массива A[3x3]'); var A:=ReadMatrReal(3,3); Writeln('Введите в строку элементы массива B[3x3]'); var B:=ReadMatrReal(3,3); var C:=new real[3,3]; for var i:=0 to C.RowCount-1 do for var j:=0 to C.ColCount-1 do C[i,j]:=A[i,j]/B[i,j]; Writeln('*** Массив С ***'); C.Println(10,5) end.
Пример Введите в строку элементы массива A[3x3] 3 5 -2 1.5 0.7 6 -0.5 4 2.2 Введите в строку элементы массива B[3x3] 0.6 5 3 7.4 -7.13 9.1 -2 0.8 6.42 *** Массив С *** 5.00000 1.00000 -0.66667 0.20270 -0.09818 0.65934 0.25000 5.00000 0.34268
972₁₀ = 1111001100₂ 1. Число будет иметь минимальное значение, если в нем будет минимально возможное количество значащих разрядов. Таких циклическх сдвигов в данном случае возможно 2 (запишем их друг под другом): 0011001111 - циклический сдвиг на 4 разряда влево; 0011110011 - циклический сдвиг на 8 разрядов влево; 2. При равном количестве разрядов меньшим будет то число, у которого при просмотре разрядов слева направо встретится ноль, в то время как у второго в этом же разряде будет единица (это место выделено): 11001111 - это число меньшее из двух. 11110011 ответ: 11001111₂ = 207₁₀
(1 + 0)*(0+0) + 1*0 (1 + 0) - истинна, т.к. дизъюнкция истинна если хотя-бы одна из переменных истинна (0 + 0) - ложна, т.к. обе перменные ложны (1 + 0)*(0+0) - ложна, т.к. первая скобка истинна, а вторая ложна, а в конъюнкции для истины обе скобки должны быть истинны. 1*0 - ложна, т.к. в конъюнкции обе переменные должны быть истинны.
Для удобства разделил скобками ((1 + 0)*(0+0)) + (1*0) - ложна, т.к. первая (большая) скобка ложна, вторая скобка (1*0) тоже ложна, между ними дизъюнкция, то есть хотя-бы одна из них должна быть истинна. Они обе ложны, значит результатом выражения
// Внимание! Если программа не работает, обновите версию!
begin
Writeln('Введите в строку элементы массива A[3x3]');
var A:=ReadMatrReal(3,3);
Writeln('Введите в строку элементы массива B[3x3]');
var B:=ReadMatrReal(3,3);
var C:=new real[3,3];
for var i:=0 to C.RowCount-1 do
for var j:=0 to C.ColCount-1 do
C[i,j]:=A[i,j]/B[i,j];
Writeln('*** Массив С ***');
C.Println(10,5)
end.
Пример
Введите в строку элементы массива A[3x3]
3 5 -2 1.5 0.7 6 -0.5 4 2.2
Введите в строку элементы массива B[3x3]
0.6 5 3 7.4 -7.13 9.1 -2 0.8 6.42
*** Массив С ***
5.00000 1.00000 -0.66667
0.20270 -0.09818 0.65934
0.25000 5.00000 0.34268