Uma linguagem de programação pode dar suporte a mais do que um só paradigma de programação. Nesse contexto, analise as alternativas a seguir e assinale a que apresenta as características que justifiquem que uma linguagem forneça suporte à implementação do paradigma imperativo.
Questão
Uma linguagem de programação pode dar suporte a mais do que um só paradigma de programação. Nesse contexto, analise as alternativas a seguir e assinale a que apresenta as características que justifiquem que uma linguagem forneça suporte à implementação do paradigma imperativo.
Alternativas
a) Funções, estruturas de controle e abstração procedimentos.
b) Variáveis, implementação lógica e abstração de procedimentos.
c) Variáveis, atribuição e execução sequencial de procedimentos.
d) Alto nível de abstração e implementação sequencial de instruções.
e) Variáveis, estruturas de controle e alta abstração.
Explicação
No paradigma imperativo, o programa é descrito como uma sequência de comandos que modificam o estado do sistema ao longo do tempo. As características mais típicas que justificam suporte a esse paradigma são:
- Variáveis: representam o estado que pode mudar durante a execução.
- Atribuição: comando central do paradigma, pois altera o valor de variáveis (mudança de estado).
- Execução sequencial (e também normalmente controle de fluxo): as instruções são executadas em ordem, podendo haver desvios com estruturas de controle.
Analisando as alternativas:
- (a) fala de funções/estruturas de controle/procedimentos, mas não enfatiza o ponto-chave do imperativo: estado mutável via variáveis e atribuição.
- (b) inclui “implementação lógica”, que remete ao paradigma lógico, não ao imperativo.
- (c) traz exatamente o núcleo do imperativo: variáveis + atribuição + execução sequencial.
- (d) “alto nível de abstração” não é característica definidora do imperativo (pode existir em vários paradigmas).
- (e) mistura variáveis e estruturas de controle (ok), mas “alta abstração” novamente não é o traço mais característico/necessário.
Alternativa correta: (c).