- 15.03.2018 00:33
- Информатика
- remove_red_eye 9234
- thumb_up 36
Ответы и объяснения 1
111000₂ = 70₈. - разбиваем число справа налево по 3 цифры и заменяем каждую двоичную триаду соответствующей восьмеричной цифрой (111 000 = 7 0)
110₄ = 24₈
Тут сначала переводим в двоичную систему, заменяя каждую цифру двумя двоичными, (1 1 0 = 01 01 00 = 10100), а затем переводим в восьмеричную, как указано выше (010 100 = 2 4)
// PascalABC.NET 3.3, сборка 1625 от 17.01.2018
// Внимание! Если программа не работает, обновите версию!
function aToDec(n:string;k:integer):integer;
// Перевод из системы по основанию k в десятичную
begin
Result:=0;
var pa:=1;
for var i:=Length(n) downto 1 do begin
Result+=pa*(n[i].ToDigit);
pa*=k
end
end;
function DecToa(n,k:integer):string;
// Перевод из десятичной системы в систему по основанию k
begin
Result:='';
while n>0 do begin
Result:=n mod k+Result;
n:=n div k
end
end;
function AtoB(s:string;A,B:integer):string;
// Перевод из системы по основанию A в систему по основанию B
begin
Result:=DecToa(aToDec(s,A),B)
end;
begin
var n:=ReadlnString('Какое число перевести?');
var (a,b):=ReadInteger2('Исходное и результирующее основания:');
Writeln(n,'(',a,') = ',AtoB(n,a,b),'(',b,')');
end.
Результаты
Какое число перевести? 620
Исходное и результирующее основания: 10 8
620(10) = 1154(8)
Какое число перевести? 111000
Исходное и результирующее основания: 2 8
111000(2) = 70(8)
Какое число перевести? 110
Исходное и результирующее основания: 4 8
110(4) = 24(8)
- 16.03.2018 01:00
- thumb_up 37
Знаете ответ? Поделитесь им!
Есть сомнения?
Не нашли подходящего ответа на вопрос или ответ отсутствует? Воспользуйтесь поиском по сайту, чтобы найти все ответы на похожие вопросы в разделе Информатика.
Трудности с домашними заданиями? Не стесняйтесь попросить о помощи - смело задавайте вопросы!
Информатика — наука о методах и процессах сбора, хранения, обработки, передачи, анализа и оценки информации с применением компьютерных технологий, обеспечивающих возможность её использования для принятия решений.