Baixe o app para aproveitar ainda mais
Prévia do material em texto
PROGRAMAÇÃO RAD Lupa Calc. CCT0769_A1_202003114448_V1 Aluno: JOANA FORSTER GADELHA Matr.: 202003114448 Disc.: PROGRAMAÇÃO RAD 2021.1 EAD (GT) / EX Prezado (a) Aluno(a), Você fará agora seu TESTE DE CONHECIMENTO! 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. 1. Qual das linguagens abaixo não é interpretada? Ruby Python Lua Basic C Explicação: A resposta é letra e, pois todas as outras linguagens são interpretadas, ou seja, possuem um interpretador, e C é uma linguagem ¿compilada¿, possui um ¿compilador¿ para gerar o código. 2. O uso de comentários é muito importante durante o desenvolvimento do programa. Assinale a alternativa que apresenta o uso correto de comentários (em linha) em Python. x = 25 // x recebe o valor 25 x = 25 @ x recebe o valor 25 x = 25 & x recebe o valor 25 x = 25 /* x recebe o valor 25 /* x = 25 # x recebe o valor 25 Explicação: Para comentários em linha usamos o #. 3. Python é uma linguagem multiparadigma. Identifique, abaixo, o paradigma que não pertence à linguagem Python: Polinomial Lógico Estruturado Orientado a aspectos Orientado a objetos Explicação: A resposta é a letra e, pois a, b, c e d são paradigmas da linguagem Python. Polinomial não é paradigma de computação e nem pertence à linguagem Python. 4. A linguagem Python é relativamente nova, lançada em 1991. É uma linguagem de uso geral, projetada especificamente para tornar os programas bastante legíveis. São características da linguagem: Tipagem não dinâmica, suporta o paradigma de programação funcional, é uma linguagem interpretada. Tipagem Dinâmica, suporta o paradigma de programação funcional, é uma linguagem interpretada. Tipagem não Dinâmica, suporta o paradigma de programação funcional, é uma linguagem compilada. Tipagem Dinâmica, suporta o paradigma de programação funcional, é uma linguagem compilada. Tipagem Dinâmica, suporta o paradigma de programação lógica, é uma linguagem compilada. Explicação: A linguagem Python é multiparadigma, ou seja trabalha com mais de um tipo de paradigma, como orientado a objetos, funcional, lógica, entre outros. Quando em uma linguagem não precisamos declarar variáveis para usá-las dizemos que ela é tipicamente dinâmica. Python é uma linguagem interpretada. 5. O que será impresso pelo código seguinte? print("ABC")#DEF #print("GHI") print("#JK")#LM print("NO#PQ") ABC#DEF#JK#LMNO#PQ ABCNO ABC#JKNO#PQ ABCJKNOPQ ABCDEFGHIJKLMNOPQ Explicação: Os únicos elementos que constituem comentários são: #DEF, #print("GHI"), #LM. Todos os demais serão impressos na ordem em que ocorrem no código. 6. Com a linguagem Python devidamente instalada e configurada em seu sistema operacional. Qual o comando utilizado para executarmos o código fonte (arquivo) simulador.py ? py.simulador simulador simulador.py simulador.py python python simulador.py Explicação: Para executarmos um programa em Python, usamos a seguinte sintaxe: python .py 7. O que vai ser impresso no código abaixo? tupla= (1, 2, 3, 4) tupla.append( (5, 6, 7) ) print(len(tupla)) 5 1 2 7 Vai gerar uma exceção Explicação: Uma tupla não pode ser modificada. Vai gerar uma exceção. PROGRAMAÇÃO RAD Lupa Calc. CCT0769_A2_202003114448_V1 Aluno: JOANA FORSTER GADELHA Matr.: 202003114448 Disc.: PROGRAMAÇÃO RAD 2021.1 EAD (GT) / EX Prezado (a) Aluno(a), Você fará agora seu TESTE DE CONHECIMENTO! 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. 1. Qual dos tipos abaixo não pertence a linguagem Python? listas inteiros cordas dicionários tuplas Explicação: Cordas não é um tipo computacional e não faz parte dos tipos em Python. 2. Python é uma linguagem utilizada em muitas áreas. Em uma delas, a Ciência dos Dados (Data Science) ele é muito utilizado. Qual das respostas abaixo seria um exemplo de utilização de Data Science? programar um videogame construir um website estudar quantitativamente comportamentos de usuários de uma rede social instalar uma rede segura programar um aplicativo para Android Explicação: A resposta correta é a letra b, porque seriam utilizados algoritmos matemáticos para estudo de tendências na rede social. As letras a, c e d são construções de aplicações computacionais que não precisam ter tratamento científico e a letra e é uma aplicação de infraestrutura. 3. Considere o seguinte código em Python: a = 1 b = 2 c = a+b print ("o resultado",c); Suponha que este código esteja no arquivo teste.py, qual seria a chamada correta através do prompt do sistema operacional? python teste py teste.py p teste python teste.py p teste.py Explicação: A resposta é a letra d, pois um programa em python é chamado usando o comando python e o nome do arquivo com a terminação .py. As outras chamadas não são funcionais. 4. Um número imaginário como 3+4i pode ser representado em Python por qual dos seguintes tipos primitivos: float array complex int tuple Explicação: Em Python existe o tipo primitivo ¿complex¿ que representa números complexos (ou também chamados imaginários) 5. Seja a string em Python: str = 'Python'; Qual o resultado da expressão: print(str[0]); P y t o h Explicação: A resposta é P, pois em python as cadeias de caracteres começam com o primeiro elemento 0 (zero). 6. Qual o resultado da seguinte linha em Python: print(int(¿1000¿) + 1000); 10000 0 2000 1000 ERROR Explicação: A resposta é 2000 pois a string ¿1000¿ será convertida para o número inteiro que poderá ser somado a 1000 e ter como resultado 2000. 7. Considere o seguinte código em Python: valor1 = input("digite um numero"); valor2 = input("digite um outro numero"); resultado = float((int(valor1) + int(valor2)))/2; print(resultado); Considerando que variáveis de valores recebam os inteiros 4 e 6, qual é o resultado final? 5.0 5 10 ERROR 10.0 Explicação: O resultado da média dos números 4 e 6 será 5.0, o valor será do tipo float porque a função float() converte a soma dos dois inteiros para float. 8. Considere a seguinte linha de comando: print(float(3) + 3); Qual é o resultado dessa expressão? 0 6 3.0+3 6.0 ERROR Explicação: A expressão float(3) será convertida para 3.0 e quando somada a 3 Python dará como resultado 6.0 porque o tipo float engloba o tipo inteiro. PROGRAMAÇÃO RAD Lupa Calc.CCT0769_A3_202003114448_V1 Aluno: JOANA FORSTER GADELHA Matr.: 202003114448 Disc.: PROGRAMAÇÃO RAD 2021.1 EAD (GT) / EX Prezado (a) Aluno(a), Você fará agora seu TESTE DE CONHECIMENTO! 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. 1. Considere o código a seguir: x = 10 soma = 0 while (x > 0): x = x - 2 soma = soma + x print(soma) Após sua execução, o resultado será: 55 45 20 18 30 Explicação: Teste de mesa A estrutra de repetição irá ocorrer enquanto x for maior que 0. Sendo assim, será executados os seguintes valores para x. x: 8 soma: 8 x: 6 soma: 14 x: 4 soma: 18 x: 2 soma: 20 x: 0 soma: 20 2. Analise as informações abaixo: I. Python é interpretado II. Python é orientado a objetos III. Python é interativo Estão corretas as afirmações: Somente II e III Somente I e II Somente I I, II e III Somente I e III Explicação: Todas as afirmações estão corretas 3. Uma loja de varejo, deseja classificar seus produtos em Promo10, Promo20 e Promo30, de acordo com a tabela abaixo. Preço do Produto (preco) Classificação <= R$ 10,00 Promo10 Entre R$ 10,00 e R$ 50,00 Promo20 >= R$ 50,00 Promo30 Assinale o trecho de programa que implementa de forma correta a estrutura condicional. if preco <= 10.00: print("Promo 10") elif preco < 50.00 : print("Promo 20") else: print("Promo 30") if preco <= 10.00: print("Promo 10") elif preco >10.00 or preco < 50.00 : print("Promo 20") else: print("Promo 30") if preco <= 10.00: print("Promo 10") elseif preco < 50.00 : print("Promo 20") else: print("Promo 30") if preco <= 10.00: print("Promo 10") elif preco < 50.00 : print("Promo 20") else: print("Promo 30") if preco <= 10.00: print("Promo 10") elif preco > 50.00 : print("Promo 20") else: print("Promo 30") Explicação: As estruturas de decisão em Python são: Tipo Descrição if Usado para executar uma ação, caso uma condição seja verdadeira. Else Usado quando a condição não for satisfeita. Elif Usado se mais de uma condição alternativa. Em Python, o comando if possui a seguinte sintaxe: if expressão: comando(s) else: comando(s) É obrigatória a identação para criar o bloco de comandos. 4. Considere o seguinte código em Python: valor = 7 while (valor>3): print(valor) valor -= 1 else: ultimo_valor = valor print(ultimo_valor) Qual é o resultado da variável ¿ultimo_valor¿, quando terminar o código? 5 4 6 3 7 Explicação: A condição é imprimir enquanto o valor for maior que 3. Quando chegar ao valor 3, o código executará a instrução else, e terá o valor igual a 3. A resposta correta é a letra e. 5. Uma empresa deseja conceder um desconto de 15% para as vendas acima de R$ 120,00. Assinale o trecho de programa que implementa de forma correta a estrutura condicional, onde a variável preco conterá o valor a ser pago, já incluindo o desconto. if preco >= 120: preco = preco * 1.15 if preco >= 120: preco = preco * 0.15 if preco > 120: preco = preco * 1.15 if preco > 120: preco = preco * 0.15 if preco > 120: preco = preco * 0.85 Explicação: Para calcularmos o desconto trabalhamos coma seguinte fórumla: Valor do desconto: preco * Percentual do desconto / 100 Valor com desconto: preco - preco * Percentual do desconto / 100 ou preco *0.85 A questão pede o preço com o desconto. 6. Qual é a função do operador relacional ¿==¿ em Python? ou lógico e lógico diferente atribuição igual Explicação: == signfica o operador lógico de igualdade em Python, neste caso a resposta é a letra a. 7. Uma empresa deseja saber qual será o valor total da folha de pagamento de seus funcionários no próximo mês. Analise o programa abaixo (em Python) . i = 1 soma = 0 while __________________ # sentença 1 sal = float( input('Salário..: ') ) soma = soma + sal i = i + 1 print("Total da Folha de Pagamento..: R$ ", soma) Sabe-se que a empresa possui 45 funcionários. Complete a sentença 1 de forma que o programa ao final apresente o Valor Total da Folha de pagamento da empresa. ( i <= 45): ( i = 45 ): ( i > 45 ): ( i >= 45): ( i < 45 ): Explicação: Enquanto a condição for verdadeira a estrutura de repetição é executada. Sendo assim, como a empresa possui 45 funcionários e i começa com 1, a condição é i<=45. PROGRAMAÇÃO RAD Lupa Calc. CCT0769_A4_202003114448_V1 Aluno: JOANA FORSTER GADELHA Matr.: 202003114448 Disc.: PROGRAMAÇÃO RAD 2021.1 EAD (GT) / EX Prezado (a) Aluno(a), Você fará agora seu TESTE DE CONHECIMENTO! 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. 1. Em orientação a objetos, a característica que determina a possibilidade de um descendente alterar a funcionalidade de um método herdado é deominada: encapsulamento polimorfismo composição herança abstração Explicação: Através da herança é possível criar uma nova classe a partir de outra já existente, aproveitando suas características, mas algumas funcionalidades podem não ser adequadas, podendo ser modificadas através da sobrescrita destes métodos, segundo um processo denominado polimorfismo. 2. Assinale a alternativa que implementa a função IMC. Esta função recebe como parâmetro de entrada o peso e a altura de uma pessoa e retorna com o valor do IMC. IMC(): calculo = float(peso) / float(altura) * float (altura)) return calculo IMC(peso, altura): calculo = float(peso) / float(altura) * float (altura)) return calculo def IMC(peso, altura): calculo = float(peso) / float(altura) * float (altura)) return calculo IMC(peso, altura): calculo = float(peso) / float(altura) * float (altura)) print(calculo) def IMC(peso, altura): calculo = float(peso) / float(altura) * float (altura)) print(calculo) Explicação: Estrutura de uma função em Pyhton: 1. Toda função em Python começa com o comando def. 2. Depois do def, há o nome da função. 3. Em seguida, aparece a lista de parâmetros, que pode estar vazia, mas os parênteses são obrigatórios. 4. Após essa lista, estão os dois pontos (¿:¿). 5. Todo o código que estiver indentado fará parte do corpo da função. A indentação é muito importante na definição de funções. 6. Toda função termina com o comando return, que pode ser seguido ou não de uma variável de retorno.3. Ao definirmos uma classe Carro em Python, qual seria um possível método para ela? define fechar(): define plantar(lugar): define acender(valor): def somar(a,b): def acelerar(vel): Explicação: A resposta é a letra b, porque um método é uma ação a ser executado pelo objeto, no caso, um carro possui como uma ação possível a aceleração, as letras c, d e e estão com uma palavra chave define que não é do python, e a letra a, somar dois parâmetros não se encaixa no objeto carro. 4. Durante o desenvolvimento de um programa em Pyhton foi criada a função cadastro, a qual recebe como parâmetros o nome e a idade de uma pessoa, respectivamente. Assinale a alternativa que executa a função corretamente. def cadastro ("Paulo", 20) cadastro("Paulo", 20) cadastro (20, "Paulo") cadastro() def cadastro(20, "Paulo") Explicação: Para chamarmos uma função devemos usar a seguinte sintaxe: Nome da função (parâmetros de entrada) 5. Durante o desenvolvimento do projeto, foi necessário criar um método construtor para a classe Empregado. Assinale a opção que apresenta a criação do método construtor. def _empregado_(self, matricula, nome, cargo): def _init_(self, matricula, nome, cargo): _init_(self, matricula, cargo): _empregado_(self, matricula, cargo): def _construtor_(self, matricula, nome, cargo): Explicação: O método construtor é criado através da sintaxe: def _init_(): 6. Para acessar o atributo de um objeto Python, pode ser utilizado, alternativamente ao acesso direto, a seguinte função: delattr hasattr setattr expattr getattr Explicação: Funções: getattr - retorna o valor do atributo, hasattr - testa se existe o atributo, setattr - seta o valor do atributo, delattr - remove o atributo, expattr - não existe. 7. Toda linguagem orientada a objetos permite a especificação de métodos construtores na classe, os quais são responsáveis pela inicialização do objeto recém-alocado na memória. Na linguagem Python este método recebe o seguinte nome: constructor this self def __init__ Explicação: O método construtor é denominado __init__, sendo definido, como os demais métodos, através de def __init__(self, parâmetros...). Quanto aos demais, def serve para criar uma função ou método e self é o ponteiro de auto-referência implícito do Python. O this e o constructor não pertencem à sintaxe Python. PROGRAMAÇÃO RAD Lupa Calc. CCT0769_A5_202003114448_V1 Aluno: JOANA FORSTER GADELHA Matr.: 202003114448 Disc.: PROGRAMAÇÃO RAD 2021.1 EAD (GT) / EX Prezado (a) Aluno(a), Você fará agora seu TESTE DE CONHECIMENTO! 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. 1. A função abaixo em Python ilustra um conceito muito importante no paradigma funcional. def fatorial(valor): if valor == 0: return 1 else: return valor * fatorial(valor-1) Qual é esse conceito? Recursividade Linguagens de script Multiparadigmas Tipagem dinâmica Orientação a objetos Explicação: A resposta é a letra c. A função implementa a função fatorial que chama a ela mesma no comando else. Esse conceito de uma função chamar ela mesma é definido por recursividade. 2. Qual é a saída do comando abaixo: >>> a='10' >>> print(a*2) Erro! 1010 100 `20¿ 20 Explicação: A variável a contém uma string. Usar o operador "*" vai repeti-la 3. Qual é o objetivo do comando super() na declaração abaixo? class Carro(Veiculo): def __init__(self,vel,marca): super().__init__(vel) self.marca = marca Inicializa a variável vel. Apenas a sintaxe normal para a definição de uma classe simples em Python. Permite que a classe herde o método da superclasse. Uso de polimorfismo em Python. Nenhuma das respostas anteriores está correta. Explicação: A resposta é letra a. É desse modo que se implementa a sobrecarga de métodos em Python, possibilitando extender a funcionalidade da superclasse para as classes filhas. 4. Seja a classe definida como FormaGeométrica em Python, qual das opções abaixo poderia ser uma classe herdada dessa classe? Nenhuma das opções está correta. class Carro(FormaGeometrica) class Pessoa(FormaGeometrica) class Quadrado(FormaGeometrica) class Animal(FormaGeometrica) Explicação: A resposta é class Quadrado(FormaGeometrica), classe Quadrado, porque uma subclasse herda as propriedades da superclasse, e como só existe uma única forma geométrica entre as opções ela é a resposta correta. 5. O que o código abaixo imprime? class Vendas: def __init__(self, id): self.id = id id = 100 val = Vendas(123) print (val.id) 100 123 Nenhuma das anteriores Id Nada. Vai dar pau Explicação: O construtor vai fazer a atribuição para a variável id do objeto val 6. Qual das opções abaixo contém conceitos apenas do paradigma orientado a objetos? atribuição, algoritmo variável, estrutura condicional função, variável método, classe, herança classe, estrutura de repetição Explicação: A resposta é a letra a, que possui três conceitos que se aplicam a orientação a objetos. 7. Qual dos comandos abaixo define uma relação de herança em Python? class Carro is Veiculo class Carro(Veiculo) : class Carro inherits Veiculo class Carro extends Veiculo Carro is Veiculo Explicação: A resposta é a letra a, que tem a sintaxe correta para definir, em Python, que a classe Carro é uma extensão da classe Veiculo. 8. Considere a seguinte definição da classe fração: class Fracao: def __init__(self,num,den): self.num = num self.den = den Qual seria um possivel cabeçalho para um método de multiplicar duas frações? def __mul__(self,fracao): Nenhuma das anteriores está correta. fracao.multiplicar(f1) f.multiplicar(f) def mul(fracao1, fracao2) Explicação: A resposta é: def __mul__(self,fracao): onde é passado como parâmetro um objeto da classe Fracao de onde serão retirados o numerador e o denominador. Abaixo o código desse método: def mul(self,fracao): return Fracao(self.num*fracao.num, self.den*fracao.den) PROGRAMAÇÃO RAD Lupa Calc. CCT0769_A6_202003114448_V1 Aluno: JOANA FORSTER GADELHA Matr.: 202003114448 Disc.: PROGRAMAÇÃO RAD 2021.1 EAD (GT) / EX Prezado (a) Aluno(a), Você fará agora seu TESTE DE CONHECIMENTO! 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. 1. Qual o resultado dos seguintes comandos em Python? lista1 = [1,2,3] lista2 = [4,5,6] print(lista1 + lista2) [1,2,3,4,5,6][2,4,5,6] [6,5,4,3,2,1] [1,2,3] [4,5,6] Explicação: Comentário: a resposta é [1,2,3,4,5,6]. O operador + junta os elementos de duas listas. 2. Ao executarmos os seguintes comandos em Python qual o resultado que teremos? lista = [4,2,1,5,0] lista.sort() print(lista) [5,4,2,1,0] [1,2,3,4,5] [0,1,2,4,5] [5,3,4,2,1] [5,4,3,2,1] Explicação: a resposta é [0,1,2,4,5], pois a função sort() ordena a lista do menor para o maior. 3. A pilha é uma estrutura de dados que permite a inserção/remoção de itens dinamicamente seguindo a norma de último a entrar, primeiro a sair. Suponha que para uma estrutura de dados, tipo pilha, são definidos os comandos insert (insere um elemento da pilha) e pop (remove um elemento da pilha. Considere que, em uma estrutura de dados tipo pilha "pilha", inicialmente vazia, sejam executados os seguintes comandos: pilha = [] pilha.insert(0,10) pilha.insert(0,5) pilha.insert(0,3) pilha.insert(0,40) pilha.pop(0) pilha.insert(0,11) pilha.insert(0,4) pilha.insert(0,7) pilha.pop(0) pilha.pop(0) print("Pilha.: ", pilha) Após a execução dos comandos, o elemento no topo da pilha e a soma dos elementos armazenados na pilha são, respectivamente, 11 e 80 7 e 29 4 e 80 11 e 29 7 e 40 Explicação: Conceito de Pilha ¿ O último a entrar é o primeiro a sair. Resultado final da Pilha.: [11, 3, 5, 10] Elemento que está no topo da pilha é o 11. Soma dos elementos da pilha: 11+3+5+10 =29 4. Listas são um dos principais tipos de dados em Python. Analise as afirmações a seguir. I. Em Python, listas de objetos são representadas pelo tipo list. Esse tipo de dados é basicamente uma sequência de elementos, que podem ou não ser do mesmo tipo. II. Python permite também a criação de listas aninhadas (uma lista dentro da outra). Este recurso é útil quando desejamos criar listas de várias dimensões (ou matrizes). III. Em Python, normalmente percorremos listas de elementos sem que existam índices associados a eles. Após a sua análise, assinale a opção em que são apresentadas apenas as afirmações corretas. Estão corretas as afirmações: I e III. Somente a afirmativa: I. Estão corretas as afirmações: I, II e III. Estão corretas as afirmações: II e III. Estão corretas as afirmações: I e II. Explicação: Vale destacar que o Python nos permite percorremos uma lista por meio de intervalos, usando a função range() 5. As estruturas de dados são formas de construir e armazenar informações para posterior recuperação. Dentre as estruturas podemos trabalhar com a Fila. Analisando o código abaixo, assinale a alternativa que equivale ao comando print("Fila: ", fila) ao final da execução do código. Sabe-se que a função append permite inserir um elemento na fila e a função pop permite retirar o elemento da fila. fila = [] fila.append(10) fila.append(3) fila.append(5) fila.append(8) fila.pop(0) fila.pop(0) fila.append(20) print("Fila: ", fila) Fila: [ 5, 8, 20] Fila: [10, 3, 5, 8, 20] Fila: [5, 8] Fila: [10, 3, 5, 8] Fila: [20, 8, 5] Explicação: Conceito de Fila ¿ O primeiro a entrar é o primeiro a sair. Passo a passo da execução do código Fila: [] Fila: [10] Fila: [10, 3] Fila: [10, 3, 5] Fila: [10, 3, 5, 8] Fila: [3, 5, 8] Fila: [5, 8] Fila: [5, 8, 20] 6. As estruturas de dados são formas de construir e armazenar informações para posterior recuperação. Dentre as estruturas podemos trabalhar com a Pilha. Analisando o código abaixo, assinale a alternativa que equivale ao comando print("Pilha: ", pilha) ao final da execução do código. Sabe-se que a função insert permite inserir um elemento na pilha e a função pop permite retirar o elemento da pilha. pilha = [] pilha.insert(0,10) pilha.insert(0,50) pilha.insert(0,40) pilha.insert(0,120) pilha.pop(0) pilha.insert(0,15) pilha.pop(0) pilha.pop(0) print("Pilha: ", pilha) Pilha: [40, 50] Pilha: [120, 15] Pilha: [15, 120, 40, 50, 10] Pilha: [10, 50, 40, 120, 15] Pilha: [ 50, 10] Explicação: Conceito de Pilha ¿ O último a entrar é o primeiro a sair. Passo a passo da execução do código Pilha.: [] Pilha.: [10] Pilha.: [50, 10] Pilha.: [40, 50, 10] Pilha.: [120, 40, 50, 10] Pilha.: [40, 50, 10] Pilha.: [15, 40, 50, 10] Pilha.: [40, 50, 10] Pilha.: [50, 10] 7. Existem várias políticas de enfileiramento para o tipo abstrato de dados ¿Fila¿. Desses, qual é a sigla que define uma fila onde o primeiro a entrar é o primeiro a sair da fila? fila encadeada fila enfileirada fila por prioridade pilha enfileirada FIFO Explicação: O termo FIFO significa ¿First in, First out¿ que significa que o primeiro a entrar é o primeiro a sair, então a resposta certa é FIFO. PROGRAMAÇÃO RAD Lupa Calc. CCT0769_A7_202003114448_V1 Aluno: JOANA FORSTER GADELHA Matr.: 202003114448 Disc.: PROGRAMAÇÃO RAD 2021.1 EAD (GT) / EX Prezado (a) Aluno(a), Você fará agora seu TESTE DE CONHECIMENTO! 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. 1. Qual a finalidade do método len (), que pode ser aplicado tanto a tuplas como a listas? Repetir elementos das listas ou duplas Verficar quantos elementos existem na lista ou tuplas Iterar, com o comando FOR, em conjunto Verificar se um elemento existe ou n na lista ou tupla ? Concatenar 2 ou mais tuplas ou listas 2. Analise o seguinte código em Python: estrutura = (3,4,6,4,5,'b','f',5,8,2) print(estrutura.count(5)) Qual o nome dessa estrutura e o que será impresso no console? tupla, 2 fila, 2 array, 0 dicionário, 2 lista, 4 Explicação: Essa estrutura se chama tupla e a função count(5) contará o número de vezes que o elemento 5 aparece na estrutura, no caso duas vezes, a resposta é a tupla, 2. 3. Uma das formas de tratamento de erros em Python é por ¿exceções¿. Quais dos comandos abaixo caracteriza uma parte do comando de exceções em Python? if then else def f(x) for i from 1 to 10 try while Explicação: Uma exceção em Python é tratada pelo comando try < > except, nesse caso a resposta é try. As demais são estruturas de decisão e repetição. 4. Em Python, _________ é um tipo de estrutura de dados em que há mapeamento entre uma chave (key) e um valor (value). Assinale a opção que competa a frase corretamente Tupla Ponteiro Dicionário Fila Lista 5. Uma tupla é um tipo de estrutura em Python que se parece com as listas, porém uma tupla é ___ restrita a inteiros e strings restrita a strings restrita a inteiros mutável imutável Explicação: A resposta é imutável. Uma tupla é como uma lista, mas não pode ser modificada, diferentemente dessa última. 6. Com relação aos conceitos e uso de listas e tuplas, avalie as assertivas a seguir: I. Listas e duplas tem as mesmas propriedades II. As tuplas são mutáveis tal qual as listas III. Os elementos das listas e tuplas são acessados pela sua posição relativa na estrutura, ou seja pelo indice. Estão corretas APENAS as assertivasI e II I e III II e III I,II e III III Explicação: I. Listas e duplas tem as mesmas propriedades - FALSO II. As tuplas são mutáveis tal qual as listas - FALSO, são imutáveis III. Os elementos das listas e tuplas são acessados pela sua posição relativa na estrutura, ou seja pelo indice. - Verdade Apenas III está correto 7. As tuplas nada mais são do que listas, mas com algumas características específicas. Analise as afirmações a seguir. I. Uma vez criada a tupla, podemos modifica-la a qualquer momento. II. Tuplas são capazes de conter quaisquer outros tipos definidos em Python, como números, strings, outras listas, entre outros. III. O acesso aos elementos da tuplas se dá por meio de índices, onde o primeiro índice em pyhton é o zero (0). Após a sua análise, assinale a opção em que são apresentadas apenas as afirmações corretas. Estão corretas as afirmações: II e III. Somente a afirmativa: II. Estão corretas as afirmações: I, II e III. Estão corretas as afirmações: I e II. Estão corretas as afirmações: I e III. Explicação: A afirmativa I é incorreta uma vez que as tuplas são imutáveis. 8. Em Python, dicionário é um tipo de estrutura de dados em que há mapeamento entre uma chave (key) e um valor (value). Qual é o método utilizado para obter o conteúdo associado à chave? value() set() get() key() items() Explicação: Dicionários - Métodos: value() - Permite visualizar os valores armazenados. set() ¿ não existe este método. key() - Permite identificar as chaves de um dicionário. items() - Permite retornar os elementos na forma de tuplas. PROGRAMAÇÃO RAD Lupa Calc. CCT0769_A8_202003114448_V1 Aluno: JOANA FORSTER GADELHA Matr.: 202003114448 Disc.: PROGRAMAÇÃO RAD 2021.1 EAD (GT) / EX Prezado (a) Aluno(a), Você fará agora seu TESTE DE CONHECIMENTO! 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. 1. Considere os seguintes comandos em Phyton >>> str1="Phyton123" >>> str1.isalpha() Qual o resultado da execução dessas 2 linhas de código? "123" Nulo true false "Phyton" 2. Durante o desenvolvimento de uma aplicação verificou-se a necessidade de abrir um arquivo denominado palavras.txt, mas só permitir que o usuário possa ler o arquivo. Sendo assim, qual dos comandos abaixo deve ser utilizado no Python para abrir o arquivo só para leitura e atribuir à variável temas? temas = open('palavras.txt', 'w') temas = open('palavras.txt', 'a') open(temas, 'palavras.txt', 'e') temas = open('palavras') temas = open('palavras.txt', 'e') Explicação: Para abrir um arquivo, o Python possui a função open(). Ela recebe dois parâmetros: o primeiro é o nome do arquivo a ser aberto, e o segundo parâmetro é o modo que queremos trabalhar com esse arquivo: e ¿ somente leitura, w ¿ apenas escrita, a ¿ inserção de dados escrito no final do arquivo, r+ - leitura e escrita. 3. Analise a seguinte string: disciplina = 'Programação III' Qual o comando que permite verificar se a string contém caracteres não alfabéticos? disciplina.char() disciplina.isalpha() disciplina.len() disciplina.alpha() disciplina.strip() Explicação: char() ¿ não existe len() ¿ identifica o tamanho da string. alpha() ¿ não existe strip() ¿ retira os espaços em branco no início e no fim da string. 4. Dado o código Python abaixo, qual será a saída? str1 = "ABCDEF" str2 = "GHIJKL" print(str1[:2].join(str2[3:])) ABJKL JABKABL DGHEGHF JKLABC ABCJKL Explicação: O comando join fará com que cada letra da segunda string (str2[3:] -> "JKL") seja separada pelos símbolos da primeira string(str1[:2] -> "AB") J AB K AB L 5. Para ler apenas 2 caracteres de um objeto do tipo arquivo chamado arq, usamos: arq.open(2) arq.read() arq.read(2) arq.readlines arq.readline() Explicação: arq.read(2) é a sintaxe correta para a leitura de caracteres 6. O Python possui várias bibliotecas para manipulação de dados. Qual das opções abaixo é uma das mais utilizadas? ursos pandas files nets bears Explicação: A biblioteca pandas do Python é uma biblioteca muito utilizada em Data Science, área que precisa manipular grande quantidade de dados. As outras opções não se referem a bibliotecas em Python. 7. Assinale a alternativa que crie uma tupla chamada avaliacao com os seguintes elementos: AV, AVS, SIMULADO. avaliacao ['AV', 'AVS', 'SIMULADO'] avaliacao {'AV', 'AVS', 'SIMULADO'} avaliacao ('AV', 'AVS', 'SIMULADO') avaliacao [AV, AVS, SIMULADO] avaliacao(AV, AVS, SIMULADO) Explicação: Para a criação das tuplas usamos os parênteses. Como os dados são do tipo string, os mesmos devem estar entre aspas (' '). 8. Em Phyton, usamos o comando OPEN() para abrir arquivos. Quantos e quais argumentos devem ser usados no comando? 1 argumento, o caminho e nome do arquivo 2 argumentos, o caminho e nome do arquivo e o modo de abertura do arquivo 1 argumento, que é o caminho (path) do arquivo nenhum argumento é necessário 1 argumento, o modo de abertura do arquivo PROGRAMAÇÃO RAD Lupa Calc. CCT0769_A9_202003114448_V1 Aluno: JOANA FORSTER GADELHA Matr.: 202003114448 Disc.: PROGRAMAÇÃO RAD 2021.1 EAD (GT) / EX Prezado (a) Aluno(a), Você fará agora seu TESTE DE CONHECIMENTO! 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. 1. Considere o seguinte código em Python. É uma função que retorna mais de um valor. def sp(x,y): return (x+y),(x*y) Qual estrutura de dados está permitindo esse retorno no código acima? array lista tupla string vetor Explicação: A estrutura que permite é a tupla. A função sp() está retornando uma tupla com elementos de soma e produto. 2. Considere o trecho de código a seguir, em Phyton def maior(a, b): if a > b: print(a, 'é o maior') elif a == b: print(a, 'é igual a', b) else: print(b, 'é o maior') maior(4, 1) assinale a correta saída do trecho de código 1 é o maior 4 é igual a 1 o trecho de código não executa 4 é o maior nulo Explicação: a = 4 b = 1 a > b --> 4 ´é o maior 3. Para utilizarmos em Python funções matemáticas como por exemplo math.sqrt(2) precisamos em primeiro lugar carregar um módulo. Qual das instruções abaixo realiza essa situação? import all math functions import math Math.math Math.load math load math package Explicação: Em Python utilizamos o comando ¿import¿ para carregar um módulo, no caso acima a intrução para carregar o módulo math seria ¿import math¿. 4. Avalie cadaassertiva a seguir no que se refere a aplicação dos conceitos de escopo e tempo de vida de uma variável I. Não é possível ter uma variável local a uma função com mesmo nome de uma variável global II. Uma variável local só é reconhecida enquanto a função estiver em execução III. A forma de defirmos em Phyton que uma variável usada internamente em uma função é na verdade global, é inserir o termo global antes da referencia a variável, dentro da função. Algo como global ind, sendo "ind" o nome da variável global. Assinale a Unica opção que apresenta a resposta com as assertvas corretas I, II e III Apenas III Apenas II e III Apenas I e II Apenas II Explicação: I. Não é possível ter uma variável local a uma função com mesmo nome de uma variável global - FALSO, é possível sim II. Uma variável local só é reconhecida enquanto a função estiver em execução --> VERDADE III. A forma de defirmos em Phyton que uma variável usada internamente em uma função é na verdade global, é inserir o termo global antes da referencia a variável, dentro da função. Algo como global ind, sendo "ind" o nome da variável global. -->VERDADE 5. Em Phyton, tal qual em outras linguagens de programação, esperamos que uma funçao retorne um valor. E para tal usamos a palavra chave ________. Porém nem sempre essa palavra chave é obrigatória. Em algumas linguagens, quando isso ocorre a função é chamada de __________________ Assinale a UNICA opção que completa as frases adequadamente. Result e rotina em geral Enter e procedure (procedimento) return e procedure (procedimento) Value e procedure (procedimento) Target e procedure (procedimento) 6. Para o seguinte código abaixo um tipo de dados não pode ser utilizado, qual? def f(l): for i in l: print(i) string inteiro dicionário lista tupla Explicação: A função definida itera sobre um tipo de dados que possua vários componentes, no caso lista, tupla e string podem ser utilizadas com a função, mas se for usado o tipo inteiro ocorrerá um erro. A resposta correta é inteiro. PROGRAMAÇÃO RAD Lupa Calc. CCT0769_A10_202003114448_V1 Aluno: JOANA FORSTER GADELHA Matr.: 202003114448 Disc.: PROGRAMAÇÃO RAD 2021.1 EAD (GT) / EX Prezado (a) Aluno(a), Você fará agora seu TESTE DE CONHECIMENTO! 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. 1. Avalie as assertivas a seguir, no que se refere aos conceitos de módulos e pacotes. I. Tanto módulo como pacote são formas de organizarmos os arquivos que compõem o projeto do software. II. Mas há diferença entre os 2 conceitos III. Os módulos são organizados em pastas e os pacotes organizados em arquivos Assinale a UNICA opção que apresente APENAS TODAS as assertivas corretas. Apenas I Apenas II e III Apenas I e II Apenas I e III I, II e III Explicação: I. Tanto módulo como pacote são formas de organizarmos os arquivos que compõem o projeto do software. - verdade II. Mas há diferença entre os 2 conceitos - verdade III. Os módulos são organizados em pastas e os pacotes organizados em arquivos - FALSO ao contrário - modulos são organizados em arquivos e pacotes organizados em pastas 2. Vamos supor o seguint trecho de código em Phyton, dentro do módulo frete.py >>>import transportes.logistica.frete >>>transportes.logistica.frete.entrega() O que faz o segundo comando acima ( >>>transportes.logistica.frete.entrega() ) ? O comando está incorreto e não executa Importaçao do módulo uso da função de nome entrega Leitura do módulo frete.py Importação da função de nome entrega 3. Considere o seguinte código: from statistics import mean Para calcularmos a média como fica a chamada da função? mean[2,3,4] math.statistics.mean([2,3,4]) math(2,3,4) math(2,3,4).final statistics.mean([2,3,4]) Explicação: Quando usamos o comando import em python não precisamos utilizar o nome do pacote antes do comando, no caso para calcular a média precisamos chamar apenas mean([2,3,4]), logo a resposta correta é mean[2,3,4] 4. Considere um arquivo que contenha as funções soma, subtração, multiplicação e divisão. Esse arquivo poderia ser um módulo: de funções relacionadas a strings de funções relacionadas somente a inteiros de funções de rede de funções matemáticas de funções de computação gráfica Explicação: Um módulo em Python é um arquivo contendo definições de funções e instruções. No caso da questão, como as funções se referem a matemática, a resposta correta seria "de funções matemáticas". 5. Qual seria uma possível chamada para utilizar um módulo de um determinado pacote em Python? import pacote import pacote.modulo export pacote import modulo.pacote import modulo Explicação: a sintaxe correta é import pacote.modulo. Em Python temos sempre o pacote (que é uma coleção de módulos) e o módulo correspondente. 6. Como a linguagem PHYTON identifica que trata-se de um pacote ? Não existe uma forma objetiva de saber Pela existencia de um arquivo, na raiz principal da pasta, de nome _This_is_a_Package. Por um arquivo especial, chamado _This_a_package Pela existencia, na estrutura de pastas, do arquivo _init_.py Pelo cabeçalho no pacote, contendo a identificação _PY_package
Compartilhar