arhangel1055
?>

Одномерный массив с операторами mod и div . задан фрагмент программы: begin a[1]: = 103; a[2]: =25; a[3]: =15; a[4]: =32; a[5]: =27; a[6]: =14; a[7]: =31 a[8]: =11 for i=1 to 7 do begin s3: =s3+3-a[i+1] div (a[i]-3); if a[i]mod3=0 then s1: =s1+(a[i]+4)div2 else s2: =s2-4+a[i+1]mod5; end; какие значения примут переменные s1, s2, s3 в результате выполнения данного блока программы?

Информатика

Ответы

alekseydovganich6
ответ: 24, -16, 17.

//Пруф:
//PascalABC.Net 3.2
begin
var a:=arr(103, 25, 15, 32, 27, 14, 31, 11);
var s1:=0; var s2:=0; var s3:=0;
for var i:=0 to 6 do
begin
s3:=s3+3-A[i+1] div (A[i]-3);
if (A[i]mod 3)=0
then s1:=s1+(A[i]+4) div 2
else s2:=s2-4+A[i+1] mod 5;
end;
print (s1, s2, s3);
end.
Apresov

1. От 7 бита (знак) к 0:

-1110: 1000 1110

10100: 0001 0100


2) 73 в двоичной это 1*2^6 + 1*2^3 + 1*2^0 = 0100 1001

-93 в двоичной, в прямом коде это 1*2^6 + 1*2^4 + 1*2^3 + 1*2^2 + 1*2^0 = 1101 1101

3) В обратном коде у отрицательного числа значащие биты инвертируются:

100: 0000 0100

-10111: 1110 1000

5) 1011 - положительное, поэтому во всех кодах одинаковое: 0000 1011

-10111 - отрицательное, поэтому в прямом коде

1001 0111 (старший разряд - знак, значащие без изменений)

в обратном коде:

1110 1000 (старший разряд - знак, значащие инвертируются)

в дополнительном:

1110 1001 (обратный код + 1)

6) 1000 0110 - отрицательное 110 = 2^2+ 2^1 = -6

0000 1010 - положительное 1010 = 2^3 + 2^1 = 10

10) 1983 - это 0000 0111 1011 1111 в 2-х байтах в двоичной, в шестнадцатеричной - 07BF (переводим тетрады и записываем)

-1983 в двоичной в дополнительном коде - 1111 1000 0100 0001, в шестнадцатеричной это F841

F6D7 в двоичной - 1111 0110 1101 0111

vs617

1)

2101 в двоичной в форме 100000110101 

для него нужно 12 разрядов, а в 2-х байтовой ячейке их 16 поэто дописываем спереди  4 нуля.

ответ: 0000100000110101.

 

2)

для этого нужно записать число в двоичном виде и записать для него дополнительный код и потом перевести в 16-ю сисему счисления

 0000100000110101  пр.

обратный код это код в котором все 0 заменены на 1, а 1 на 0

 1111011111001010  обр.

чтобы получит дополнительный код нужно прибавить 1

 1111011111001011  доп.

теперь смотрим по 4 разряда и заменяем 1 символом в 16 системе счисления

в 16- системе счисления это F7CB

 

3)F840 = 63552;

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

Одномерный массив с операторами mod и div . задан фрагмент программы: begin a[1]: = 103; a[2]: =25; a[3]: =15; a[4]: =32; a[5]: =27; a[6]: =14; a[7]: =31 a[8]: =11 for i=1 to 7 do begin s3: =s3+3-a[i+1] div (a[i]-3); if a[i]mod3=0 then s1: =s1+(a[i]+4)div2 else s2: =s2-4+a[i+1]mod5; end; какие значения примут переменные s1, s2, s3 в результате выполнения данного блока программы?
Ваше имя (никнейм)*
Email*
Комментарий*

Популярные вопросы в разделе

Shteinbakh
Алексеевич949
pifpaf85
vodexshop2
МуратМарина1140
Anton661
cashuta
marketing3
Lyalikova
svetlanadianowa
Oslopova
Карен
Tatianamir765654
ninaandreeva3179
A2017