Существуют два перевода 1. универсальный, который годится для перевода из любой системы счисления в любую. Число из исходной системы надо перевести в основную, десятичную систему 754_8 = 7*8^2+5*8^1+4*8^0 = 492_10 и затем перевести в целевую систему счисления 492/16=30 остаток от деления 12 - шестнадцатеричная цифра С 30/16=1 остаток от деления 14 - шестнадцатеричная цифра E 1/16=0 остаток от деления 1 - шестнадцатеричная цифра 1 754_8 = 492_10 = 1EC_16 - и второй попроще, основанный на том, что и восьмеричная и двоичная системы - это системы с основанием, равным степени двойки, и перевод из них в двоичную и обратно очень прост Каждая восьмеричная цифра соответствует трём двоичным, каждая шестнадцатеричная цифра - четырём двоичным, и преобразования выполняются без арифметических действий, простой перегруппировкой бит из групп по 3 в группы по 4 754_8 = 111 101 100_2 = 1 1110 1100_2 = 1EC_16
Var a:array [1..20] of integer; i,p:integer; n:real; m:longint; begin n:=0; p:=0; m:=1; write ('Массив: '); for i:=1 to 20 do begin a[i]:=random(101)-50; write (a[i],' '); end; for i:=1 to 20 do begin n:=n+a[i]; end; n:=n/20; writeln; writeln; write ('Среднее арифметическое = ',n); for i:=1 to 19 do begin if a[20]<>a[i] then p:=p+1; end; writeln; write ('Кол-во чисел отличных от последнего в массиве = ',p); for i:=1 to 20 do begin if a[i]<0 then m:=m*a[i]; end; writeln; write ('Произведение отрицательных чисел массива = ',m); end.
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota
Оформи подписку