Prévia do material em texto
PARADIGMAS DE LINGUAGENS DE PROGRAMAÇÃO EM PYTHON
2023.3 EAD (GT) / EX
Prezado (a) Aluno(a),
Você fará agora seu EXERCÍCIO! Lembre-se que este exercício é opcional, mas não valerá ponto para sua avaliação. O mesmo será composto de questões de múltipla escolha.
Após responde cada questão, você terá acesso ao gabarito comentado e/ou à explicação da mesma. Aproveite para se familiarizar com este modelo de questões que será usado na sua AV e AVS.
PYTHON ORIENTADO A OBJETOS
1.
Analise o código Python a seguir.
class End_simples(object):
def __init__(self, rua, num, bairro):
self.rua = rua
self.num = num
self.bai = bairro
def Endereco(self):
return self.rua + ", " + self.num + "\ " + self.bairro
class End_com(End_simples):
def __init__(self, rua, num, bai, com):
End_simples.__init__(self,rua, num, bairro)
self.com = com
def Endereco(self):
...
a = End_simples("Av Brasil", "243", "Floresta")
b = End_com("Av Miracema", "12", "Centro", "apto 3")
print(a.Endereco())
print(b.Endereco())
Sabe-se que a execução desse código produziu as duas linhas a seguir.
Av Brasil, 243 Floresta
Av Miracema, 12 Centro, apto 3
Assinale a opção que apresenta a correta definição para o método Endereco na classe End_com.
return self.Endereco()+ ", " + self.com
return super(End_com, self).Endereco() \+ ", " + self.com
return End_simples.Endereco() \+ ", " + self.com
return self.parent.Endereco() \+ ", " + self.com
return parent(End_com, self).Endereco() \+ ", " + self.com
Explicação:
A resposta correta é: return super(End_com, self).Endereco() \+ ", " + self.com
No método Endereco da classe End_com deve ser feita uma chamada ao método Endereco de sua classe Pai, a classe End_simples, o qual retorna os valores para rua, número e bairro em forma de uma string: return self.rua + ,¿+self.νm+,¿+����.��+\¿ + self.bairro (esses valores são passados por parâmetro ao construtor End_simples dentro do construtor da classe End_com, pois há entre essas duas classes um relacionamento de herança). O método Endereco de End_com concatena a string retornada pelo método Endereco de End_simples com o valor da variável self.com de End_com, sendo essa string concatenada o seu valor de retorno.
2.
(TRE-CE/2012 - Adaptada) Compreender os princípios do desenvolvimento de software orientado a objetos é fundamental para o profissional de TI moderno. Acerca da linguagem de programação Python, é correto afirmar que:
I. Excetuando-se as classes, tudo é um objeto (tipos, valores, funções, métodos e instâncias), e todos possuem atributos e métodos associados.
II. Um ponto fundamental da sintaxe para métodos é que o primeiro argumento é especial, e convenciona- se utilizar o nome self para ele.
III. O método construtor (p.ex.: __init__()) é um método opcional invocado quando a classe é instanciada.
IV. Instâncias são objetos criados a partir de uma classe definida pelo programador; o que Python chama de instância é frequentemente denominado objeto em outras linguagens.
III e IV, apenas.
I, II e IV, apenas.
I e II, apenas.
II, III e IV, apenas.
I e IV, apenas.
Explicação:
A resposta correta é: II, III e IV, apenas.
No que se refere a programação de sistemas, avalie as assertivas a seguir?
I - A programação de sistemas, carece de linguagens que acesse, diretamente, o hardware e seus componentes.
II - Exemplos de uso: software básico, como sistemas operacionais, tradutores e interpretadores de linguagens de programação.
III - As principais linguagens usadas são: Pascal, Java e Ruby.
IV - Antes das linguagens de alto nível, a programação de sistemas era desenvolvida em Assembly.
Com base em sua análise, assinale a ÚNICA opção que apresenta APENAS as assertivas corretas
Na linguagem Python absolutamente tudo é objeto, inclusive as classes, que na verdade são objetos de object. Object é um objeto do tipo type que possui vários atributos e métodos próprios.
PARADIGMAS E LINGUAGEM PYTHON
3.
II, III e IV
I e IV
III e IV
I, II e IV
I
Explicação:
A resposta correta é: I, II e IV
4.
1. Qual das linguagens abaixo possui nenhuma abstração
linguagem de máquina
linguagem Python
linguagem Assembly
linguagem JAVA
linguagem HTML
Explicação:
A resposta correta é: linguagem de máquina.
PYTHON BÁSICO
5.
As estruturas de dados são responsáveis por organizar e armazenar os dados de forma eficiente, criando meios para o usuário manuseá-los. Estruturas amplamente utilizadas e conhecidas são as pilhas, listas e filas. Com relação a Algoritmos e Estrutura de Dados, dadas as afirmações abaixo, assinale a alternativa CORRETA:
Python é uma linguagem procedural a qual não contempla orientação a objetos.
Em comandos condicionais ou de repetição, a separação de blocos de código em Python é feita utilizando a indentação.
A declaração de variáveis é algo obrigatório em Python.
Python é uma linguagem compilável, a qual, após esse processo, gera um arquivo executável, do tipo binário.
Listas, em Python, são conjuntos de valores, os quais só podem ser do mesmo tipo, acessados por um índice numérico que inicia em 0 (zero).
Explicação:
A resposta correta é: Em comandos condicionais ou de repetição, a separação de blocos de código em Python é feita utilizando a indentação.
Python é uma linguagem interpretada que suporta programação orientada a objetos. No Python, não é necessário declarar uma variável antes de utilizá-la e a indentação do código é fundamental entre os blocos para o seu correto funcionamento
6.
Sobre a linguagem Python, afirma-se:
I - É uma linguagem com suporte à orientação a objetos e à herança múltipla.
II - É uma linguagem em que a indentação (indent) faz parte da sintaxe.
III - Possui uma implementação de orientação a objetos em que todos os atributos são, obrigatoriamente, privados.
IV - É uma linguagem que possui tipagem estática.
Estão corretas as afirmativas:
I e II.
II e III.
II e IV.
III e IV.
I, III e IV.
Explicação:
A resposta correta é: I e II.
A linguagem Python é conhecida por possuir tipagem dinâmica, ou seja, a atribuição de valores a uma variável ocorre durante a execução, podendo ser alterada dinamicamente. Sua sintaxe indentada promove a organização do código e a fluidez de leitura. O Python agrega os atributos de visibilidade presentes nas linguagens orientadas a objetos.
PYTHON ESTRUTURADO
7.
Considere o seguinte trecho de um programa escrito em Python:
import math
print(sqrt(36))
Qual será o resultado da execução desse programa?
Será impresso na tela: 6.0
Ocorrerá um erro porque a função print() precisa receber uma string como parâmetro
Será impresso na tela: 6
Ocorrerá um erro porque a chamada correta deveria ser math.sqrt(36)
Será impresso na tela: "6"
Explicação:
A resposta correta é: Ocorrerá um erro porque a chamada correta deveria ser math.sqrt(36)
8.
Considere o seguinte trecho de um programa escrito em Python:
a = 0
for i in range(30):
if a%2 == 0:
a += 1
continue
else:
if a%5 == 0:
break
else:
a += 3
print(a)
Assinale a opção que apresenta corretamente o que será impresso na tela.
10
30
6
2
5
Explicação:A resposta correta: 5
PYTHON EM OUTROS PARADIGMAS
9.
Qual dos scripts a seguir não utiliza somente funções puras:
Script 3
Script 2
Script 4
Todosutilizam somente funções puras
Script 1
Explicação:
A resposta correta é: Script 2
10.
Considere o script e responda.
Substituindo a utilização de Threads por Processos na linha 14, qual valor será impresso pela linha 18
1000000
100000
10
Impossível determinar
0