Logo Passei Direto
Buscar

Programação funcional

User badge image
Andre Vilela

em

Ferramentas de estudo

Questões resolvidas

Material
páginas com resultados encontrados.
páginas com resultados encontrados.
left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Questões resolvidas

Prévia do material em texto

1. O que caracteriza a Programação Funcional?
a) Uso de objetos e classes para modelar o sistema.
b) O uso de funções puras e a imutabilidade de dados.
c) A criação de múltiplos threads para execução paralela.
d) A implementação de funções em várias linguagens de programação.
Resposta correta: b) O uso de funções puras e a imutabilidade de dados.
Explicação: A programação funcional é baseada em funções puras, onde o resultado de
uma função depende apenas dos seus parâmetros, e na imutabilidade, ou seja, os
dados não podem ser alterados depois de criados.
2. O que são funções puras em programação funcional?
a) Funções que podem ter efeitos colaterais, como modificações em variáveis globais.
b) Funções que não têm parâmetros.
c) Funções cujos resultados dependem apenas dos parâmetros de entrada e não de
variáveis externas.
d) Funções que sempre geram o mesmo resultado, independentemente da entrada.
Resposta correta: c) Funções cujos resultados dependem apenas dos parâmetros de
entrada e não de variáveis externas.
Explicação: Funções puras são aquelas em que o valor de retorno depende
exclusivamente dos seus argumentos, sem modificar o estado do programa ou
depender de variáveis externas.
3. O que é imutabilidade em programação funcional?
a) A capacidade de modificar o estado de variáveis durante a execução do programa.
b) A capacidade de criar objetos em tempo de execução.
c) A característica de não permitir a modificação dos dados após sua criação.
d) A possibilidade de criar funções dentro de outras funções.
Resposta correta: c) A característica de não permitir a modificação dos dados após sua
criação.
Explicação: Em programação funcional, a imutabilidade é um conceito onde os dados
não podem ser alterados depois de serem criados. Isso ajuda a evitar efeitos colaterais
e facilita o raciocínio sobre o código.
4. O que é uma função de ordem superior?
a) Uma função que recebe variáveis como parâmetros.
b) Uma função que pode retornar um valor.
c) Uma função que pode receber outras funções como parâmetros ou retornar uma
função.
d) Uma função que é utilizada apenas para definir o comportamento de objetos.
Resposta correta: c) Uma função que pode receber outras funções como parâmetros ou
retornar uma função.
Explicação: Funções de ordem superior são aquelas que podem manipular outras
funções, seja passando-as como argumentos ou retornando-as como resultado.
5. O que significa "lazy evaluation" (avaliação preguiçosa) na programação funcional?
a) Executar as funções de forma sequencial, sem otimização.
b) Adiar a execução de uma expressão até que seu valor seja realmente necessário.
c) Avaliar as expressões de forma antecipada, para evitar o uso excessivo de memória.
d) Executar todas as funções simultaneamente, usando multithreading.
Resposta correta: b) Adiar a execução de uma expressão até que seu valor seja
realmente necessário.
Explicação: A avaliação preguiçosa (lazy evaluation) significa que uma expressão não é
avaliada até que seu valor seja de fato necessário, o que pode aumentar a eficiência ao
evitar cálculos desnecessários.
6. O que são "funções anônimas" em programação funcional?
a) Funções que não podem ser chamadas diretamente pelo nome.
b) Funções que são definidas sem um identificador (nome), sendo passadas
diretamente para outras funções.
c) Funções que retornam valores de forma aleatória.
d) Funções que não utilizam parâmetros.
Resposta correta: b) Funções que são definidas sem um identificador (nome), sendo
passadas diretamente para outras funções.
Explicação: Funções anônimas são aquelas que não possuem um nome e geralmente
são usadas como argumentos em outras funções ou definidas de maneira rápida e
simples.
7. O que é "currying" na programação funcional?
a) A combinação de várias funções em uma única função com um único parâmetro.
b) O processo de dividir uma função que aceita múltiplos parâmetros em uma
sequência de funções, cada uma aceitando um único parâmetro.
c) A técnica de reutilizar código em diferentes funções.
d) A criação de funções que retornam outros valores diretamente.
Resposta correta: b) O processo de dividir uma função que aceita múltiplos parâmetros
em uma sequência de funções, cada uma aceitando um único parâmetro.
Explicação: Currying é uma técnica onde uma função com múltiplos parâmetros é
transformada em uma sequência de funções, cada uma com um único parâmetro.
8. O que são "map", "filter" e "reduce" em programação funcional?
a) Funções para manipulação de dados de maneira imperativa.
b) Funções para trabalhar com listas e coleções de dados de maneira declarativa.
c) Funções para ordenar elementos de listas.
d) Funções que modificam diretamente o estado global do programa.
Resposta correta: b) Funções para trabalhar com listas e coleções de dados de maneira
declarativa.
Explicação: map, filter e reduce são funções comuns em programação funcional que
operam sobre listas ou coleções de dados para transformar, filtrar ou reduzir seus
valores de maneira declarativa.
9. O que é um "comportamento imutável" em programação funcional?
a) A ideia de que os objetos podem ser modificados em qualquer momento durante a
execução do programa.
b) A ideia de que, uma vez criados, os objetos ou dados não podem ser modificados,
apenas novos valores podem ser criados.
c) A criação de objetos temporários para facilitar a manipulação de dados.
d) A utilização de objetos com métodos dinâmicos que mudam a cada execução.
Resposta correta: b) A ideia de que, uma vez criados, os objetos ou dados não podem
ser modificados, apenas novos valores podem ser criados.
Explicação: Comportamento imutável significa que, uma vez que um objeto ou valor é
criado, ele não pode ser alterado. Se for necessário alterar algo, uma nova cópia do
objeto é criada com as alterações.
10. O que é "referência de função" na programação funcional?
a) A passagem de uma função como argumento para outra função.
b) A capacidade de criar variáveis que armazenam valores de funções.
c) A criação de funções que retornam valores sem referência.
d) A utilização de uma função dentro de um loop.
Resposta correta: a) A passagem de uma função como argumento para outra função.
Explicação: Referência de função se refere ao processo de passar uma função como
argumento para outra função ou até mesmo retornar uma função de uma outra função.

Mais conteúdos dessa disciplina