Const n = 50; // количество чиселvar k: array [1..n] of integer; i, j, n1, n2, minr, a, b: integer; begin writeln(n, ' ', ': d'); a : = random(1000); b : = random(1000); minr : = 10000; for i : = 1 to n do k[i] : = a + random(b); for i : = 1 to n do for j : = 1 to n do if ((abs(k[i] - k[j])) < minr) and (k[i] < > k[j]) then begin minr : = abs(k[i] - k[j]); n1 : = i; n2 : = j; end; writeln(n1, ' ', n2); end.
а) (11111012 + AF16)/368
Переведем числа в одну систему счисления
1111101 = 1*2^6 + 1*2^5 + 1*2^4 + 1*2^3 +1*2^2 +0*2^1 +1*2^0 = 125 (10 CC)
AF = A*16^1 +F*16^0 = 160 +15 =175 (10 CC)
36 = 3*8^1 + 6*8^0 = 24 +6 = 30 (10 СС)
Считаем:
(125 +75) / 30 = 300 / 30 = 10 (10 СС)
б) 1258 + 111012*A216 - 14178
Переведем числа в одну систему счисления
125 = 1*8^2 + 2*8^1 + 5*8^0 = 64 +16 + 5 = 85 (10 CC)
11101 = 1*2^4 + 1*2^3 +1*2^2 +0*2^1 +1*2^0 = 16 + 8 + 4 + 0 + 1 = 29 (10 CC)
A2 = A*16^1 + 2*16^0 = 160 + 2 = 162 (10 CC)
1417 = 1*8^3 + 4*8^2 + 1*8^1 + 7*8^0 = 512 + 256 + 8 + 7 = 783 (10 CC)
85 + 29*162 - 783 = 4000 (10 CC)