Primeiramente uma explicação:
Não existe algoritmo direto, portanto deve-se fazer uma conversão para decimal e depois de decimal para hexadecimal.
Octal para Decimal:
A regra é ficar multiplicando, da direita para a esquerda, o valor binário por 8 elevado a um índice (começa em 0).
Exemplo: '127' * 7*8^0 + 2*8^1 + 1*8^2 = 87.
Resultado: 87
Decimal para Hexadecimal
A regra é ficar dividindo o valor por 16, pegar o resto de cada divisão e inserir o valor da direita para a esquerda na String * de retorno. Se o resultado da divisão for maior que 15, chamo o método através de recursão. O algoritmo é executado até que o valor que foi sucessivamente dividido se torne 0. Obs.: assume que o valor passado é inteiro positivo.
Exemplo: 1279
1279/16 = 79 -> resto 15 -> Resultado: F
79/16 = 4 -> resto 15 -> Resultado: F
4/16 = 0 -> resto 4 -> Resultado: 4
Resultado: 4FF
{'0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f'}
----------------------------------------------------------------------------------
Resolvendo a questão:
Octal para Decimal:
7452
(2x8^0)+(5x8^1)+(4x8^2)+(7x8^3)=
= (2x1)+(5x8)+(4x64)+(7x512)=
= 3882
Decimal para Hexadecimal:
3882/16 = 242 > resto 10 -> Resultado A
242/16 = 15 > resto 2 -> Resultado 2
15/16 = 0 > resto 15 -> Resultado F
Atenção: para achar o resultado deve-se olhar nos valores (fixos) da base HexaDecimal -> 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F
Ex. para achar o RESTO 10, conta-se do 1 ao 10 e verás que na posição 10 está a letra A.
Gabarito: letra A
É mais prático e muito mais simples converter de octal para binário e depois de binário para hexadecimal.
Como converter de octal para binário
Primeiro é preciso converter cada um dos digitos para binário, tomarei como exemplo o próprio número que consta na questão
7452. 7 em binário é 111, 4 em binário é 100, 5 em binário é 101, dois em binário é 010 (coloca-se o zero à esquerda para que o número fique com 3 digitos ). Portanto o número 7452(octal) fica, em binário: 111 100 101 010.
Agora vamos converter esse número em binário para hexadecimal. Primeiros vamos separar todos os digitos em grupos de 4
1111 0010 1010
Agora é só converter cada um dos grupos para hexadecimal
1111 = F
0010 = 2
1010 = A
Portanto 7452 (octal) é igual a F2A em hexadecimal
alternativa A