Pular para o conteúdo principal

Questão de Algoritmos e Estrutura de Dados — Algoritmos — FCC 2023

Algoritmos e Estrutura de DadosAlgoritmos
Código
fc068625
Banca
FCC
Órgão
Copergás - PE
Ano
2023
Nível
Superior
Cargo
Analista Sistemas
Uma linguagem de programação possui um tipo primitivo de dados para armazenamento de valores inteiros utilizando sempre 2 bytes de memória. Considerando que armazena números inteiros positivos ou negativos, a faixa de valores inteiros que podem ser armazenados em variáveis desse tipo é de
  1. A−32768 a 32767
  2. B−128 a 127
  3. C−2147483648 a 2147483647
  4. D−2048 a 2047
  5. E−8388608 a 8388607
Revelar gabarito e comentário

GabaritoA — −32768 a 32767

Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.

Representação de inteiros com sinal em 2 bytes

Gabarito: letra A. Um tipo inteiro com sinal de 2 bytes (16 bits) armazena valores de -32768 a 32767. Isso decorre da representação em complemento de dois: o bit mais significativo indica o sinal, e a faixa é de (-2^{15}) a (2^{15}-1).

A banca testa o conhecimento da relação entre número de bits e faixa de valores inteiros com sinal. Cada byte tem 8 bits; portanto, 2 bytes = 16 bits. A fórmula é:

faixa=[2n1,2n11]\text{faixa} = [-2^{n-1}, 2^{n-1}-1]

para (n = 16):

215=32768,2151=32767.-2^{15} = -32768, \quad 2^{15}-1 = 32767.

Alternativa A — ✅ Correta ⟵ GABARITO

Exatamente a faixa correta para 16 bits com sinal.

Alternativa B — ❌ Incorreta

Faixa de -128 a 127. Corresponde a 1 byte (8 bits) com sinal.

Alternativa C — ❌ Incorreta

Faixa de -2147483648 a 2147483647. Corresponde a 4 bytes (32 bits) com sinal, típico do tipo int em muitas linguagens.

Alternativa D — ❌ Incorreta

Faixa de -2048 a 2047. Corresponde a 12 bits? (2^{11}=2048), mas não é potência de 2 comum para inteiros primitivos padrão; seria um tipo de 12 bits (raro). Não é 16 bits.

Alternativa E — ❌ Incorreta

Faixa de -8388608 a 8388607. Corresponde a 24 bits? (2^{23}=8388608), sim, 24 bits com sinal. Não é 16 bits.

NÃO CAIA NESSA!

A banca oferece alternativas que correspondem a tamanhos comuns de outros tipos inteiros (1 byte, 4 bytes, etc.). O candidato deve lembrar que 2 bytes = 16 bits e aplicar a fórmula correta. Memorize a correspondência: 1 byte (-128 a 127), 2 bytes (-32768 a 32767), 4 bytes (-2³¹ a 2³¹-1), 8 bytes (-2⁶³ a 2⁶³-1).

Gabarito: letra A

Link permanente: /questoes/fc068625