wayground logo

Free Printable Worksheets

NEW

Font size

S
M
L
XL
Worksheets

Quiz sobre Programação Imperativa e Lógica

Total questions: 23

Worksheet time: 12mins

Name
Class
Date
1.

Em relação ao paradigma de programação imperativa, assinale a afirmativa correta:

a)

Ele é baseado na definição de regras e fatos para inferir novos conhecimentos.

b)

A programação imperativa define algoritmos como um conjunto de instruções que modificam o estado do programa.

c)

O paradigma imperativo não permite o uso de estruturas de controle de fluxo, como loops e condicionais.

d)

A programação imperativa é sinônimo de programação funcional, focada em funções matemáticas.

e)

Linguagens imperativas não suportam abstrações, como subrotinas e funções.

2.

Sobre a evolução da programação imperativa, é correto afirmar que:

a)

Ela se originou como uma alternativa à programação orientada a objetos.

b)

Linguagens como C e Fortran são exemplos clássicos de linguagens imperativas.

c)

O paradigma imperativo não permite o uso de variáveis globais ou locais.

d)

A programação imperativa é inadequada para sistemas que envolvem controle de hardware.

e)

Linguagens imperativas não podem ser usadas para programação paralela.

3.

Assinale a alternativa que melhor descreve a relação entre a programação lógica e a inteligência artificial:

a)

A programação lógica não é utilizada em inteligência artificial por ser um paradigma declarativo.

b)

A programação lógica é amplamente utilizada em sistemas de inteligência artificial baseados em regras, como sistemas especialistas.

c)

A programação lógica é inferior ao paradigma funcional quando se trata de desenvolvimento de sistemas baseados em IA.

d)

A programação lógica é usada principalmente para controle de fluxo em algoritmos de IA.

e)

O paradigma lógico não tem aplicações relevantes em IA moderna.

4.

Em relação à execução de programas no paradigma de programação lógica, é correto afirmar que:

a)

A execução ocorre através da manipulação de variáveis globais e locais, como no paradigma imperativo.

b)

O programa é executado com base em um processo de prova de teoremas, verificando a veracidade das consultas em relação às regras e fatos definidos.

c)

Programas lógicos são compilados diretamente para código de máquina, como ocorre em linguagens imperativas.

5.

A principal diferença entre os paradigmas imperativo e lógico é:

a)

A) O paradigma lógico é baseado em estados e mutações, enquanto o paradigma imperativo é declarativo e imutável.

b)

B) No paradigma imperativo, os programadores descrevem como o programa deve realizar suas tarefas, enquanto no paradigma lógico eles descrevem o que deve ser resolvido.

c)

C) O paradigma lógico não permite o uso de funções recursivas, ao contrário do paradigma imperativo.

d)

D) O paradigma imperativo é usado exclusivamente para aplicações de inteligência artificial, enquanto o paradigma lógico é usado para programação de sistemas.

e)

E) O paradigma lógico permite controle de hardware direto, enquanto o imperativo é mais abstrato.

6.

Em relação às características da programação imperativa, assinale a alternativa correta:

a)

A) Ela permite que o programador descreva apenas o que deve ser feito, sem especificar como fazer.

b)

B) A programação imperativa é baseada em estados mutáveis e sequência de comandos que alteram esses estados.

c)

C) Linguagens imperativas não permitem o uso de funções ou procedimentos.

d)

D) O paradigma imperativo é declarativo, concentrando-se na definição de regras e fatos para resolver problemas.

e)

E) Linguagens imperativas são baseadas em lógica matemática, sem controle explícito de fluxo.

7.

No contexto da programação lógica, qual das alternativas a seguir descreve corretamente o processo de backtracking?

a)

A) A técnica de reutilizar variáveis já definidas para aumentar a eficiência de memória.

b)

B) Um mecanismo utilizado para retornar a um ponto anterior no programa quando uma solução falha e tentar uma nova abordagem.

c)

C) A estratégia de controle de execução baseada em loops e condicionais.

d)

D) Um método para otimizar o uso de memória em linguagens imperativas.

e)

E) Um processo usado para transformar instruções lógicas em código de máquina.

8.

Assinale a alternativa correta sobre a relação entre programação imperativa e linguagens de baixo nível:

a)

Linguagens imperativas não podem ser usadas para controlar diretamente o hardware, sendo restritas a linguagens de alto nível.

b)

A programação imperativa foi inicialmente associada a linguagens de baixo nível, como Assembly, que permitem controle direto do hardware.

c)

Linguagens imperativas de baixo nível não suportam estruturas de controle, como loops e condicionais.

d)

A programação imperativa está exclusivamente associada a linguagens de alto nível, como Python e Java.

e)

As linguagens de baixo nível são restritas ao paradigma lógico.

9.

Em relação à programação lógica, assinale a alternativa correta:

a)

Linguagens lógicas não permitem a definição de funções recursivas, sendo usadas apenas para resolução direta de problemas.

b)

O paradigma lógico tem aplicação restrita à teoria dos conjuntos e álgebra linear, sem uso em sistemas computacionais.

c)

O Prolog é a linguagem de programação lógica mais amplamente utilizada, com aplicação em inteligência artificial e sistemas especialistas.

d)

A programação lógica é usada principalmente em linguagens de baixo nível, como Assembly, para controle de hardware.

e)

