As ações executadas em resposta a um evento são os event handlers e, ao estruturar uma interface gráfica em classes, é possível escrevê-los no formato de métodos, que são as funções definidas dentro da classe para depois atribuir o evento ao event handler.Após análise do trecho apresentado, avalie as asserções a seguir e a relação proposta entre elas.I. Os event handlers são as ações executadas em resposta a um evento, ao associar <Button-1> a um event handler, não é preciso soltar o botão do mouse para que ele seja executado.PORQUEII. O event handleré chamado por meio da ação de pressionar o botão do mouse, pois os eventos clicar e soltar do mouse, em um widget, agem de forma diferente em Tkinter.A respeito dessas asserções, assinale a alternativa correta.
No desenvolvimento em Python, existem ferramentas e frameworks que ajudam na construção de interfaces gráficas, como no caso do framework, que é uma biblioteca da linguagem Python que acompanha a instalação padrão, sendo definido como um conjunto de revestimentos que permitem a implementação dos widgets com classes Python e, geralmente, estão presente na maioria das instalações Python, havendo a necessidade apenas da biblioteca.Analise as alternativas a seguir e indique a que representa o framework citado no enunciado.
O frame na programação para GUI é um local, na aplicação gráfica, em que se posicionam os aspectos a serem exibidos na interface gráfica, ou seja, é um widget que serve para armazenar e agrupar outros widgets.Analise as afirmativas que envolvem a criação de uma aplicação que exibe dois frames e verifique se são (V) verdadeiras ou (F) falsas.I. ( ) Deve-se criar dois labels (label1, label2) e passar os frames criados como argumento, no caso, um label para cada frame.II. ( ) Deve ser utilizado o pack() para posicionar os labels nos respectivos frames.III. ( ) Deve ser usado o index() para posicionar os frames.IV. ( ) Deve ser chamada a função mainloop() para rodar a aplicação.Assinale a alternativa que apresenta a sequência correta.
Há vários recursos para a implementação de interfaces gráficas interativas em Python. No contexto desta questão será usado o kit de ferramentas GUI do módulo tkinter, que faz parte da Biblioteca Padrão Python.Analise as alternativas a seguir e indique a que corresponde ao comando para informar sobre a importação dos códigos do módulo tkinter.
A interação entre código e usuário pode ser realizada por meio de cliques em botões e por meio de áreas em forma de retângulo, em que é possível a escrita de algum texto, portanto uma forma de capturar dados do usuário é por meio do ___________ em que os dados informados são captados em forma de ___________, e o que permite trabalhar tais dados dentro código é o método ___________, fornecido pelo Entry que aceita a maior parte das configurações para botões e labels.Preencha as lacunas escolhendo a alternativa correta.
O widget Frame pode ser entendido como um conteiner retangular com a principal finalidade de servir de base para a instalação de outros widgets, cujo posicionamento depende do fornecimento de informações precisas em relação às coordenadas x e y para o canto superior esquerdo do widget.Após análise do conceito sobre o widget Frame, avalie as asserções a seguir e a relação proposta entre elas.I. Ao utilizar uma função up() para mover a coordenada y em 10 unidades, o que acontece é o que o valor de y diminui 10 unidades.PORQUEII. O sistema de coordenadas na tela de desenho não é o mesmo adotado pelo sistema de coordenadas.A respeito dessas asserções, assinale a alternativa correta.
Uma interface gráfica do usuário (GUI) consiste em blocos de montagem visuais básicos, normalmente chamados de widgets. Botões, labels, formulários de entrada, menus e caixas de seleção são exemplos de widgets. Em Python, para o correto posicionamento de widgets, são passadas diretivas para o gerenciador de geometria (geometry manager) da tkinter.Sobre o posionamento de widgets, escolha a alternativa que contém somente afirmações corretas.I. Com o uso do método grid() para fornecer diretivas ao gerenciador de geometria, a janela é dividida em linhas e colunas; e cada célula pode armazenar um widget.II. Usando-se o método pack(), para fornecer diretivas ao gerenciador de geometria, pode ser definido o argumento opcional side para que o widget seja empurrado contra determinada borda de seu master.III. Se precisarmos colocar vários widgets em um padrão tipo grade, o método **grid()**é mais apropriado que o método pack().IV. Para que seja definido um melhor posicionamento dos widgets, podem ser passadas diretivas ao gerenciador de geometria usando-se a função clicked().
A linguagem Python destaca-se pelos vários módulos de sua biblioteca padrão.Considerando os módulos e funções que permitem que desenvolvedores acessem e processem recursos na Web, avalie as afirmações a seguir em relação às suas funcionalidades e as relacione adequadamente aos termos a que se referem.
Biblioteca html.parser.
Biblioteca urllib.request.
Função urlopen().
I. É usada para abrir uma URL: formulando uma requisição HTTP que é enviada ao servidor especificado no parâmetro; e retornando um objeto de resposta.II. Facilita o processamento de elementos HTML de uma página Web.III. Com o uso de suas funções e classes, qualquer programa pode atuar como um cliente Web e acessar e baixar recursos na Web, abrindo URLs, principalmente as URLs HTTP..
Os elementos HTML integram um arquivo fonte HTML em que cada um responsabiliza-se por definir um componente, como um cabeçalho, uma lista, uma imagem ou um link), que faz referência à página web a que se associa.Considerando tais elementos, avalie as afirmações a seguir, em relação às suas funções, e as relacione adequadamente aos termos a que se referem.
Cabeçalho.
Lista.
Parágrafo.
I. Usado no agrupamento de conteúdos relacionados a um determinado tipo.II. Descreve de forma sucinta o tópico da seção em que se encontra.III. Serve para representar itens de forma ordenada iniciando com a tag <ol>.Assinale a alternativa que relaciona adequadamente os dois grupos de informações.
Os protocolos de rede funcionam como uma linguagem universal pois abrangem normas que permitem a comunicação entre computadores conectados à internet, em que os dados dividem-se em pacotes que trafegam por distintos caminhos até seu destino, ocasião em que são novamente recompostos.Após análise do conceito apresentado sobre protocolos de rede, avalie as asserções a seguir e a relação proposta entre elas.I. Havendo duas ou mais máquinas conectadas à internet, é possível sua comunicação devido aos protocolos de rede que possibilitam uma interpretação das informações por parte desses computadores.PORQUEII. Esses protocolos são definidos por elementos-chaves que possibilitam essa interpretação, são eles: a sintaxe, a semântica e o timing.A respeito dessas asserções, assinale a alternativa correta.
Ao se acessar um site por meio de um navegador, uma requisição é disparada pela internet em direção ao computador em que o site é hospedado e, após o envio da requisição, a aplicação que trabalha para o usuário espera até chegar a resposta do servidor para que a comunicação possa ser encerrada. Todo o processo acontece entre computadores.Analise as alternativas a seguir e indique a que retrata a comunicação apresentada no enunciado.
Considere o seguinte trecho de código em HTML<ahref=”http://www.w3.org”>Clique aqui</a>I. O trecho é um exemplo de uso de âncoras em HTML.II. O trecho define um hiperlink para um outro site.III. O navegador Web irá exibir a string “Clique aqui”, possibilitando o usuário clicar nela e ser direcionado para outra página.IV. O código possui um elemento HTML que, por sua vez, possui um atributo.Estão corretas:
Considere o seguinte trecho de código em Python:from urllib.request import urlopen resp = urlopen('http://www.google.com')for field in resp.getheaders():print(field)I. O trecho usa a API em Python URLLIB para fazer a requisição de uma página contida na URL especificada na função urlopen.II. A função urlopen irá retornar um objeto da classe http.client.HTTPResponse.III. O loop irá percorrer todos os campos de cabeçalho retornados pela requisição.IV A URL especificada precisa estar online para que o código funcione como esperado.Estão corretas:
As tecnologias utilizadas para construção de sites são chamadas de padrões da web que englobam as especificações (documentos técnicos para detalhar a forma exata do funcionamento). Para uma página web, devem ser considerados no seu conteúdo elementos que definem layout, cabeçalhos, imagens, vídeos, hiperlinks, dentre outros. __________ é uma linguagem de __________ contendo distintos elementos que podem agrupar o conteúdo, a fim de oferecer uma __________.Preencha as lacunas escolhendo a alternativa correta.
Há um algoritmo eficiente para encontrar um elemento presente em uma lista ordenada que, repetidas vezes, separa a parte da lista que contém o elemento, a fim de reduzir as possíveis localizações a somente uma localização, sendo assim, a ______________ inicia com um palpite da localização do elemento procurado que sempre é o elemento localizado no ______________ do vetor, caso o palpite seja correto, significa que o elemento foi encontrado, mas se o palpite for errado então o próximo palpite fica restrito a uma parte do vetor porque ele encontra-se ______________.Preencha as lacunas escolhendo a alternativa correta.
A pesquisa em memória primária tem a capacidade de encontrar a informação (que é dividida em registros contendo uma chave) desejada em um grande volume de dados. A busca por essa informação requer a escolha de um método de busca que considere a quantidade de dados envolvidos e a periodicidade das operações de inserção e remoção.Considerando a pesquisa em memória primária, avalie as afirmações a seguir em relação aos métodos de pesquisa e as relacione adequadamente aos termos a que se referem.
Pesquisa sequencial.
Pesquisa binária.
Transformação de chave (hashing).
I. Os registros armazenados em uma tabela são diretamente endereçados a partir de uma transformação aritmética sobre a chave de busca.II. Percorre-se uma lista comparando a chave de busca com o valor de cada posição. Se o valor da chave for igual para alguma posição, então devolva esta posição. Caso a lista toda tenha sido percorrida então devolva -1, indicando que a chave não foi encontrada.III. Adota o paradigma dividir para conquistar, fazendo com que o tempo de busca seja reduzido, pois, a cada iteração do algoritmo, o tamanho do vetor é dividido ao meio.Assinale a alternativa que relaciona adequadamente os dois grupos de informações.
Na intenção de mostrar para os alunos a importância da ordenação interna, um professor apresentou o seguinte conceito: a ordenação de elementos fundamenta-se em sua organização de forma crescente ou decrescente, a fim de facilitar a pesquisa desses elementos, portanto a ordenação foca em facilitar buscas por um elemento que são realizadas em um determinado conjunto de dados. Desse modo, o algoritmo de ordenação deve ser escolhido considerando o tempo utilizado pela ordenação.Após a explicação, um aluno questiona: a escolha do algoritmo de ordenação interna deve basear-se no número de elementos, e não no tempo que a ordenação leva.Após análise da situação apresentada, avalie as asserções a seguir e a relação proposta entre elas.I. O aluno está certo, a escolha pelo algoritmo de ordenação interna deve tomar como base a quantidade de elementos que compõem a lista.PORQUEII. Na existência de uma grande quantidade de elementos a serem ordenados, eles não se acomodam na memória principal, e o acesso a esses elementos ocorre de forma sequencial ou em grandes blocos.A respeito dessas asserções, assinale a alternativa correta.
Os algoritmos de ordenação reúnem um conjunto de instruções que recebem um array ou lista como entrada e organizam os itens em uma ordem específica. Existe um algoritmo de ordenação em que são realizadas diversas passagens por meio de uma lista, comparando os elementos vizinhos e trocando-os, caso estejam fora de ordem. Dessa forma, a cada passagem pela lista, coloca-se o maior valor em sua devida posição e, assim, cada elemento movimenta-se para a posição que lhe pertence.Analise as alternativas a seguir e indique a que retrata o algoritmo de ordenação citado.
Considere a seguinte implementação em Python de um algoritmo de busca:defbusca(v, chave):for i inrange(len(v)):if chave == v[i]:return i return-1O algoritmo de busca implementado acima é a:
O algoritmo de ordenação Quick Sort escolhe um pivô que corresponde ao primeiro elemento da lista e o troca de posição com o elemento do meio da lista. É iniciada a varredura da lista comparando os elementos com esse pivô, de forma que os elementos _____________ que ele são colocados ou mantidos na lista do lado esquerdo, e os elementos _____________ que ele são colocados ou mantidos na lista do lado direito. Ao realizar esse processo de forma _____________, chega-se ao final com uma lista totalmente ordenada.Preencha as lacunas escolhendo a alternativa correta.
Em uma árvore binária de busca, também conhecida por árvore ordenada:I. Ao buscar um elemento, é possível que este não esteja na árvore.II. Ao comparar o elemento a ser buscado com a raiz, se este for maior, deve-se iniciar a busca na subárvore da esquerda.III. Para saber se um elemento existe ou não na árvore, basta compará-lo com a raiz.Selecione a alternativa correta.
As estruturas de dados organizadas em pilhas permitem inserir e remover um elemento do final da pilha construída, o que indica que o último elemento que foi inserido na estrutura será o primeiro elemento a ser removido da estrutura, e para que isso aconteça normalmente a implementação é feita com arranjos utilizando métodos para inserção e para remoção.Assinale a alternativa que representa o método destinado à inserção de elementos na pilha.
Nas estruturas não sequenciais os elementos não são individualizados por meio de seu índice. Portanto utilizam meios que possibilitam o acesso a esses elementos, tais meios são coleções de dados que permitem, por exemplo, adicionar, remover, acessar, pesquisar e ordenar. _____________ são coleções de dados não ordenados que comporta elementos _____________ e imutáveis (como string, int e tuplas) e possuem métodos para operações matemáticas (união, interseção, diferença e diferença assimétrica). Os _____________ são não sequenciais e compreendem uma chave e um valor, sendo que cada chave possui um valor associado, o que possibilita o acesso à um elemento individual, portanto, devem ser utilizados diante da necessidade de armazenamento de dados de maneira organizada.Preencha as lacunas escolhendo a alternativa correta.
Dada a seguinte definição, assinale a alternativa que melhor representa o conceito apresentado:“Retorna elementos em ordem inversa” também representado pela sigla LIFO (do inglês, last in, first out).
A lista em Python é uma estrutura genérica, ou seja, é uma generalização de pilhas e filas. Em outras palavras, podem ser implementadas pilhas e filas usando-se listas. Apesar de a linguagem Python oferecer um mecanismo simples e intuitivo para criação e manipulação de listas, é importante conhecermos suas variações, pois dependendo do caso, será necessário escolher diferentes implementações para melhorar a performance da aplicação.Considerando as quatro maneiras básicas de se implementar uma lista, avalie as afirmações a seguir e relacione-as adequadamente aos termos ou conceitos às quais se referem.
Alocação estática.
Alocação dinâmica.
Alocação sequencial.
Alocação encadeada.
I. Diz respeiro ao momento de alocação da memória. Toda memória é alocada de uma única vez, de antemão, quer no início, quer durante a execução do programa.II. Os elementos são inseridos contiguamente, um ao lado do outro, na memória principal. Assim sendo, tem-se acesso direto por meio dos índices; em outras palavras, é permitida a realização de um acesso aleatório a uma determinada posição da lista.III. A alocação da memória é feita sob demanda à medida que a lista cresce.IV. Os elementos são relacionados por meio de ponteiros, que indicam qual o próximo elemento, dado o elemento atual. O encadeamento pode ir crescendo aos poucos conforme vão sendo adicionados novos elementos.Assinale a alternativa que correlaciona adequadamente os dois grupos de informação.
Uma árvore binária exibe os elementos que ela armazena e em algumas aplicações é preciso percorrê-la de modo sistemático realizando a visita em cada nó uma só vez e obedecendo uma ordem preestabelecida. Considerando as estratégias que possibilitam percorrer uma árvore, avalie as afirmações a seguir, em relação a tais estratégias, e relacione-as adequadamente aos termos às quais se referem.
Pré-ordem.
In-ordem.
Pós-ordem.
I. Visita o número contido no filho esquerdo, depois o próprio nó, e logo após o nó do filho direito, de forma recursiva.II. Visita o número contido em um nó, mas somente depois de visitar os nós dos dois filhos.III. Visita o número contido em um nó, depois a subárvore da esquerda e, por último, a da direita, de forma recursiva.Assinale a alternativa que correlaciona adequadamente os dois grupos de informação.
Uma árvore apresenta uma estrutura hierárquica de vários elementos, ou seja, é composta por um conjunto de _____________ e serve, por exemplo, para organizar informações em sistemas de banco de dados, pois permite um tratamento computacional eficiente sendo mais fácil de manipular. Há um nó chamado _____________, que passa a ser identificado por r e que possui zero ou mais subárvores cujas raízes estão ligadas a r, e os nós-raízes dessas subárvores são chamados _____________ do nó _____________ r. O número de subárvores de cada nó é chamado de grau desse nó*.* As folhas de uma árvore não possuem filhos, sendo, portanto, nós com grau zero.Preencha as lacunas escolhendo a alternativa correta.