Ed
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.