O paradigma lógico se baseia exclusivamente na definição de estruturas de controle de fluxo, como loops e condicionais.

10.

Em um programa Prolog, qual é a função de uma regra como a seguinte? avo(X, Y) :- pai(X, Z), pai(Z, Y).

a)

Definir um relacionamento entre avô e neto com base em dois fatos pai-filho.

b)

Declarar um fato que sempre será verdadeiro.

c)

Criar uma instrução condicional para a execução do programa.

d)

Controlar a ordem de execução do programa imperativo.

e)

Descrever como calcular o valor de uma expressão matemática.

11.

No paradigma lógico, qual o principal papel do backtracking durante a execução de um programa?

a)

Aumentar a performance do código, evitando recursões.

b)

Explorar todas as soluções possíveis para um problema, retornando à última decisão errada quando necessário.

c)

Corrigir automaticamente os erros de sintaxe no código.

d)

Verificar se todas as variáveis foram declaradas corretamente.

e)

Controlar a sequência de execução das instruções, como em um loop.

12.

Qual paradigma seria mais adequado para o desenvolvimento de um sistema de recomendação de filmes baseado em algoritmos de aprendizado de máquina, considerando a necessidade de processar grandes volumes de dados e realizar cálculos complexos?

a)

Imperativo

b)

Funcional

c)

Orientado a objetos

d)

Lógico

e)

Estruturado

13.

Um sistema de controle de um elevador deve garantir alta segurança, responsividade e capacidade de lidar com falhas. Qual paradigma seria mais adequado para implementar este sistema, considerando os requisitos de tempo real e confiabilidade?

a)

Orientado a objetos

b)

Funcional

c)

Lógico

d)

Estruturado

e)

Concorrente

14.

Qual das seguintes tendências NÃO está relacionada à evolução dos paradigmas de programação?

a)

Crescente importância da programação funcional em áreas como big data e machine learning.

b)

Adoção de paradigmas híbridos que combinam características de diferentes paradigmas.

c)

Diminuição da importância da programação orientada a objetos.

d)

Surgimento de novos paradigmas, como a programação orientada a eventos e a programação reativa.

e)

Maior foco em linguagens de programação de alto nível e com abstrações mais poderosas.

15.

A linguagem COBOL é historicamente associada a quais tipos de sistemas?

a)

Sistemas de inteligência artificial e aprendizado de máquina.

b)

Sistemas embarcados e controle de hardware.

c)

Aplicações científicas e numéricas intensivas.

d)

Sistemas corporativos de negócios, como bancos.

e)

Jogos e simulações gráficas.

16.

Fortran foi desenvolvida para qual principal finalidade?

a)

Desenvolvimento de aplicações web e sistemas distribuídos.

b)

Desenvolvimento de software de controle de tráfego aéreo.

c)

Cálculos científicos e de engenharia, com foco em eficiência de processamento numérico.

d)

Desenvolvimento de interfaces gráficas de usuário.

e)

Automação de processos empresariais.

17.

Sobre a aplicação de COBOL e Fortran em sistemas modernos, é correto afirmar que:

a)

COBOL é frequentemente utilizado em supercomputadores para processamento científico.

b)

Fortran foi amplamente substituído por Python em sistemas bancários e de transações comerciais.

c)

COBOL ainda é utilizado em larga escala em sistemas financeiros e de gestão de empresas.

d)

Fortran é uma linguagem declarativa, enquanto COBOL é procedural.

e)

COBOL e Fortran são ambas usadas predominantemente para o desenvolvimento de jogos.

18.

Linguagem de programação que dominou as aplicações comerciais nos últimos 40 anos:

a)

COBOL

b)

Python

c)

C#

19.

A pergunta agora se concentra em identificar o nome dessa categoria de linguagens de programação, que são especialmente adequadas para a programação em sistemas baseados na arquitetura de von Neumann.

a)

Imperativas

b)

Funcionais

c)

Orientadas a Objetos

d)

Lógicas

e)

Scripting

20.

Com base nessa informação, assinale a alternativa que indica a linguagem de programação na qual o UNIX foi escrito:

a)

Linguagem C

b)

Lisp

c)

Python

d)

Ruby

e)

COBOL

21.

Assinale a alternativa correta sobre a relação entre programação imperativa e linguagens de baixo nível:

a)

Linguagens imperativas não podem ser usadas para controlar diretamente o hardware, sendo restritas a linguagens de alto nível.

b)

A programação imperativa foi inicialmente associada a linguagens de baixo nível, como Assembly, que permitem controle direto do hardware.

c)

Linguagens imperativas de baixo nível não suportam estruturas de controle, como loops e condicionais.

d)

A programação imperativa está exclusivamente associada a linguagens de alto nível, como Python e Java.

e)

As linguagens de baixo nível são restritas ao paradigma lógico.

22.

Linguagem de programação mais amplamente utilizada no desenvolvimento de sistemas de IA, devido à sua vasta biblioteca de ferramentas e frameworks para aprendizado de máquina e processamento de dados:

a)

JavaScript

b)

Python

c)

COBOL

d)

PHP

e)

Assembly

23.

Linguagem de programação mais adequada para o desenvolvimento de sistemas embarcados, conhecida por seu controle sobre o hardware e eficiência:

a)

Java

b)

Python

c)

C

d)

Ruby

e)

PHP