// PascalABC.NET 3.2, сборка 1353 от 27.11.2016 // Внимание! Если программа не работает, обновите версию!
begin var a:=MatrRandom(10,15,-50,50); a.Println(4); var amax:=-100; var amin:=100; foreach var x in a do if x>amax then amax:=x else if x<amin then amin:=x; Writeln('Amax-Amin=',amax-amin) end.
Сначала нужно представить в 8 битном формате (8 знаков) получается
00010101 : 00000101
сдвигаем делитель (00000101) влево пока позиция старшего значения единицы, в нем, не совпала с позицией старшего значения единицы в делимом (00010101). Получается делитель равняется 00010100. И запоминаем количество сдвигов (2).
Нам нужно представить делитель в дополнительном коде(это типо обратное число + 1 вот так: 00010100 прямой код = 11101011 + 1 = 11101100 дополнительный код). Если в начале цифры 1 то это отрицательной число таким образом -делитель = делитель в доп. коде.
Вычитаем из делимого (00010101) делитель (11101100) получается 00000001(частный), с остатком 1 (частный остаток). Вспоминаем количество сдвигов (2) и столько же сдвигаем влево наш частый получается 100 и 1 остаток.
В общем все сложно а результат 10101 : 101 = 100 и 1 в остатке.
А еще точнее 100.00110011
Объяснение:
Вот ссылка там можешь решать подобные задачи и объяснение там лучше моей: http://www.reshinfo.com/delenije_1.php
// Внимание! Если программа не работает, обновите версию!
begin
var a:=MatrRandom(10,15,-50,50); a.Println(4);
var amax:=-100;
var amin:=100;
foreach var x in a do
if x>amax then amax:=x
else
if x<amin then amin:=x;
Writeln('Amax-Amin=',amax-amin)
end.
Пример
-29 24 36 45 -14 -2 35 36 27 5 -31 26 0 -43 -16
41 37 -35 -6 0 -27 28 13 -37 -40 -45 -6 7 -38 -26
6 6 4 -22 -43 -41 27 -50 -31 -50 -37 -10 -38 35 -27
-14 0 -42 34 -12 -24 40 42 48 -26 -6 -39 23 34 -19
-46 -23 23 3 49 13 -29 -29 -50 -25 -37 37 47 -7 -13
33 16 28 40 24 6 -15 24 24 48 16 15 6 -46 14
48 -46 -34 39 47 36 17 10 37 11 -36 -22 -42 9 -26
-10 44 -2 10 -9 29 -16 33 -40 26 20 4 49 5 -18
48 16 -33 -13 -23 -41 21 -43 -3 2 -34 -45 42 -21 10
-22 -23 -36 0 8 23 -33 46 13 36 14 -28 -44 -38 -24
Amax-Amin=99
10101:101
Сначала нужно представить в 8 битном формате (8 знаков) получается
00010101 : 00000101
сдвигаем делитель (00000101) влево пока позиция старшего значения единицы, в нем, не совпала с позицией старшего значения единицы в делимом (00010101). Получается делитель равняется 00010100. И запоминаем количество сдвигов (2).
Нам нужно представить делитель в дополнительном коде(это типо обратное число + 1 вот так: 00010100 прямой код = 11101011 + 1 = 11101100 дополнительный код). Если в начале цифры 1 то это отрицательной число таким образом -делитель = делитель в доп. коде.
Вычитаем из делимого (00010101) делитель (11101100) получается 00000001(частный), с остатком 1 (частный остаток). Вспоминаем количество сдвигов (2) и столько же сдвигаем влево наш частый получается 100 и 1 остаток.
В общем все сложно а результат 10101 : 101 = 100 и 1 в остатке.
А еще точнее 100.00110011
Объяснение:
Вот ссылка там можешь решать подобные задачи и объяснение там лучше моей: http://www.reshinfo.com/delenije_1.php
просто значение Разрядная сетка постав 8 бит
ну остальное сам поймешь