Logo Passei Direto
Buscar
Na computação, muito se manipula informações no sistema binário de numeração. A representação binária básica é chamada de BCD8421. O número 8421 representa 0 valor de cada bit na posição i (2') com i iniciando em 0 na posição mais à direita. Por exemplo, 0 valor 1011(2) equivale à 8+0+2+1=11(10). Suponha um número decimal armazenado em uma variável denominada "decimal" do tipo "unsigned char" (unsigned char decimal=103). Suponha a necessidade de converter esse número para 0 sistema binário de numeração e armazená-lo em uma string"numbin". Analise os trechos de código a seguir: I for(i=0;i<8;i++,decimal/s2) numbin(i]=decimal+2+48 numbin[8]=0; II for(i=7;i>=0;i--,decimal/=2) numbin(i]=decimal+2+48; numbin[8]=0; III for (i=7;i>=0;i--) : ( decimal - decimal / 2; numbin(i]=decimal+2+48; ) numbin[8]=0; IV for (i=7;i>=0;i--,decimal/=2) numbin(i]=decimal/2+48; numbin[8]=0; Após analisar os trechos acima, podemos dizer que realiza (m) a conversão de decimal para binário, apenas 0 (s) código (s): A III IV. B le IV. C II III. D II IV. E II.
User badge image
Emmanuel Bonfim

semana passada

Respostas

User badge image

Ed Verified user icon

semana passada

Vamos analisar cada trecho de código para verificar se eles realizam a conversão de um número decimal para binário corretamente: I: ```c for(i=0;i<8;i++,decimal/=2) numbin[i]=decimal%2+48; numbin[8]=0; ``` - Este código tem um erro na condição do loop e na operação de divisão. O correto seria usar `decimal%2` para obter o bit menos significativo e `decimal/=2` para dividir o número. Portanto, não realiza a conversão corretamente. II: ```c for(i=7;i>=0;i--,decimal/=2) numbin[i]=decimal%2+48; numbin[8]=0; ``` - Este código está correto. Ele divide o número por 2 e armazena o resto (que representa o bit) na string `numbin`. Portanto, realiza a conversão corretamente. III: ```c for (i=7;i>=0;i--) decimal - decimal / 2; numbin[i]=decimal%2+48; numbin[8]=0; ``` - Este código tem um erro na operação de subtração e não está armazenando os bits corretamente. Portanto, não realiza a conversão corretamente. IV: ```c for (i=7;i>=0;i--,decimal/=2) numbin[i]=decimal/2+48; numbin[8]=0; ``` - Este código também está incorreto, pois está usando `decimal/2` em vez de `decimal%2` para obter o bit. Portanto, não realiza a conversão corretamente. Após a análise, apenas o trecho II realiza a conversão de decimal para binário corretamente. Portanto, a alternativa correta é: E II.

Essa resposta te ajudou?

0
Dislike0

Ainda com dúvidas?

Envie uma pergunta e tenha sua dúvida de estudo respondida!

Mais conteúdos dessa disciplina