Questão de Programação — Python — Quadrix 2024
- Código
- qg354200
- Banca
- Quadrix
- Órgão
- IBICT
- Ano
- 2024
- Nível
- Superior
- Cargo
- Tecnologista - Tecnologia da Informação
- CCerto
- EErrado
GabaritoE — Errado
Gabarito: E — ERRADO. A afirmação está incorreta porque o switch-case não existe em Python como estrutura de controle de fluxo nativa, e, além disso, ele é uma estrutura condicional (seleção entre múltiplos casos), e não uma estrutura de repetição (loop). A estrutura que executa um bloco de código repetidamente enquanto uma condição for verdadeira é o while. A banca misturou dois conceitos distintos: a estrutura de seleção switch-case (que nem é nativa do Python) com a estrutura de repetição while.
O switch-case é uma estrutura de controle de fluxo presente em linguagens como C, Java e JavaScript, utilizada para selecionar um bloco de código a ser executado com base no valor de uma expressão. Em Python, essa estrutura não existe nativamente; a forma idiomática de realizar múltiplas seleções é através de cadeias de if/elif/else ou, a partir do Python 3.10, com o match/case (que é uma estrutura de correspondência de padrões, não um switch-case tradicional).
Por outro lado, as estruturas de repetição (loops) em Python são o while e o for. O while executa um bloco de código enquanto uma condição for verdadeira, exatamente como descrito no enunciado. O for itera sobre uma sequência (lista, tupla, string, etc.).
A confusão entre estruturas de seleção e de repetição é um erro conceitual grave. O enunciado descreve corretamente o comportamento do while, mas o atribui erroneamente ao switch-case. É como dizer que um semáforo (que controla o fluxo de veículos em um cruzamento) é usado para fazer um carro andar em círculos enquanto o motorista quiser. São funções completamente diferentes.
Para fixar: seleção (if/elif/else, switch-case, match-case) decide qual bloco executar; repetição (while, for) decide quantas vezes executar um bloco. A banca explora exatamente essa confusão.
A afirmação está incorreta por dois motivos:
O switch-case não é uma estrutura nativa do Python. Python não possui a palavra-chave switch. Para múltiplas condições, usa-se if/elif/else ou, a partir do Python 3.10, o match/case (que é uma estrutura de correspondência de padrões, com sintaxe e semântica próprias, não um switch-case clássico).
O switch-case é uma estrutura de seleção, não de repetição. Ele serve para escolher um bloco de código entre vários, com base no valor de uma expressão. A estrutura que executa um bloco repetidamente enquanto uma condição for verdadeira é o while.
O enunciado descreve corretamente o comportamento do while, mas o atribui ao switch-case, misturando dois conceitos distintos. A banca inverteu a função da estrutura de seleção com a da estrutura de repetição.
Para não errar mais, memorize a função de cada estrutura: if/elif/else e switch-case (em outras linguagens) são para decisão (qual caminho seguir); while e for são para repetição (quantas vezes repetir). Em Python, não existe switch-case; use if/elif/else ou match/case (Python 3.10+).
Gabarito: E — ERRADO.
Link permanente: /questoes/qg354200