Pular para o conteúdo principal

Questão de Programação — Python — INSTITUTO AOCP 2023

ProgramaçãoPython
Código
qq971351
Banca
INSTITUTO AOCP
Órgão
IF-MA
Ano
2023
Nível
Médio
Cargo
Técnico Em Tecnologia Da Informação
Mauro é Técnico em Tecnologia da Informação e está desenvolvendo um programa de controle de estoque utilizando-se da linguagem de programação python. Dentro desse sistema, ele precisa receber um número ou uma string (desde que contenha um inteiro) e retornar um inteiro em tela. Qual função ele pode usar?
  1. Aint(x)
  2. Blen(x)
  3. Clist(x)
  4. Dtype(x)
  5. Ecomplex(x)
Revelar gabarito e comentário

GabaritoA — int(x)

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

Funções de conversão de tipos em Python

Gabarito: letra A. A função int(x) é a única, entre as listadas, que converte um número ou uma string contendo um inteiro em um valor do tipo inteiro (int), atendendo exatamente ao que Mauro precisa. As demais funções (len, list, type, complex) não realizam essa conversão: len retorna o tamanho de uma sequência, list converte um iterável em lista, type retorna o tipo do objeto e complex cria um número complexo.

Em Python, a conversão de tipos (também chamada de casting) é uma operação fundamental. A função int() é o construtor da classe int e, quando chamada com um argumento, tenta convertê-lo para um inteiro. Se o argumento for um número (inteiro ou float), ela retorna a parte inteira (truncando a parte decimal). Se for uma string, ela a interpreta como um número inteiro, desde que a string contenha apenas dígitos (e opcionalmente um sinal). Por exemplo, int("42") retorna o inteiro 42, e int(3.99) retorna 3. Essa é a função clássica para garantir que um valor recebido como texto, como o que viria de um input(), seja tratado como número.

As outras funções listadas têm propósitos bem distintos:

  • len(x) retorna o número de itens de uma sequência (string, lista, tupla, etc.). Não converte nada; apenas mede.

  • list(x) converte um iterável (como uma string, tupla ou range) em uma lista. Por exemplo, list("abc") retorna ['a', 'b', 'c'].

  • type(x) retorna o tipo do objeto x, como <class 'int'> ou <class 'str'>. É usada para inspeção, não para conversão.

  • complex(x) cria um número complexo. Se x for um número real, retorna x + 0j; se for uma string, tenta interpretá-la como um número complexo.

A pegadinha desta questão está em reconhecer que o enunciado pede uma função que retorne um inteiro a partir de um número ou string. Muitos candidatos podem se confundir com type(x), que apenas informa o tipo, ou com len(x), que retorna um inteiro, mas não converte o valor de entrada — len retorna o tamanho, não o valor convertido. A função int() é a única que faz a conversão direta para o tipo inteiro.

Na prática, em um sistema de controle de estoque, é comum receber dados via input(), que sempre retorna strings. Para realizar cálculos, é necessário converter esses valores com int() ou float(). Por exemplo:

quantidade = input("Digite a quantidade: ")  # retorna uma string
quantidade_int = int(quantidade)  # converte para inteiro

Sem essa conversão, tentar somar quantidade com um número geraria um erro de tipo (TypeError), pois não é possível concatenar string com inteiro diretamente.

Guarde a distinção: converter (mudar o tipo de um valor) é diferente de medir (len), inspecionar (type) ou criar um novo tipo (list, complex). É exatamente essa fronteira que separa a alternativa correta das demais.

1int(x) — converte para inteiro
Número → trunca parte decimal
String com dígitos → inteiro
2len(x) — retorna tamanho
Não converte, apenas mede
3list(x) — converte em lista
Ex.: list("123") → ['1','2','3']
4type(x) — inspeciona o tipo
Não converte, apenas informa
5complex(x) — cria número complexo
Ex.: complex(5) → 5+0j
Funções de conversão em Python
LEVELsoulevel.com.br
Funções de conversão em Python: int(x) — converte para inteiro (Número → trunca parte decimal, String com dígitos → inteiro); len(x) — retorna tamanho (Não converte, apenas mede); list(x) — converte em lista (Ex.: list("123") → ['1','2','3']); type(x) — inspeciona o tipo (Não converte, apenas informa); complex(x) — cria número complexo (Ex.: complex(5) → 5+0j)

Alternativa A — ✅ Correta ⟵ GABARITO

A função int(x) é o construtor da classe int e converte o argumento x em um número inteiro. Se x for uma string contendo um inteiro (como "123"), ela retorna o inteiro correspondente. Se for um número de ponto flutuante, retorna a parte inteira (truncando). É exatamente o que o enunciado pede: receber um número ou uma string com um inteiro e retornar um inteiro.

Alternativa B — ❌ Incorreta

len(x) retorna o tamanho de uma sequência (string, lista, tupla, etc.). Embora retorne um inteiro, ela não converte o valor de entrada — apenas conta quantos elementos existem. Por exemplo, len("123") retorna 3, não o inteiro 123. Portanto, não atende ao requisito de conversão.

Alternativa C — ❌ Incorreta

list(x) converte um iterável em uma lista. Por exemplo, list("123") retorna ['1', '2', '3'], uma lista de caracteres, não um inteiro. Não há conversão para o tipo int.

Alternativa D — ❌ Incorreta

type(x) retorna o tipo do objeto x, como <class 'int'> ou <class 'str'>. É uma função de inspeção, não de conversão. Ela não retorna um inteiro a partir do valor; apenas informa qual é o tipo do valor.

Alternativa E — ❌ Incorreta

complex(x) cria um número complexo. Se x for um inteiro, retorna x + 0j; se for uma string, tenta interpretá-la como um número complexo (ex.: complex("1+2j")). O resultado nunca é um inteiro puro, mas um número complexo, portanto não atende ao pedido.

Gabarito: letra A — a função int(x) é a única que converte um número ou string contendo um inteiro em um valor inteiro, como exige o enunciado.

Link permanente: /questoes/qq971351