Logo Passei Direto
Buscar

Atividade 3_ Paradigmas de Linguagens de Programação

User badge image
Katy

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

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

Atividade 3
• Entrega 3 jun em 23:59
• Pontos 1
• Perguntas 5
• Disponível 25 abr em 0:00 - 3 jun em 23:59
• Limite de tempo Nenhum
• Tentativas permitidas 2
Instruções
Este teste foi travado 3 jun em 23:59.
Histórico de tentativas
Tentativa Tempo Pontuação
MAIS RECENTE Tentativa 1 11 minutos 1 de 1
Pontuação desta tentativa: 1 de 1
Enviado 7 mai em 19:00
Esta tentativa levou 11 minutos.

Pergunta 1
0,2 / 0,2 pts
Importante:
Caso você esteja realizando a atividade através do aplicativo "Canvas Student", é necessário que
você clique em "FAZER O QUESTIONÁRIO", no final da página.
Leia o texto a seguir:
Stevens, Myers e Constantine (1974) fizeram uma primeira tentativa de descrever módulo como
"um conjunto de uma ou mais instruções de programa contíguas, que possui um nome pelo qual
outras partes do sistema podem chamá-lo e, preferivelmente, com seu próprio conjunto distinto de
nomes de variáveis". Em outras palavras, um módulo consiste de um único bloco de código que
pode ser chamado da mesma forma que é chamado um procedimento, uma função ou método.
(...) Nas linguagens C e C++, um arquivo-cabeçalho de declarações que é incluído (#include) em
um produto de modo semelhante também não é chamado. (...)
Yourdon e Constantine (1979) dão uma definição mais ampla: "Módulo é uma sequência de
 instruções de programa lexicamente contíguas, limitadas por elementos delimitadores, que
possuem um identificador de agregação. Exemplos de elementos delimitadores são os pares
begin ... end em uma linguagem estruturada em blocos, como Pascal, ou pares {...} no C++ ou
Java.
Schach, S. R. Engenharia de Software. Editora Grupo A, 2010. 
Atividade 3: Paradigmas de Linguagens de Programação https://famonline.instructure.com/courses/48135/quizzes/...
1 of 6 11/06/2025, 13:08
https://famonline.instructure.com/courses/48135/quizzes/230110/history?version=1
https://famonline.instructure.com/courses/48135/quizzes/230110/history?version=1
I, II e III, apenas.
  II, III e IV, apenas.
I e IV, apenas.
Correto!
  II e III, apenas.
I, III e IV, apenas.
Alternativa correta.
A afirmativa I é falsa, pois elementos incluídos em C e C++ não são chamados, portanto não se
enquadram na definição.
A afirmativa II é verdadeira, pois objetos tipicamente são “chamados” e é a partir da chamada que
é feito o acesso a seus atributos e métodos. Isso porque não apenas objetos são módulos como
também seus métodos podem ser considerados módulos internos.
A afirmativa III é verdadeira, pois qualquer bloco de código delimitado por símbolos indicando
início e fim pode ser considerado um bloco. Estruturas condicionais e malhas de repetição na
maioria das linguagens são estruturadas dessa maneira, e, portanto, se enquadram nessa
definição.
A afirmativa IV é falsa, pois as definições falam em “sequência de instruções” ou “conjunto de
instruções”. Os módulos são, primariamente, formas de subdividir ou agrupar instruções.

Pergunta 2
0,2 / 0,2 pts
Considerando o texto acima, analise as seguintes afirmações sobre módulos. 
I. Qualquer elemento compilado separadamente, como cabeçalhos em C, é considerado
módulo por ambas as definições. 
II. Objetos são considerados módulos por ambas as definições. 
III. Blocos condicionais e malhas de repetição são considerados módulos por alguns
autores. 
IV. Módulos permitem isolar informações, mas não instruções.
É correto o que se afirma, em:
Leia o texto a seguir:
“C++ rapidamente se tornou (e se mantém) uma linguagem amplamente utilizada. Um fator para
sua popularidade é a disponibilidade de compiladores bons e baratos. Outro é que ele é quase
completamente compatível com C (o que significa que, com poucas alterações, programas em C
podem ser compilados como programas C++) e, na maioria das implementações, é possível
Atividade 3: Paradigmas de Linguagens de Programação https://famonline.instructure.com/courses/48135/quizzes/...
2 of 6 11/06/2025, 13:08
II, III e IV.
  I, III e IV.
Correto!
I e IV.
  I e II.
I e III.
Alternativa correta.
A afirmativa I é verdadeira, pois um dos fatores citados pelo texto para a popularidade da
linguagem foi a distribuição de compiladores bons e baratos.
A afirmativa II é falsa, pois devido à sua grande compatibilidade e semelhança com a linguagem
C, já muito popular, os programadores desta última tiveram bastante facilidade em fazer a
transição. Além disso, naquela época já havia grande interesse em programação orientada a
objetos, mas faltava linguagens comercialmente viáveis, tornando o C++ bastante atraente.
A afirmativa III é falsa, pois a linguagem C++ herdou diversas falhas de segurança da linguagem
C. Seu grande benefício em relação à linguagem C foi o suporte à programação orientada a
objetos.
A afirmativa IV é verdadeira, pois na época de seu lançamento, havia grande interesse em
programação orientada a objetos. A linguagem C++ incorporou o suporte a esse paradigma a
uma linguagem já popular e viável.

vincular código em C++ com código em C - e, assim, para muitos programadores que já
conhecem C é relativamente fácil aprender C++. Por último, na época em que C++ apareceu,
quando a programação orientada a objetos começou a despertar amplo interesse, era a única
linguagem disponível conveniente para grandes projetos de software comercial. 
Pelo lado negativo, como C++ é uma linguagem muito extensa e complexa, ela sofre de
deficiências similares àquelas da linguagem PL/I. C++ herdou muitas das inseguranças de C,
tornando-se menos segura que linguagens como Ada e Java.”
SEBESTA, R. W. Conceitos de linguagens de programação. 11. ed. Porto Alegre: Bookman, 2018.
Considerando as informações apresentadas sobre a linguagem C++, avalie as afirmações a
seguir: 
I. A disponibilidade de ferramentas foi uma vantagem da linguagem C++. 
II. O recrutamento de programadores C++ foi difícil na época de seu lançamento. 
III. A segurança adicional em relação à linguagem C foi um dos grandes benefícios
oferecidos pela linguagem C++.
IV. A linguagem C++ trouxe recursos desejados pelos desenvolvedores da época.
Estão corretas apenas as alternativas:
Atividade 3: Paradigmas de Linguagens de Programação https://famonline.instructure.com/courses/48135/quizzes/...
3 of 6 11/06/2025, 13:08
Pergunta 3
0,2 / 0,2 pts
Não é possível ordenar listas em PROLOG.
  A programação procedural é melhor do que a programação lógica.
Correto!
O PROLOG pode ser inadequado em situações que exijam processamento rápido.
  É importante que o programador PROLOG detalhe cada etapa do processamento.
O PROLOG é não procedural, portanto, é orientado a objeto.
A alternativa está correta, pois um dos objetivos do PROLOG é ser não procedural. Por conta
disso, o programador não precisa detalhar como será a execução de seus programas. A
desvantagem trazida por essa ideia é que, sem controle sobre a forma de execução, o
programador não pode realizar otimizações, e com isso o desempenho pode ser penalizado.

Pergunta 4
0,2 / 0,2 pts
Leia o texto a seguir:
“Um objetivo fundamental da programação lógica (...) é fornecer programação não procedural, ou
seja, um sistema no qual os programadores especificam o que um programa deve fazer, mas não
precisam especificar como isso deve ser feito. (...) [Em um problema de ordenação dos elementos
de uma lista] ele não tem ideia de como ordenar, além de simplesmente enumerar todas as
permutações de uma lista até que aconteça de ser criada uma que tenha a lista ordenada - um
processo muito lento.”
Adaptado de SEBESTA, R. W. Conceitos de linguagens de programação. 11. ed. Porto Alegre:
Bookman, 2018.
Sabendo que a principal linguagem de programação lógica é o PROLOG, assinale a alternativa
correta considerando a reflexão apresentada acima:
Leia o texto a seguir:
“A linguagem de programação Cobol existe há 61 anos de uma forma ou de outra. Para muitas
organizações, a idade está evidente, e as pessoas que conseguem manter os aplicativos Cobol
baseados em mainframede pé, estão cada vez mais escassas, especialmente porque a maioria
dos programas de ciência da computação não ensina mais sobre ela. (...) ‘São aplicativos de 20 a
30 anos que têm servido bem aos negócios, mas eles acumulam dívidas técnicas e são muito
específicos para o que esse negócio tem. [Cobol] é funcionalmente rico, mas funciona em uma
plataforma restritiva e não funciona com outros sistemas modernos’, disse Tim Jones, Diretor-
Gerente de Modernização de Aplicativos da fornecedora de serviços de software Advanced.”
CAREY, Scott. Como as empresas estão deixando o Cobol. Infoworld, 2021. Disponível em: . Acesso em 22 ago
2021.
Refletindo sobre as aplicações em Cobol mencionadas acima, avalie as seguintes asserções e a
relação proposta entre elas.
I.    Os sistemas descritos no texto são considerados sistemas legados.
PORQUE
II.    A linguagem Cobol é uma linguagem antiga.
Assinale a alternativa com a relação correta entre as proposições I e II:
Leia o texto a seguir:
“Programadores no processo de desenvolvimento de software apresentam a mesma limitação. A
linguagem na qual eles desenvolvem software impõe restrições nos tipos de estruturas de
controle, estruturas de dados e abstrações que podem usar - logo, as formas dos algoritmos que
eles constroem também são limitadas.”
Atividade 3: Paradigmas de Linguagens de Programação https://famonline.instructure.com/courses/48135/quizzes/...
5 of 6 11/06/2025, 13:08
É necessário usar várias linguagens em um mesmo software, de modo que cada uma delas compense as
limitações das outras.
Qualquer linguagem pode ser utilizada em qualquer projeto, mas as limitações dos programadores podem
afetar o projeto.
Programadores devem sempre optar por uma das linguagens que já conhecem, pois assim serão menos
limitados.
Correto!
A escolha da linguagem de programação influencia o desenvolvimento do projeto.
  Existe uma linguagem perfeita para cada projeto, e utilizar outras prejudicará negativamente o projeto.
Alternativa está correta, pois diferentes linguagens apresentam diferentes recursos e facilidades,
bem como suas próprias limitações. Por conta disso, sua escolha irá afetar o desenvolvimento do
software.
Normalmente não existe uma única linguagem superior a todas as outras, e um mesmo projeto
pode ser bem desenvolvido em diferentes linguagens. Cabe aos desenvolvedores estudar qual ou
quais dela trarão o melhor “custo x benefício”, e nessa análise cabe até mesmo a aptidão da
equipe e a facilidade de contratar desenvolvedores já familiares com a linguagem.
Há casos em que é possível utilizar múltiplas linguagens, mas isso nem sempre é necessário,
tampouco está necessariamente relacionado a compensar “fraquezas” de uma das linguagens
envolvidas.
Apesar da adoção de uma linguagem previamente conhecida implicar em ganho de tempo para o
desenvolvimento, é importante que os programadores estejam abertos para aprender novas
linguagens. Em muitos casos, uma linguagem previamente conhecida pode ser tão limitada para
certo projeto que o tempo de treinamento dos programadores para se adequar a uma linguagem
nova será compensado pelos ganhos trazidos por ela.
Pontuação do teste: 1 de 1
SEBESTA, R. W. Conceitos de linguagens de programação. 11. ed. Porto Alegre: Bookman, 2018.
Qual alternativa indica como o programador deve escolher a linguagem para o desenvolvimento
de um software? 
Atividade 3: Paradigmas de Linguagens de Programação https://famonline.instructure.com/courses/48135/quizzes/...
6 of 6 11/06/2025, 13:08

Mais conteúdos dessa disciplina