AFRFB - TI - Jaime Correia

  • View
    2.434

  • Download
    0

Embed Size (px)

Text of AFRFB - TI - Jaime Correia

  • 1. Professor Gledson Pompeu gledson.pompeu@gmail.comReceita Federal do Brasil Perfil: Auditor FiscalProva aplicada em Dez/2005 Material elaborado pelos Prof. Walter Cunha e Jaime CorreiaPara mais informaes, acesse http://www.waltercunha.com

2. 01- Analise as seguintes afirmaes relacionadas a noes bsicas de programao: I. A idia bsica do algoritmo de ordenao bubble sort montar uma rvore com os dados a serem ordenados, percorrer esses dados pela ltima camada denominada folhas e, a cada passagem, comparar cada elemento da folha com o seu sucessor. Se os elementos no esto ordenados deve-se troc-los de posio. II. Na orientao a objetos, uma classe uma abstrao de software que pode representar algo real ou virtual. Uma classe formada por um conjunto de propriedades (variveis) e procedimentos (mtodos). III. Uma funo dita recursiva quando em seu cdigo existe uma chamada a si prpria, podendo utilizar os mesmos parmetros de entrada (correndo o risco de provocar um ciclo infinito) ou outros. IV. Uma rvore binria um conjunto finito de elementos que ou est vazio ou est dividido em 3 subconjuntos: um elemento chamado raiz da rvore e dois subconjuntos, cada um dos quais , por si s, uma rvore binria, chamadas sub-rvore direita e sub-rvore esquerda.Indique a opo que contenha todas as afirmaes verdadeiras. a) I e II b) II e IV c) II e III d) I e III e) III e IVI O algoritmo de ordenao bubble sort no utiliza rvores na sua implementao. Utiliza , em geral, um vetor para sua implementao. Heapsort utiliza rvore com essa descrio. II Uma classe representa uma coleo de objetos. Esses podem representar algo real ou virtual. Professor Gledson Pompeu Material elaborado pelos Prof. Walter Cunha e Jaime Correiagledson.pompeu@gmail.com Para mais informaes, acesse http://www.waltercunha.com 3. Fundamentao Principais Algoritmos de Ordenao- BubbleSort O princpio geral deste mtodo comparar elementos adjacentes (vizinhos) e, caso eles estejam fora de ordem (segundo o critrio de ordenao) troc-los de posio. Este procedimento vai se repetindo at que toda a estrutura esteja ordenada. Vrios passos vo sendo executados, at que todos os elementos estejam em ordem.- ShellSort O mtodo Shell que leva o nome de seu inventor, Ronald L. Shell consiste na aplicao do mtodo da Insero, em vrios passos, a elementos no consecutivos (separados por determinados intervalos). A cada passo, esse intervalo decresce: por exemplo, primeiro, so ordenados entre si todos os elementos separados de quatro posies. Em seguida, so ordenados os elementos aduas posies de distncia. Finalmente, so ordenados os elementos adjacentes.- Heapsort O mtodo realiza a ordenao atravs de seleo em uma rvore binria. Primeiramente, monta-se uma rvore binria, no prprio vetor, de tal modo que o valor contido em cada n seja maior que o contido nos seus sucessores. Em seguida, essa rvore usada para colocar os elementos na ordem desejada (via seleo).Professor Gledson Pompeu Material elaborado pelos Prof. Walter Cunha e Jaime Correiagledson.pompeu@gmail.com Para mais informaes, acesse http://www.waltercunha.com 4. Fundamentao- Ordenao por Seleo Na ordenao por seleo, o elemento de valor mais baixo do vetor identificado e permutado com o primeiro elemento. Dos elementos restantes, o de valor mais baixo escolhido e permutado com o segundo elemento do vetor. O processo se repete sucessivamente, at que o vetor esteja ordenado. - Ordenao por Insero Este mtodo baseia-se na idia de inserir um a um os elementos em subconjuntos j ordenados do vetor. Para comear, podemos considerar ordenado o subconjunto formado apenas pelo primeiro elemento do vetor. Inserimos, ento o segundo elemento, com o que temos um novo subconjunto (de dois elementos) ordenado. A seguir, o terceiro elemento colocado em sua posio adequada em relao aos dois primeiros elementos. O processo continua para os demais elementos, at que todos estejam em sua posio correta. - Quicksort Este, que um dos melhores mtodos de ordenao, baseia-se na interessante idia de particionar sucessivamente a estrutura, visando ordenar pores menores, separadamente. O ganho de desempenho decorre do fato de que mais rpido ordenar dois vetores de tamanho N/2 do que um de tamanho N.Professor Gledson Pompeu Material elaborado pelos Prof. Walter Cunha e Jaime Correiagledson.pompeu@gmail.com Para mais informaes, acesse http://www.waltercunha.com 5. 02 - Analise as seguintes afirmaes relacionadas a noes bsicas de programao: I. O interpretador l o programa e executa comando aps comando, at que encontre um erro, aps o qual pra, mostrando a linha onde o erro foi encontrado. possvel ver parte do programa funcionando e mostrando resultados, mesmo sem estar completo. II. A programao estruturada uma tcnica de programao que permite estabelecer uma correspondncia perfeita entre o algoritmo, o diagrama de programao (fluxograma) e a listagem de um programa. III. Em programao orientada a objetos, diz-se que uma classe em particular de um dado objeto uma instncia desse objeto. IV. O processo de compilao no gera novo cdigo e o prprio programa escrito em linguagem de alto nvel colocado em execuo. Durante a execuo, o compilador converte cada instruo para linguagem de mquina e a executa. Indique a opo que contenha todas as afirmaes verdadeiras. a) I e III b) II e III c) III e IV d) I e II e) II e IVIII Na verdade a o objeto uma instncia da classe. IV A partir da linguagem de alto nvel gerado o cdigo-objeto no processo de compilao. O programa escrito em alto nvel no colocado diretamente em execuo. A compilao no feita durante a execuo. Professor Gledson Pompeu Material elaborado pelos Prof. Walter Cunha e Jaime Correia gledson.pompeu@gmail.com Para mais informaes, acesse http://www.waltercunha.com 6. Fundamentao Compilao Compilador um programa que traduz todo o cdigo-fonte de programas escritos numa linguagem de alto nvel em cdigo-objeto da execuo do programa. O processo de compilao mais complexo e demorado que o de montagem, pois um nico comando pode gerar vrias instrues de mquina. O compilador realiza uma anlise do cdigo fonte, a qual dividida em 3 partes funcionalmente distintas: anlise lxica: decompe o programa fonte em seus elementos individuais distintos, os quais so verificados de acordo com as regras da linguagem; anlise sinttica: cria estruturas de cada comando, na verificao da correo dessas estruturas e na alimentao da tabela de smbolos com as informaes geradas; anlise semntica: verifica as regras semnticas estticas da linguagem, produzindo mensagem de erro para as incorreesVantagens: Usa a memria apenas por perodos definidos de tempo, economizando memria; Na ocorrncia de loop, o cdigo fonte compilado apenas uma nica vez. Desvantagem: A identificao de erros no programa se torna mais problemtica quando o cdigo executvel entra em fase de execuoProfessor Gledson PompeuMaterial elaborado pelos Prof. Walter Cunha e Jaime Correiagledson.pompeu@gmail.comPara mais informaes, acesse http://www.waltercunha.com 7. FundamentaoInterpretao O mtodo alternativo chama-se de interpretao e, a partir do programa fonte, realiza as trs fases (compilao, ligao e execuo), comando por comando, em tempo de execuo. No existem fases distintas nem se produzem cdigos intermedirios. Todo o processo de converso efetuado em tempo de execuo e imediatamente executado. Ou seja, cada comando lido, verificado, convertido em cdigo executvel e imediatamente executado, antes que o comando seguinte seja sequer lido. Vantagens: Capacidade de identificar e indicar um erro no programa fonte tanto na etapa de converso esttica como na dinmicaDesvantagens Consumo de memria; Partes do cdigo de um programa fonte necessitar ser interpretadas tantas vezes quantas definidas no loopProfessor Gledson PompeuMaterial elaborado pelos Prof. Walter Cunha e Jaime Correiagledson.pompeu@gmail.comPara mais informaes, acesse http://www.waltercunha.com 8. 03- Na programao orientada a objetos, o encapsulamento a) a base de toda a abordagem dessa metodologia de programao e diz-se que um dado est encapsulado quando envolvido por cdigo de forma que s visvel na rotina onde foi criado; o mesmo acontece com uma rotina, que sendo encapsulada, suas operaes internas so invisveis s outras rotinas. b) pode ser entendido como sendo um conjunto de instncias criadas a partir de um outro conjunto de instncias com caractersticas semelhantes. c) definido como sendo uma tcnica que permite a um cdigo possuir vrios comportamentos ou produzir vrios comportamentos. d) possibilita a criao de uma nova classe de modo que essa classe (denominada subclasse, classe-filha ou classe derivada) herda todas as caractersticas da classe-me (denominada superclasse, classe base ou classe primitiva); podendo, ainda, a classe-filha possuir propriedades e mtodos prprios. e) considerado como a habilidade de modelar caractersticas do mundo real do problema que o programador esteja tentando resolver.O item B absurdo. O item C refere-se ao Polimorfismo. O item D refere-se a herana. O item D refere-se a abstrao. Professor Gledson PompeuMaterial elaborado pelos Prof. Walter Cunha e Jaime Correia gledson.pompeu@gmail.comPara mais informaes, acesse http://www.waltercunha.com 9. FundamentaoSegundo Gary Booch, existem quatro caractersticas fundamentais para uma linguagem de programao ser considerada orientada a objetos, so elas: Abstrao Encapsulamento Modularidade HierarquiaSem uma dessas caractersticas, a linguagem no considerada do tipo OO.Alguns autores consideram o Polimorfismo ao invs da modularidade como caracterstica fundamental para uma linguagem ser orientada a objetos. Booch considera o polimorfismo como sendo uma caracterstica secundria.Professor Gledson Pompeu Material elaborado pelos Prof. Walter Cunha e Jaime Correiagledson.pompeu@gmail.com Para mais informaes, acesse http://www.waltercunha.com 10. 04- Classes e objetos so dois conceitos-chave da programao orientada a objetos. Com relao a este