Baixe o app para aproveitar ainda mais
Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original
Document Cloud/Provas_De_Desenvolvimento_de_Software2017.pdf /////////////////////// Prova A1 /////////////////////////////////////////////////////// 1a Questão (Ref.: 201602459313) Fórum de Dúvidas (1) Saiba (1) Sobre estrutura de dados, identifique o que está correto afirmar. I. Pilha é uma estrutura de dados com acesso restrito aos seus elementos, uma vez que eles são colocados e retirados por um único lado e são ordenados pelo princípio LIFO (last in first out). Assim, sempre que um elemento é adicionado ou retirado seu topo é alterado. II. Pilha é o tipo de estrutura usada, por exemplo, na avaliação de expressões numéricas, na recursividade e pelos compiladores, na passagem de parâmetros para as funções. III. Registro é uma estrutura básica que permite guardar coleções de dados de diferentes tipos, sendo normalmente utilizado quando um objeto tem diferentes atributos, isto é, contém campos de diferentes tipos. IV. Lista pode conter um número qualquer de elementos, expandindo-se ou contraindo-se conforme o elementos são inseridos ou retirados. Nesse tipo de estrutura, os acessos tanto podem ser feitos sequencialmente como diretamente. V. Fila, assim como a pilha , é uma versão especial de lista, e como tal, seus elementos são ordenados pelo princípio LIFO (last in first out). II, III, IV e V. I, II e III. I, III e V. I, III, IV e V. II, IV e V. Gabarito Comentado 2a Questão (Ref.: 201602983098) Fórum de Dúvidas (1) Saiba (1) Preciso cadastrar todos os interessados em meu novo curso de programação. Qual a estrutura de dados mais adequada para modelar este problema, visto que não há qualquer preocupação com ordem de chegada ou saída de aluno da turma. Fila Árvore Grafo Lista Pilha 3a Questão (Ref.: 201602983090) Fórum de Dúvidas (1) Saiba (1) Os irmãos Silva irão viajar por vários países da Europa e por isso, traçaram no mapa o percurso que farão, de cidade a cidade. Qual a estrutura de dados mais adequada para modelar este problema ? Pilha Fila Grafo Árvore Lista 4a Questão (Ref.: 201603005719) Fórum de Dúvidas (1) Saiba (1) As estruturas de dados podem ser caracterizadas como sendo uma forma organizada de armazenar dados ou informações na memória, de modo a otimizar o acesso a estes. Muitas vezes existem algoritmos de manipulação de dados associados a estas estruturas. Verifique as seguintes sentenças: I-Filas são estruturas que recuperam os dados na ordem direta em que estes foram armazenados. II-As Pilhas são estruturas que recuperam os dados na ordem reversa em que estes foram armazenados. III-As Pilhas são estruturas que recuperam os dados na ordem direta em que estes foram armazenados. IV-As Filas são estruturas que recuperam os dados na ordem reversa em que estes foram armazenados. Marque a alternativa CORRETA: Todas as alternativas estão corretas. As alternativas I e III estão corretas. As alternativas I e II estão corretas As alternativas III e IV estão corretas. As alternativas II e IV estão corretas. 5a Questão (Ref.: 201602594440) Fórum de Dúvidas (1) Saiba (1) As estruturas de dados podem ser caracterizadas como sendo uma forma organizada de armazenar dados ou informações na memória, de modo a otimizar o acesso a estes. Muitas vezes existem algoritmos de manipulação dados associados a estas estruturas. Verifique as seguintes sentenças: I-Filas são estruturas que recuperam os dados na ordem direta em que estes foram armazenados. II-As Pilhas são estruturas que recuperam os dados na ordem reversa em que estes foram armazenados. III-As Pilhas são estruturas que recuperam os dados na ordem direta em que estes foram armazenados. IV-As Filas são estruturas que recuperam os dados na ordem reversa em que estes foram armazenados. Marque a alternativa CORRETA: Todas as alternativas estão corretas. As alternativas I e III estão corretas. As alternativas II e IV estão corretas. As alternativas III e IV estão corretas. As alternativas I e II estão corretas Gabarito Comentado 6a Questão (Ref.: 201602980492) Fórum de Dúvidas (1) Saiba (1) Qual estrutura de dados não linear que é utilizada na implementação de Redes de Computadores, na Computação Gráfica, em modelagem de circuitos digitais e etc. E que se caracteriza por apresentar um conjunto de nós e conexões entre eles. Pilhas Encadeadas Grafos Filas Encadeadas Listas Encadeadas. Vetores 7a Questão (Ref.: 201603069154) Fórum de Dúvidas (1 de 1) Saiba (1 de 1) Observe o trecho do programa em C++ abaixo e, após, entrar com os valores sugeridos para sua execução assinale a alternativa que representa a resposta final. cin >> a; cin >> b; cin >> c; cin >> d; cout << a; cout << b; cout << c; cout << d; cout << d; cout << c; cout << b; cout << a; Após a impressão dos valores pela ordem teremos duas filas. Após a impressão dos valores pela ordem teremos uma fila e um grafo. Após a impressão dos valores pela ordem teremos uma fila e uma pilha. Após a impressão dos valores pela ordem teremos duas pilhas. Após a impressão dos valores pela ordem teremos uma pilha e uma fila. 8a Questão (Ref.: 201603005747) Fórum de Dúvidas (1) Saiba (1) As estruturas de dados são utilizadas para manter dados ou informações organizados na memória, o que possibilita a otimização do uso destes dados. Porém, as estruturas guardam características especiais na manipulação destes dados, assim deve-se escolher a estrutura certa ou mais adequada para uma determinada aplicação. Portanto marque a opção que representa a melhor estrutura, quando se tem como requisitos principais o acesso aleatório aos dados e alocação destes de forma contínua na memória. Fila Sequencial Lista Sequencial Pilha Encadeada Pilha Sequencial Lista Encadeada /////////////////////// Prova A2 /////////////////////////////////////////////////////// 1a Questão (Ref.: 201602459349) Fórum de Dúvidas (1) Saiba (1) Assinale a opção certa. Quando não se escreve o protótipo de uma função ... A chamada da função não poderá ser feita em qualquer hipótese. É preciso definir a função antes do programa principal. O programa não funcionará de forma alguma. A definição da função deverá ser escrita, obrigatoriamente, após o programa principal. A chamada da função poderá ser feita em qualquer hipótese. Gabarito Comentado 2a Questão (Ref.: 201602392213) Fórum de Dúvidas (1) Saiba (1) Com a utilização das estruturas de dados e seus tipos, em algumas situações é imprescindível a criação de funções que façam determinada verificação ou ação nestas estruturas. Dessa forma, analise a função abaixo e marque corretamente a alternativa que descreve as funcionalidades desta. int funcao(float v[], float vl, int n) { for (int i = 0; i < n; i++) if (v[i] == vl) return i; return -1; } Retorna -1 se o valor de n foi encontrado. Resulta em erro, se o valor de vl não estiver dentro de v. Retorna -1 se o valor de vl estiver dentro de v. Retorna a posição de v se o valor vl foi encontrado. Retorna o valor de vl se o valor n foi encontrado. Gabarito Comentado 3a Questão (Ref.: 201602596862) Fórum de Dúvidas (1 de 1) Saiba (1 de 1) Auxiliar = 100 Numero1 = 900 Numero2 = 20 Auxiliar = 111 Numero1 = 1000 Numero2 = 80 Auxiliar = 100 Numero1 = 1000 Numero2 = 20 Auxiliar = 100 Numero1 = 900 Numero2 = 80 Auxiliar = 101 Numero1 = 900 Numero2 = 20 Gabarito Comentado 4a Questão (Ref.: 201602594447) Fórum de Dúvidas (1) Saiba (1) Funções são instrumentos de modularização de programas, que tem como finalidade tornar o código mais legível, isto é mais fácil de entender, evita replicação de instruções e permite o reuso das funções em outros programas. Então considere o seguinte código: #include< iostream > using namespace std; int main( ) { float a=10.0; float b=4.0; cout < < media(a,b); return 0; } float media(float x, float y) { return (x+y)/2;} Marque a alternativa CORRETA: O código não compila, pois há necessidade de se declarar float media(float, float) como protótipo da função float media(float x, float y)antes da função principal. O código não compila, pois a função float media(float x, float y) retorna um valor que seria ser armazenado em uma variável do tipo float e só então poderia ser usado o comando cout para exibir o resultado. O código não compila, pois os parâmetros usados na chamada da função deveriam ser "x" e "y"; porém a chamada se deu com identificadores "a" e "b". O código compila normalmente, pois como a descrição da função float media(float x, float y)está posicionada após a função int main ( ), não há necessidade do uso de protótipos. O código compila normalmente e apresenta como resultado o valor 7.0 Gabarito Comentado 5a Questão (Ref.: 201602392217) Fórum de Dúvidas (1) Saiba (1) A declaração de variáveis na programação é o ato de reservar um espaço na memória para poder armazenar valores de um determinado tipo. Essas variáveis podem ser classificadas como variáveis locais e globais. Sendo assim, qual das situações abaixo representa melhor o conceito das variáveis globais. Em uma função "resul" tem-se uma variável ali declarada por 'T' que recebe o valor inteiro 5. Ao tentar chamar esta variável em outra função é mencionado um warning. Em duas funções diferentes temos duas variáveis também diferentes com o mesmo nome apresentando o mesmo valor. Se dentro de uma função "mostra" declararmos uma variável 'R' com um determinado valor poderemos imprimir esta variável em qualquer outra função do programa mostrando o valor atribuído na função "mostra". Ao modificar o valor da variável 'X' na função "modifica" seu valor modificado poderá ser apresentado em qualquer outra função do programa. Se modificarmos o valor da variável 'Y' na função "soma", e depois imprimirmos na tela esta variável em outra função, onde tambem está declarada a variável 'Y', será acusado um erro de compilação. Gabarito Comentado 6a Questão (Ref.: 201602392216) Fórum de Dúvidas (1 de 1) Saiba (1 de 1) Em programação podemos utilizar um recurso que modulariza o programa chamado função. As funções precisam ser ativadas para que possam ser executadas. Para isso, é necessário chamar a função pelo seu nome e enviar, quando necessário, os valores respectivos para os parâmetros de entrada. Ao enviar os valores para os parâmetros de entrada, o programa pode fazer uma cópia deste valor ou trabalhar em um endereço enviado. Quando se envia o endereço estamos ativando a função por meio de: Envio de valor. Ponteiros. Passagem por valor. Envio de inteiro. Registro. Gabarito Comentado 7a Questão (Ref.: 201602383732) Fórum de Dúvidas (1 de 1) Saiba (1 de 1) Assinale a alternativa que apresenta duas formas de passagem de parâmetros para uma rotina ou função: Por teste e por reforço. Por inferência e por valor. Por memória e por disco. Por reforço e por referência. Por valor e por referência Gabarito Comentado 8a Questão (Ref.: 201603005737) Fórum de Dúvidas (1) Saiba (1) Blocos únicos de códigos que realizam diversas tarefas distintas são de difícil manutenção. Portanto, utiliza-se a técnica da modularização de programas, a fim de facilitar a implementação e a manutenção dos programas. Esta técnica tem como principal elemento: Os Grafos As Estruturas de Dados As Filas As funções Os Vetores /////////////////////// Prova A3 /////////////////////////////////////////////////////// 1a Questão (Ref.: 201602596892) Fórum de Dúvidas (0) Saiba (0) Com relação à struct, é correto afirmar que : Não é possível criar um vetor de structs, pois o vetor trabalha apenas com dados do mesmo tipo. Cada elemento da struct é denominado membro ou campo, sendo que a struct pode armazenar elementos de tipos diferentes ou não. Cada elemento da struct é chamado componente. A struct é sempre definida dentro da main. Cada elemento da struct é chamado campo e cada campo deve ser, obrigatoriamente, de um tipo de dados distinto de outro campo. Gabarito Comentado 2a Questão (Ref.: 201603063781) Fórum de Dúvidas (0) Saiba (0) Marque a opção correta, considerando struct Livro { int codigo; float preco; } liv; Livro.codigo = 12345; liv.preco = 30.70; Livro->liv.codigo = 12345; liv->preco = 30.70; Livro.liv.codigo = 12345; 3a Questão (Ref.: 201602392184) Fórum de Dúvidas (0) Saiba (0) A armazenagem de dados pode ocorrer temporariamente em uma variável, um vetor ou em uma estrutura chamada Struct na linguagem C e C++. Como se procede a atribuição de valor a um determinado campo de uma estrutura do tipo Struct? Nome da estrutura seta tipo do campo Nome da estrutura ponto tipo do campo Nome da estrutura seta nome do campo Nome da estrutura ponto nome do campo Nome da estrutura vírgula tipo do campo Gabarito Comentado 4a Questão (Ref.: 201603005742) Fórum de Dúvidas (0) Saiba (0) Pode-se definir uma estrutura heterogênea como sendo um conjunto de elementos, geralmente, agrupados sob uma lógica e associados por um nome. Esses elementos podem ser variáveis simples, matrizes ou ainda outras estruturas. Seja a definição de uma estrutura como: struct aluno { string nome; float nota; }; Suponha ainda que exista um vetor desta estrutura, definido como: aluno vet [100]; Marque a alternativa em que é atribuída de forma correta a nota 5.7 para o décimo primeiro elemento deste vetor. vet[10]=aluno.5.7; aluno.vet[10]=5.7; vet[10].nota=5.7; vet[10].aluno.nota=5.7 ; aluno.vet[10].nota=5.7; 5a Questão (Ref.: 201602962053) Fórum de Dúvidas (0) Saiba (0) Pode-se definir uma estrutura heterogênea como sendo um conjunto de elementos, geralmente, agrupados sob uma lógica e associados por um nome. Esses elementos podem ser variáveis simples, matrizes ou ainda outras estruturas. Seja a definição de uma estrutura como: struct aluno { string nome; float media; }; Suponha ainda que exista um vetor desta estrutura, definido como: aluno vet [ 10]; Marque a alternativa em que é atribuída de forma correta a media 6.0 para o quarto elemento deste vetor. vet[3].media=6.0; aluno[10]=6.0; aluno[3].10=6.0; vet[3].aluno=6.0; aluno[3].media=6.0; 6a Questão (Ref.: 201602391677) Fórum de Dúvidas (0) Saiba (0) Qual das seguintes estruturas de dados é classificada como heterogênea? Registro Pilha Vetor Loop Fila Gabarito Comentado 7a Questão (Ref.: 201603031531) Fórum de Dúvidas (0) Saiba (0) Pode-se definir uma estrutura heterogênea como sendo um conjunto de elementos, geralmente, agrupados sob uma lógica e associados por um nome. Esses elementos podem ser variáveis simples, matrizes ou ainda outras estruturas. Seja a definição de uma estrutura como: struct aluno { string nome; float nota; }; Suponha ainda que exista um vetor desta estrutura, definido como: aluno vet [ 100]; Marque a alternativa em que é atribuída de forma correta a nota 5.7 para o décimo primeiro elemento deste vetor. aluno.vet[10]=5.7; aluno.vet[10].nota=5.7; vet[10].aluno.nota=5.7 ; vet[10].nota=5.7; vet[10]=aluno.5.7; /////////////////////// Prova A4 /////////////////////////////////////////////////////// 1a Questão (Ref.: 201602391856) Fórum de Dúvidas (1) Saiba (0) Marque a afirmativa correta para a "Busca ou pesquisa binária". Consiste em fazer uma busca em um vetor já ordenado, dividindo o espaço de busca ao meio e verificando se o dado está no meio ou, antes do meio ou depois do meio. É o processo pelo qual um conjunto de dados é colocado em uma ordem crescente ou decrescente. Consiste em adicionar um valor no vetor, alterando a ordem existente e ajustando o total de elementos. Consiste em fazer uma busca em um vetor desordenado, dividindo o espaço de busca ao meio e verificando se o dado está no meio ou, antes do meio ou depois do meio. Consiste em adicionar um valor no vetor, mantendo a ordem existente e ajustando o total de elementos. Gabarito Comentado 2a Questão (Ref.: 201603005744) Fórum de Dúvidas (1) Saiba (0) Entre os diversos algoritmos de pesquisa existentes, certamente os mais famosos são os da pesquisa sequencial e o da pesquisa binária. A busca ou pesquisa sequencial pode ser aplicada em vetores independente destes estarem ordenados, entretanto a busca binária só se aplica em vetores ordenados. Seja o vetor A= {10,35,41,55,69,70,98}, suponha que o número 70 foi pesquisado pelo algoritmo da busca sequencial e também pelo algoritmo da busca binária, ambos algoritmos realizam testes nos elementos do vetor até achar o que procuram ou definirem que o elemento não se encontra no vetor. Sendo assim marque a alternativa que expressa o número de testes realizados pela busca sequencial e o número de testes realizados pela busca binária, respectivamente, até encontrarem o 70. 6 e 2 5 e 5 6 e 1 6 e 4 7 e 1 3a Questão (Ref.: 201602977310) Fórum de Dúvidas (1 de 1) Saiba (0) Em relação à classificação do método de ordenação, assinale abaixo aquele que, durante o processo de ordenação, só usa a memória principal: Ordenação Interna Ordenação Simples Ordenação Simples Externa Ordenação Externa Ordenação Eficiente Gabarito Comentado Gabarito Comentado Gabarito Comentado 4a Questão (Ref.: 201602980484) Fórum de Dúvidas (1) Saiba (0) Analisando o trecho de código a seguir: inicio=0; fim= tamanho - 1; meio=(inicio+fim)/2; while(procura != nomeVetor[meio] && inicio != fim) { if(procura > nomeVetor[meio]) inicio=meio+1; else fim=meio; meio=(inicio+fim)/2; } if(nomeVetor[meio]==procura) cout<<"\n....: "< < outroVetor[meio]<<endl; else cout<<"\nDado nao encontrado\n";</endl; Pode-se afirmar que: trata-se da implementação do algortimo de busca sequencial trata-se da implementação do algortimo de busca binária. trata-se da implementação do algortimo de ordenação por inserção. trata-se da implementação do algortimo de ordenação por seleção. trata-se da implementação do algortimo de ordenação bolha. Gabarito Comentado 5a Questão (Ref.: 201602392189) Fórum de Dúvidas (1 de 1) Saiba (0) Os métodos de ordenação são muito utilizados para facilitar a recuperação posterior de itens ordenados. Existem vários métodos de ordenação, por esse motivo, assinale corretamente a alternativa que mostra o nome do método que utiliza a estratégia de ordenação por trocas de vizinhos e é considerado o método mais simples. Binária Hash Seleção Bolha Inserção Gabarito Comentado 6a Questão (Ref.: 201602392192) Fórum de Dúvidas (1 de 1) Saiba (0) O processo de rearranjar um conjunto de dados em uma ordem crescente ou decrescente é chamado de ordenação. Existem várias técnicas de ordenação, entretanto a técnica que procura o menor valor entre todos os elementos do vetor e troca-o pelo primeiro elemento; para os n - 1 elementos restantes, determinação do elemento de menor valor e troca pelo segundo elemento e assim sucessivamente, é chamado de: Seleção Binária Bolha Hash Inserção Gabarito Comentado 7a Questão (Ref.: 201602395249) Fórum de Dúvidas (1) Saiba (0) Existem vários algoritmos de busca em estruturas de dados, um destes realiza a busca em vetores, e requer acesso aleatório aos elementos desta estrutura e parte do pressuposto de que os dados do vetor estejam ordenados e utiliza a técnica de divisão e conquista comparando o elemento desejado com o elemento do meio do vetor. Esta técnica ainda verifica se o elemento do meio do vetor for o desejado, a busca termina. Caso contrário, se o elemento do meio vier antes do elemento buscado, então a busca continua na metade posterior do vetor. E se o elemento do meio vier depois da chave, a busca continua na metade anterior do vetor. O algoritmo que utiliza esta metodologia é: Bolha Inserção Pesquisa binária Seleção Pesquisa sequencial Gabarito Comentado 8a Questão (Ref.: 201602980481) Fórum de Dúvidas (1 de 1) Saiba (0) Sabendo-se que o método de ordenção bolha ou bubble sort realiza a troca de elementos adjacentes até que todos os elementos de um vetor esteja ordenado. Então, se submetermos a sequencia de inteiros armazenada em um vetor inicialmente na seguinte ordem : 4, 2, 5, 1. Pode-se dizer que quando o maior elemento do vetor alcançar sua posição final, a ordenação apresentada no vetor é: 1,2,4,5 1,4,2,5 4,1,2,5 2,4,1,5 2,1,4,5 /////////////////////// Prova A5 /////////////////////////////////////////////////////// 1a Questão (Ref.: 201602383750) Fórum de Dúvidas (0) Saiba (0) Um órgão público adotou dois sistemas de senhas para atender os cidadãos na ordem de chegada. O sistema I atende os não idosos. O sistema II atende os idosos. Nessa situação: tanto o sistema I, quanto o II, adotam o esquema FIFO de organização de dados. o sistema I, adota o esquema LIFO de organização de dados e o II, o esquema LIFO. tanto o sistema I, quanto o II, adotam o esquema vetor de organização de dados. o sistema I, adota o esquema LIFO de organização de dados e o II, o esquema FIFO. tanto o sistema I, quanto o II, adotam o esquema LIFO de organização de dados. Gabarito Comentado 2a Questão (Ref.: 201602392204) Fórum de Dúvidas (0) Saiba (0) Analisando o trecho do algoritmo abaixo, pode-se afirmar que se trata de uma operação de: Remoção de um elemento de uma estrutura LIFO Exibição de um elemento em uma estrutura LIFO Inserção de um elemento em uma estrutura LIFO Inserção de um elemento em uma estrutura FIFO Remoção de um elemento de uma estrutura FIFO Gabarito Comentado 3a Questão (Ref.: 201602392040) Fórum de Dúvidas (0) Saiba (0) Com relação as listas lineares sequenciais: I - Uma lista linear sequencial é um vetor em linguagens estruturadas, também chamado de array. II - Um elemento de uma lista linear sequencial pode ser acessado diretamente através de um índice. III - Uma lista linear sequencial pode ter elementos de um mesmo tipo, ou de tipos diferentes. Apenas as afirmações II e III estão corretas. Apenas a afirmação I está correta. Apenas as afirmações II está corretas. Apenas as afirmações I e III estão corretas. Apenas as afirmações I e II estão corretas. Gabarito Comentado 4a Questão (Ref.: 201603039726) Fórum de Dúvidas (0) Saiba (0) Considere uma lista com n livros, em que cada livro é modelado pela struct : struct Livro { string titulo, editora, autor; float preco; }; A função X abaixo void X (Livro v[ ], int &n, Livro L) { v[n] = L; n++; cout << "Operação realizada com sucesso."; } implementa a operação de : Ordenação por inserção Inserção Busca Inicialização Substituição Gabarito Comentado 5a Questão (Ref.: 201602594457) Fórum de Dúvidas (0) Saiba (0) As estruturas de dados são utilizadas para manter dados ou informações organizados na memória, o que possibilita a otimização do uso destes dados. Porém, as estruturas guardam características especiais na manipulação destes dados, assim deve-se escolher a estrutura certa ou mais adequada para uma determinada aplicação. Portanto marque a opção que representa a melhor estrutura, quando se tem como requisitos principais o acesso aleatório aos dados e alocação destes de forma contínua na memória. Pilha Sequencial Lista Sequencial Fila Sequencial Pilha Encadeada Lista Encadeada Gabarito Comentado 6a Questão (Ref.: 201602596941) Fórum de Dúvidas (0) Saiba (0) for (int i = 0; i < n; i++) cout << L.matricula << " " << L.nome << endl; for (int i = 0; i < n; i++) cout << L.matricula[i] << " " << L.nome[i] << endl; for (int i = 0; i < n; i++) cout << L[i].matricula << " " << L[i].nome << endl; for (int i = 0; i < n; i++) cout << L[i].matricula << " " << L[i].nome[30] << endl; for (int i = 0; i < n; i++) cout << L[i] << endl; Gabarito Comentado 7a Questão (Ref.: 201602955907) Fórum de Dúvidas (0) Saiba (0) __________________________ é uma lista linear em que a alocação de memória pode ser estática, e que a forma de armazenamento é contígua ou sequencial na memória. Usamos este tipo de lista quando se tem em mente um tamanho pré-definido, ou seja, quando se sabe até onde a lista pode crescer. Lista Linear Não Sequencial Lista Não Linear Lista Linear Não Alocada Lista Linear Sequencial Lista Linear de Alocação de Memória 8a Questão (Ref.: 201602391660) Fórum de Dúvidas (0) Saiba (0) O que acontece ao se inserir uma informação quando já usamos toda a área disponível do vetor (topo = fim)? overflow remoção ordenação inclusão underflow /////////////////////// Prova A6 /////////////////////////////////////////////////////// 1a Questão (Ref.: 201602596881) Fórum de Dúvidas (0) Saiba (0) Navegadores para internet armazenam os últimos endereços visitados em uma estrutura de dados. Cada vez que um novo site é visitado, o endereço do site é adicionado na estrutura de endereços. Quando se aciona o retorno ("back"), o navegador permite que o usuário retorne no último site visitado e retira o endereço do site da estrutura de dados. Assinale a estrutura de dados mais adequada para este problema. pilha fila grafo lista árvore Gabarito Comentado 2a Questão (Ref.: 201603005749) Fórum de Dúvidas (0) Saiba (0) Considere dados sendo manipulados em uma pilha sequencial em que as operações possíveis são: inserção - push(novo valor) ou remoção - pop(). Se realizarmos a seguinte sequencia de operações: push(A),push(B),push(C),pop(),pop(),push(D),pop(),pop(). Pode-se dizer que o interior da pilha apresenta-se: Com os dados A e D Vazio Com os dados A e B Apenas com o dado A Apenas com o dado D 3a Questão (Ref.: 201602383744) Fórum de Dúvidas (0) Saiba (0) No contexto de estrutura de dados, uma pilha é: uma lista do tipo FIFO. um tipo de lista linear em que as operações de inserção e remoção são realizadas na extremidade denominada topo. um tipo de lista linear em que as operações de inserção e remoção são realizadas aleatoriamente. uma lista do tipo LILO. um tipo de lista linear em que as operações de inserção são realizadas em uma extremidade e as operações de remoção são realizadas em outra extremidade. Gabarito Comentado 4a Questão (Ref.: 201602383733) Fórum de Dúvidas (0) Saiba (0) A técnica LIFO (last in first out), utilizada em programação estruturada, é fundamentada no conceito de: fila loop ponteiro pilha array Gabarito Comentado 5a Questão (Ref.: 201602375167) Fórum de Dúvidas (0) Saiba (0) Marque a opção que representa uma característica CORRETA a respeito da estrutura de dados pilha. Não é possível criar uma pilha utilizando vetores. O último item inserido é o primeiro item a ser retirado. Os acessos aos itens ocorrem de forma aleatória. O último item inserido é o último item a ser retirado. O primeiro item inserido é o primeiro a ser retirado. Gabarito Comentado 6a Questão (Ref.: 201603156685) Fórum de Dúvidas (0) Saiba (0) Assumindo que estamos com uma estrutura de dados do tipo LIFO, as operações abaixo vão resultar em que elementos na mesma: PUSH(2), PUSH(3), PUSH(4), POP(), POP(), PUSH(5), PUSH(7), POP() 2 4 7 2 5 2 3 4 5 7 3 4 5 Gabarito Comentado Gabarito Comentado Gabarito Comentado 7a Questão (Ref.: 201602459305) Fórum de Dúvidas (0) Saiba (0) A estrutura de dados do tipo pilha (stack) é um tipo abstrato de dado baseada no princípio: Last In First Out (LIFO). De dividir para conquistar. Da localidade de referência. Da indiferença. First In First Out (FIFO). Gabarito Comentado 8a Questão (Ref.: 201602459310) Fórum de Dúvidas (0) Saiba (0) Respeitando as ordens de inserção e de retirada dos dados, uma estrutura de: fila é também denominada FIFO ou LIFO. fila é também denominada FIFO ou FILO. pilha é também denominada FIFO ou FILO. pilha é também denominada LIFO ou FILO. fila é também denominada LIFO ou LILO. /////////////////////// Prova A7 /////////////////////////////////////////////////////// 1a Questão (Ref.: 201602391697) Fórum de Dúvidas (0) Saiba (0) Um banco adotou dois sistemas de senhas para atender os cidadãos na ordem de chegada. O sistema I atende todas pessoas que não possuem atendimento prioritário. O sistema II atende somente pessoas com atendimento prioritário. Nessa situação, Tanto o sistema I, quanto o II, adota o esquema FIFO de organização de dados. O sistema I adota o esquema FIFO de organização de dados e o II, o esquema LIFO. Tanto o sistema I, quanto o II, adota o esquema LIFO de organização de dados. O sistema I adota o esquema LIFO de organização de dados e o II o esquema FIFO. Tanto o sistema I, quanto o II, adota o esquema lista duplamente encadeada de organização de dados. 2a Questão (Ref.: 201602983184) Fórum de Dúvidas (0) Saiba (0) Considere uma fila simples F de inteiros, do tipo Fila definido abaixo. Tal fila deverá armazenar códigos de agentes de uma firma de espionagem, desde que haja espaço para um novo agente. Assinale a opção que corretamente desenfileira o código de um agente, sabendo que a fila F foi inicializada de acordo com o trecho de código abaixo. struct Fila { in t v[100], inicio, fim; } ; Fila F; F. inicio = 0; F.fim = -1; void desenfileirar(Fila &F) { if (F.inicio > F.fim) cout << "Não há agentes para retirar. " << endl; else { cout << "Removido o agente " << F.v[F.inicio]; F.inicio++; } } void desenfileirar(Fila F) { cout << "Removido o agente " << F.v[F.inicio]; F.inicio--; } void desenfileirar(Fila &F) { if (F.fim == -1 && F.inicio == 0) cout << "Não há agentes para retirar. " << endl; else { cout << "Removido o agente " << F.v[F.inicio]; F.inicio++; } } void desenfileirar(Fila &F) { if (F.inicio > F.fim) cout << "Não há agentes para retirar. " << endl; else { cout << "Removido o agente " << F.v[F.inicio]; } } void desenfileirar(Fila F) { if (F.inicio > F.fim) cout << "Não há agentes para retirar. " << endl; else { cout << "Removido o agente " << F.v[F.inicio]; F.inicio++; } } Gabarito Comentado 3a Questão (Ref.: 201602980487) Fórum de Dúvidas (0) Saiba (0) Usa-se um vetor para se implementar uma fila sequencial, entretanto se nesta estrutura ocorrer diversas operações de remoção e inserção podemos afirmar que: Um vetor é uma estrutura base correta para esta implementação, já que está imune a fenômenos como esgotamento de memória. Um vetor não pode ser usado na implementação de uma fila sequencial apenas em pilhas sequenciais. A estrutra sofrerá do fenômeno esgotamento de memória, mas se os dados estiverem ordenados isto não afetará a estrutura. A estrutura fila não sofre esgotamento de memória, isto ocorre com as pilhas já que implementam o algoritmo LIFO. A estrutra sofrerá do fenômeno chamado esgotamento de memória e logo não poderá mais ser utilizada. A solução é o uso da fila circular. Gabarito Comentado 4a Questão (Ref.: 201602983146) Fórum de Dúvidas (0) Saiba (0) Considere uma fila simples F de inteiros, do tipo Fila definido abaixo. Tal fila deverá armazenar códigos de agentes de uma firma de espionagem, desde que haja espaço para um novo agente. Assinale a opção que corretamente enfileira o código de um agente, sabendo que a fila F foi inicializada de acordo com o trecho de código abaixo. struct Fila { in t v[100], inicio, fim; } ; Fila F; F. inicio = 0; F.fim = -1; void enfileirar(Fila &F, int codigo) { if (F.fim == 99) cout << "Não há espaço na firma para mais agentes. " << endl; else F.fim++; F.v[F.fim] = codigo; } void enfileirar(Fila F, int codigo) { F.fim++; F.v[F.fim] = codigo; } void enfileirar(Fila &F, int codigo) { F.v[F.fim] = codigo; F.fim++; } void enfileirar(Fila F, int codigo) { if (F.fim == 100) cout << "Não há espaço na firma para mais agentes. " << endl; else { F.fim++; F.v[F.fim] = codigo; } } void enfileirar(Fila &F, int codigo) { if (F.fim == 99) cout << "Não há espaço na firma para mais agentes. " << endl; else { F.fim++; F.v[F.fim] = codigo; } } Gabarito Comentado 5a Questão (Ref.: 201602977312) Fórum de Dúvidas (0) Saiba (0) O que acontece quando se deseja inserir um elemento em uma FILA que já está cheia? Overflow. Dequeue. A inserção é feita sem problema. Underflow. Enqueue. Gabarito Comentado 6a Questão (Ref.: 201603005751) Fórum de Dúvidas (0) Saiba (0) Usa-se um vetor para se implementar uma fila sequencial, entretanto se nesta estrutura ocorrer diversas operações de remoção e inserção podemos afirmar que: Um vetor é uma estrutura base correta para esta implementação, já que está imune a fenômenos como esgotamento de memória. A estrutra sofrerá do fenômeno esgotamento de memória, mas se os dados estiverem ordenados isto não afetará a estrutura. A estrutura fila não sofre esgotamento de memória, isto ocorre com as pilhas já que implementam o algoritmo LIFO. A estrutra sofrerá do fenômeno chamado esgotamento de memória e logo não poderá mais ser utilizada. A solução é o uso da fila circular. Um vetor não pode ser usado na implementação de uma fila sequencial apenas em pilhas sequenciais. 7a Questão (Ref.: 201602980485) Fórum de Dúvidas (0) Saiba (0) Ao inserirmos em uma estrutura de dados do tipo fila sequencial os seguintes elementos: A, B, C, D, exatamente nesta ordem. E em seguida realizarmos duas operações consecutivas de remoção na fila e imediatamente inserirmos dois novos elementos o X e o W. Podedmos afirmar que se realizarmos uma nova operação de remoção, o elemento que será removido desta fila sera o: X C W A D Gabarito Comentado Gabarito Comentado Gabarito Comentado 8a Questão (Ref.: 201602392158) Fórum de Dúvidas (0) Saiba (0) Qual das alternativas a seguir pode definir uma estrutura de fila? Entrada e saída de dados em qualquer local. Entrada e saída de dados pelo final. Entrada e saída de dados pelo início. Entrada de dados pelo início e saída pelo final. Entrada de dados pelo final e saída pelo início. /////////////////////// Prova A8 /////////////////////////////////////////////////////// 1a Questão (Ref.: 201603055176) Fórum de Dúvidas (0) Saiba (0) As funções abaixo tem objetivos de: A primeira faz uma busca retornando o valor do nó ou NULL quando não encontrado, já a segunda insere um novo nó no final da LSE; A primeira faz uma busca retornando o endereço do nó ou NULL quando não encontrado, já a segunda insere um novo nó no final da LSE; A primeira faz uma busca retornando a posição do nó ou NULL quando não encontrado, já a segunda insere um novo nó no inicio da LSE; A primeira faz uma busca retornando o valor do nó ou NULL quando não encontrado, já a segunda insere um novo nó no inicio da LSE; A primeira faz uma busca retornando o endereço do nó ou NULL quando não encontrado, já a segunda insere um novo nó no inicio da LSE; 2a Questão (Ref.: 201602968618) Fórum de Dúvidas (0) Saiba (0) Assinale a alternativa correta sobre alocação de memória. Uma das vantagens da alocação dinâmica sobre a alocação estática é que não é necessário fazer a liberação da memória utilizada. É correto afirmar que a alocação dinâmica de memória sempre leva a programas mais rápidos. A declaração de um vetor é um exemplo clássico de alocação dinâmica de memória. Alocação estática de memória refere-se ao processo de alocar memória com o uso de ponteiros. Na alocação dinâmica de memória, a memória é alocada sob demanda, apenas quando necessário. 3a Questão (Ref.: 201602392208) Fórum de Dúvidas (0) Saiba (0) Na área de estrutura de dados, em determinados casos, é necessário utilizar um tipo de dado onde seu valor serve como referência direta a outro valor alocado em outro espaço de memória. Este tipo de dado se chama: Vetor Ponteiro Endereço Matriz Variável Gabarito Comentado 4a Questão (Ref.: 201602983201) Fórum de Dúvidas (0) Saiba (0) Considere uma lista simplesmente encadeada com placas de carros. Assinale a opção que, corretamente, imprime todas as placas da lista. Considere : struct no { string placa; struct no *link; }; no *p; //p aponta para o início da lista void imprimir(no *p) { while (p != NULL) { cout << pplaca; p = plink; } } void imprimir(no *p) { if (p != NULL) { cout << pplaca; p = plink; } } void imprimir(no p) { while (p != NULL) { cout << pno; p = plink; } } void imprimir(no *p) { while (p != NULL) { cout << p.placa; p = p.link; } } void imprimir(no *p) { while (p != NULL) { cout << pplaca; } } Gabarito Comentado 5a Questão (Ref.: 201602391688) Fórum de Dúvidas (0) Saiba (0) Em relação as estruturas de dados, aquela que corresponde ao armazenamento em uma lista linear com a posição relativa (não contígua) na memória de dois nós consecutivos da lista é conhecida por alocação: Binária. Combinada. Seqüencial. Encadeada. Estática. Gabarito Comentado 6a Questão (Ref.: 201603005757) Fórum de Dúvidas (0) Saiba (0) As structs (estruturas) são utilizadas para modelar os nodos de estruturas dinâmicas como, por exemplo, as listas encadeadas, seja o seguinte exemplo de nodo de uma lista de produtos: struct nodo{ float valor; string produto; nodo * proximo; }; Suponha que um determinado ponteiro pt esteja apontando para um nodo desta lista, e que se queira alterar o conteúdo do campo valor deste nodo, que está sendo apontado por pt, para 5.60. Marque a alternativa que corretamente possibilita esta operação: pt->5.60; pt->valor=5.60; pt->próximo.valor=5.60; pt->próximo->valor=5.60; pt.valor->5.60; Gabarito Comentado 7a Questão (Ref.: 201602962045) Fórum de Dúvidas (0) Saiba (0) A linguagem C++ oferece quatro meios de criação de tipos de dados: matrizes, estruturas ou structs, uniões e classes. As estruturas, que passaremos a chamar simplesmente de structs, são tipos de variáveis que agrupam dados geralmente desiguais, enquanto matrizes são variáveis que agrupam dados similares. Devido a esta característica as structs são utilizadas para modelar nodos (nós) de estruturas dinâmicas. Portanto podemos afirmar que: As estruturas dinâmicas são assim chamadas, pois podem fazer alocação de memória em tempo de execução e terem seus tamanhos alterados de acordo com a demanda. As estruturas dinâmicas são assim chamadas, pois podem fazer alocação de memória em tanto em tempo de execução quanto em tempo de compilação, mas não podem ter seus tamanhos alterados de acordo com a demanda. As estruturas dinâmicas são assim chamadas, pois não podem fazer alocação de memória em tempo de execução, mas mesmo assim conseguem ter seus tamanhos alterados de acordo com a demanda. As estruturas dinâmicas são assim chamadas, pois podem fazer alocação de memória em tempo de compilação e terem seus tamanhos alterados de acordo com a demanda. As estruturas dinâmicas são assim chamadas, pois podem fazer alocação de memória em tempo de compilação e entretanto seus tamanhos só são alterados na codificação de acordo com a demanda. 8a Questão (Ref.: 201602930744) Fórum de Dúvidas (0) Saiba (0) O conceito de ponteiros foi estudado em uma de nossas aulas. Sendo assim, leia atentamente as afirmativas abaixo e assinale a opção correta. I A variável ponteiro não precisa ser declarada. II A variável ponteiro armazena endereço. III Quanto se usa &nomeDaVariávelPonteiro com o comando cout, é exibido o endereço da variável apontada pela variável ponteiro. IV Quando se usa nomeDaVariávelPonteiro com o comando cout, é exibido o endereço da variável ponteiro. V Quando se usa *nomeDaVariávelPonteiro com o comando cout, é exibido o conteúdo da variável apontada pela variável ponteiro. I, II e IV estão corretas II e V estão corretas I IV e V estão corretas Somente a II está correta IV e V estão corretas /////////////////////// Prova A9 /////////////////////////////////////////////////////// 1a Questão (Ref.: 201603097979) Fórum de Dúvidas (0) Saiba (0) Estava um aluno estudando Lista Simplesmente Encadeada quando encontrou em um site a definição da struct nodo e de uma função cujo nome você deverá escolher para substituir XXX nas opções abaixo depois que analisar a função, assumindo que teste foi realizado, permitindo que a operação fosse realizada. struct nodo { int info; struct nodo *prox; }; nodo* XXX(nodo *ptr, int valor) { nodo *temp = new nodo; ... temp->info = valor; temp->prox = ptr; return temp; } InsereNoFim RemoveNo ListaNo InsereNoFrente BuscaNaLista Gabarito Comentado 2a Questão (Ref.: 201602597134) Fórum de Dúvidas (0) Saiba (0) Assinale a opção correta. Sobre pilha dinâmica podemos afirmar que : é recomendada para qualquer tipo de aplicação em que insere-se no final e retira-se do início. só pode ter seus dados impressos no sentido do último nó para o primeiro nó. insere-se em qualquer posição, antes ou após qualquer nó, visto que é dinâmica. usa o critério FIFO, visto que é dinâmica. usa o critério LIFO e é implementada usando-se listas encadeadas. Gabarito Comentado 3a Questão (Ref.: 201602969790) Fórum de Dúvidas (0) Saiba (0) Assinale a característica que NÃO está relacionada às estruturas de dados encadeadas: Em geral, marca-se o último elemento com um ponteiro de valor NULL. A memória ocupada por seus elementos é, em geral, liberada com o uso de delete. A memória para armazenar seus elementos é, em geral, alocada com o uso de new. Consomem memória de maneira permanente, só sendo liberadas ao fim do programa. Cada elemento guarda pelo menos um ponteiro para outro elemento da estrutura. 4a Questão (Ref.: 201602935302) Fórum de Dúvidas (0) Saiba (0) Tínhamos declarado um ponteiro de nome ptr e precisávamos construir uma estrutura de repetição que pudesse repetir enquanto o ponteiro não fosse nulo. Observe os trechos abaixo e assinale qual a afirmativa correta. I if (ptr !=NULL) II if( !ptr ) III if(ptr) IV while (ptr !=NULL) V while (ptr) I e II estão corretas. III e V estão corretas III está correta IV e V estão corretas. I e IV estão corretas Gabarito Comentado 5a Questão (Ref.: 201603063788) Fórum de Dúvidas (0) Saiba (0) Para converter de decimal para binário usamos a estrutura de dados pilha. Assinale a opção que, corretamente, indica as ações corretas para empilhar o resto da divisão gerado no processo de conversão, considerando uma lista simplesmente encadeada. Considere o tipo definido abaixo : struct no { int dado; struct no *link; }; Basta alocar memória com new e armazenar o resto da divisão do número por 2 no campo dado do novo nó . Não é necessário alocar memória com new. Basta criar uma struct do tipo no, armazenar o resto da divisão número por 2 no campo dado e aterrar o campo link. É preciso armazenar o resto da divisão do número por 2 no campo dado do primeiro nó da lista e retornar o ponteiro para este nó. É preciso alocar memória com new, armazenar o resto da divisão do número por 2 no campo dado do novo nó, apontar o link do novo nó para o início da lista e enfim, retornar o ponteiro para o novo nó. Basta alocar memória com new, armazenar o resto da divisão do número por 2 no campo dado do novo nó e aterrar o link do novo nó. Gabarito Comentado 6a Questão (Ref.: 201603063666) Fórum de Dúvidas (0) Saiba (0) Sabendo que uma fila encadeada possui seus nós definidos pela : struct no { int x; no *prox; }; Marque a alternativa que representa corretamente a criação ou alocação do nó na sintaxe do C++ para utilização na fila. no *p -> new no; p *no -> new no; no p -> new no; no *p=new no; p *no=new no; Gabarito Comentado 7a Questão (Ref.: 201603014577) Fórum de Dúvidas (0) Saiba (0) Sobre uma estrutura de dados do tipo LIFO, observe as seguintes afirmações: (1) É uma pilha. (2) Pode ser uma fila com prioridades (3) É uma estrutura onde o primeiro elemento a entrar é o último a sair. Sobre estas afirmações marque a opção correta: Apenas a afirmação (3) é verdadeira Apenas a afirmação (1) é verdadeira Todas as afirmações são falsas Todas as afirmações são verdadeiras Apenas as afirmações (1) e (3) são verdadeiras /////////////////////// Prova A10 /////////////////////////////////////////////////////// 1a Questão (Ref.: 201603056133) Fórum de Dúvidas (0) Saiba (0) Os registros também conhecidos como estruturas, são estruturas de dados do tipo heterogêneo, ou seja, permitem que valores de tipos diferentes possam ser armazenados em uma mesma estrutura. Analisando a estrutura abaixo, a mesma pode ser utilizada para qual tipo de estrutura de dados, marque a alternativa correta. struct nomeRegistro{ int info; struct nomeRegistro* ant; struct nomeRegistro* prox; }; typedef struct nomeRegistro NOMEREGISTRO; Lista encadeada Matriz Lista duplamente encadeada Pilha Fila 2a Questão (Ref.: 201603039722) Fórum de Dúvidas (0) Saiba (0) Considere uma lista duplamente encadeada não circular em que struct nodupla { int dado; struct nodupla *dlink; // aponta p/ o nó à direita struct nodupla *elink; // aponta p/ o nó à esquerda }; sendo nodupla *p; //ponteiro para o início da lista A opção que corretamente mostra as instruções para inserir um valor no início da lista apontada por p é : nodupla *novo; novo = new nodupla; novo.dado = valor; novo.dlink = p; novo.elink = NULL; if (p != NULL) p.elink = novo; p = novo; nodupla *novo; novo = new nodupla; novo->dado = valor; novo->dlink = p; novo->elink = NULL; p->elink = novo; p = novo; n nodupla *novo; novo = new nodupla; novo->dado = valor; novo->elink = NULL; if (p != NULL) p->elink = novo; p = novo; n nodupla *novo; novo = new nodupla; novo->dado = valor; novo->dlink = p; if (p != NULL) p->elink = novo; p = novo; nodupla *novo; novo = new nodupla; novo->dado = valor; novo->dlink = p; novo->elink = NULL; if (p != NULL) p->elink = novo; p = novo; Gabarito Comentado 3a Questão (Ref.: 201602604738) Fórum de Dúvidas (0) Saiba (0) Observe a struct, definida globalmente, e um trecho de uma função que manipula uma Lista Duplamente Encadeada. struct listaDE { int info; struct listaDE* ant; struct listaDE* prox; }; ... listaDE* novo = new listaDE; novo->info = valor; novo->prox = LISTA; novo->ant = NULL; Assinale a alternativa que apresenta o protótipo dessa função listaDE *remove(listaDE *LISTA, int valor); listaDE *busca (listaDE *LISTA, int valor); void exibeIpF(listaDE *LISTA); listaDE *insereInicio(listaDE *LISTA, int valor); listaDE *insereFim(listaDE *LISTA, int valor); Gabarito Comentado 4a Questão (Ref.: 201602392076) Fórum de Dúvidas (0) Saiba (0) Uma estrutura de dados em lista duplamente encadeada permite na cadeia movimentos para frente, apenas. trás, apenas. cima e para baixo ou para frente e para trás. frente e para trás, apenas. cima e para baixo, apenas. Gabarito Comentado 5a Questão (Ref.: 201603005760) Fórum de Dúvidas (0) Saiba (0) Em uma lista duplamente encadeada, seus nodos são compostos por campos cujos tipos podem ser de diferentes naturezas, entretanto dois de seus campos devem ser ponteiros para o mesmo tipo do nodo, são estes os ponteiros ant e prox, que apontam, respectivamente, para o nodo anterior e para o próximo nodo. Esta característica permite que a estrutura seja percorrida em ambos os sentidos. Assim analisando as operações a seguir: p->ant->prox=p->prox; p->prox->ant=p->ant; Sendo p um ponteiro que aponta para um dos nodos da lista, pode-se afirmar que: As operações possibilitam o percurso do ponteiro p da esquerda para direita. As operações inserem novo nodo, após o nodo apontado pelo ponteiro p. As operações possibilitam o percurso do ponteiro p da direita para esquerda. As operações removem o nodo apontado pelo ponteiro p. As operações possibilitam a busca de um nodo apontado pelo ponteiro p. Gabarito Comentado 6a Questão (Ref.: 201602597156) Fórum de Dúvidas (0) Saiba (0) Com relação à lista duplamente encadeada, é correto afirmar que : Não pode haver remoções no meio da lista. A lista pode ser percorrida com igual facilidade para a direita ou para a esquerda, pois existem dois ponteiros. Não pode ser vazia. A lista precisa ter sempre um ponteiro apontando para o 1º. nó Consome menos memória do que uma lista simplesmente encadeada, se tivermos uma mesma aplicação. Gabarito Comentado 7a Questão (Ref.: 201602594478) Fórum de Dúvidas (0) Saiba (0) Em uma lista duplamente encadeada, seus nodos são compostos por campos cujos tipos podem ser de diferentes naturezas, entretanto dois de seus campos devem ser ponteiros para o mesmo tipo do nodo, são estes os ponteiros ant e prox, que apontam respectivamente para o nodo anterior e para o próximo nodo. Esta característica permite que a estrutura seja percorrida em ambos os sentidos. Assim analisando as operações a seguir: p->ant->prox=p->prox; p->prox->ant=p->ant; Sendo p um ponteiro que aponta para um dos nodos da lista, pode-se afirmar que: As operações removem o nodo apontado pelo ponteiro p. As operações inserem novo nodo, após o nodo apontado pelo ponteiro p. As operações possibilitam o percurso do ponteiro p da esquerda para direita. As operações possibilitam o percurso do ponteiro p da direita para esquerda. As operações possibilitam a busca de um nodo apontado pelo ponteiro p. 8a Questão (Ref.: 201602391860) Fórum de Dúvidas (0) Saiba (0) Em uma lista linear duplamente encadeada. Cada nó possui um só ponteiro que referencia o próximo nó da lista. O ponteiro do "último" nó não é NULL, mas sim aponta de volta para o "primeiro" nó da lista. O ponteiro do "primeiro" nó não é NULL, mas sim aponta de volta para o "primeiro" nó da lista, formando um ciclo. Além do campo relativo ao dado, cada nó possui dois ponteiros. Cada ponteiro possui um só endereço que referencia o primeiro nó da lista. /////////////////////// Prova A1 /////////////////////////////////////////////////////// Document Cloud/Desenvolvimento_de_software_Exerccios.pdf Exercício: CCT0248_EX_A1_201510492054_V1 Matrícula: 201510492054 Aluno(a): ALLISON LEONE FRANCELINO RAMOS DA SILVA Data: 18/02/2017 12:58:31 (Finalizada) 1a Questão (Ref.: 201510680938) Fórum de Dúvidas (1) Saiba (0) Uma empresa deseja adquirir uma edição do Visual Studio 2010 que permita a sua equipe de desenvolvimento trabalhar com um conjunto de ferramentas de gerenciamento de ciclo de vida da aplicação, incluindo a elaboração de diagramas UML e o gerenciamento de projetos com metodologias iterativas e ágeis. Qual a edição do Visual Studio 2010 mais indicada? Visual Studio 2010 Ultimate Visual Studio 2010 Express Visual Studio 2010 Professional Visual Studio 2010 Test Professional 2010 Visual Studio 2010 Premium Gabarito Comentado Gabarito Comentado 2a Questão (Ref.: 201510781872) Fórum de Dúvidas (1) Saiba (0) Ao compilarmos códigos que usem a biblioteca .NET, não criamos imediatamente um código nativo do sistema operacional. Ao invés disso, compilamos o nosso código para: JVM - Microsoft Virtual JQuery MSIL - Microsoft Intermediate Language MSTL - Microsoft Temporary Language MSVL - Microsoft Virtual Language MSAL - Microsoft Assembly Language Gabarito Comentado 3a Questão (Ref.: 201510718304) Fórum de Dúvidas (1 de 1) Saiba (0) O .NET Framework é uma camada de software que fica entre: o Sistema Operacional e as Aplicações. o Hardware e os Utilitários. o Sistema Operacional e os Utilitários. o Hardware e o Sistema Operacional. o Hardware e as Aplicações. Gabarito Comentado Gabarito Comentado 4a Questão (Ref.: 201511167959) Fórum de Dúvidas (1) Saiba (0) (FCC/2012/TRE-SP - Programador) O Microsoft Visual Studio é um conjunto completo de ferramentas para construir aplicativos, incluindo aplicações para Web. Nesta ferramenta várias linguagens compartilham o mesmo ambiente de desenvolvimento integrado (IDE). Este ambiente possui um analisador de código que pode oferecer, enquanto o código é digitado, sugestões ao programador, como por exemplo tipos de dados e membros de classes e estruturas. Esse analisador é chamado: TextMate Active Directory IntelliSense Lexical Analyzer ActiveSync Gabarito Comentado 5a Questão (Ref.: 201511108020) Fórum de Dúvidas (1 de 1) Saiba (0) A plataforma .NET Framework 4.0 (.NET 4.0) é uma plataforma de softwares que fornece integração com um conjunto variado de linguagens de programação. Também definido como tecnologia porque é composto de: bibliotecas e ferramentas executáveis. compilador e ferramentas de depuração. ferramentas desktop e mobile. J2SE e J2EE. COBIT, ITIL e Análise de impacto. Gabarito Comentado Gabarito Comentado Gabarito Comentado 6a Questão (Ref.: 201510718303) Fórum de Dúvidas (1 de 1) Saiba (0) O .NET Framework é uma iniciativa da empresa Microsoft, que visa uma plataforma única para desenvolvimento e execução de sistemas e aplicações, assim Todo e qualquer código gerado para .NET, pode ser executado em qualquer dispositivo que possua a mesma versão Windows da máquina onde foi desenvolvido. pode ser executado em qualquer dispositivo. pode ser executado em qualquer dispositivo que possua uma versão do Windows. pode ser executado em qualquer dispositivo que possua qualquer versão de framework de qualquer plataforma. pode ser executado em qualquer dispositivo que possua um framework de tal plataforma. Gabarito Comentado 7a Questão (Ref.: 201511161455) Fórum de Dúvidas (1 de 1) Saiba (0) A arquitetura fundamental do .NET 4.0 é dividida em 4 partes, dentre elas o Base Class Library (BCL) que fornece milhares de tipos, interfaces e classes para serem utilizados nas aplicações. Em relação ao BCL é apresentado o MSIL. Das opções, marque a que apresenta corretamente o conceito de MSIL. É uma linguagem assembley de alto nível, orientada a objetos, com um conjunto de instruções independentes de CPU. É uma linguagem de baixo nível, orientada a objetos, com um conjunto de instruções dependentes de CPU. É conjunto de linguagens estruturadas, com um conjunto de instruções dependentes de CPU. É uma linguagem assembley de baixo nível, estruturada, com um conjunto de instruções independentes de CPU. É conjunto de linguagens orientada a objetos, com um conjunto de instruções independentes de CPU. Gabarito Comentado Gabarito Comentado Gabarito Comentado 8a Questão (Ref.: 201511167964) Fórum de Dúvidas (1) Saiba (0) (UFPR/2010 - Analista de TI) Sobre Plataforma .NET, considere as afirmativas abaixo: I. O código gerenciado gerado é interpretado para executar na linguagem nativa da máquina do sistema. II. A compilação just-in-time (JIT) compila os códigos não gerenciados. III. É executada sobre uma Common Language Runtime (CLR). IV. O CTS (Common Type System) assegura que todo código gerenciado é autodescritivo. Assinale a alternativa correta. Somente a afirmativa I é verdadeira. Todas as afirmativas são verdadeiras. Somente as afirmativas II e III são verdadeiras. Somente as afirmativas III e IV são verdadeiras. Somente as afirmativas I, II e III são verdadeiras. Exercício: CCT0248_EX_A2_201510492054_V1 Matrícula: 201510492054 Aluno(a): ALLISON LEONE FRANCELINO RAMOS DA SILVA Data: 27/02/2017 17:36:25 (Finalizada) 1a Questão (Ref.: 201511167979) Fórum de Dúvidas (0) Saiba (0) Para escolher um tipo de dado, o programador deve escolher um, que ocupe a menor quantidade de memória em bytes e seja capaz de armazenar a faixa de valores possíveis de um determinado dado a ser armazenado em uma variável ou constante. Ao definir o uso do tipo numérico Integer, a capacidade de armazenamento será de: 8 bytes 1 byte 2 bytes 4 bytes 10 bytes Gabarito Comentado 2a Questão (Ref.: 201511183014) Fórum de Dúvidas (0) Saiba (0) Variáveis são utilizadas no Visual Basic .NET para armazenar informação necessária para a lógica de processamento de sua aplicação. Dentro de uma função ou sub-rotina, indique a opção incorreta na declaração e inicialização de variáveis: Dim a , b as Long a = 345 b = 888 Dim N as Integer N = 887 Dim d As Integer d = "escola" Dim x as Int16 = 7 Dim a , b a = " Copa " b = 100 3a Questão (Ref.: 201511249035) Fórum de Dúvidas (0) Saiba (0) 2) Analise cada uma das linhas de código, desenvolvidas no VB.Net, apresentadas na questão. Module Module1 Sub Main() Dim x As String = "1" Dim y As String = "2" Dim resp As String x &= y resp = x + y Console.WriteLine(resp) End Sub End Module Após a execução do código apresentado na questão, será exibido na tela: 123 112 5 125 122 Gabarito Comentado Gabarito Comentado Gabarito Comentado 4a Questão (Ref.: 201511249030) Fórum de Dúvidas (0) Saiba (0) Na linguagem VB.Net a conhecer e saber utilizar corretamente os operadores está dentre as rotinas iniciais e de muita importância. Analise o código apresentado na questão: Module Module1 Sub Main() Dim resp As String Dim x, y, z As Integer x = 1 y = 2 z = 2 resp = "sistema" If Not (y = 3 AndAlso z = 2) Then Console.Write("AndAlso") End If If (resp Like "??st*") Then Console.Write("Like") End If End Sub End Module Qual das respostas apresenta o resultado exibido da mesma forma que na tela pelo programa. AndAlso AndAlsoLike Like Não será exibido nada. AndAlso Like Gabarito Comentado Gabarito Comentado Gabarito Comentado 5a Questão (Ref.: 201510782650) Fórum de Dúvidas (0) Saiba (0) Como em todas as linguagens, precisamos conhecer os tipos de variáveis, como atribuir valores, bem como saber as várias formas de declará-las. Das opções apresentadas, marque a que não corresponde a uma maneira correta de declarar uma variável na linguagem VB.NET. Dim idade As byte = 10 Dim Salario As float Dim dia, mes As Integer Dim numero As UShort, complemento As String Dim idade As byte Gabarito Comentado Gabarito Comentado 6a Questão (Ref.: 201511167977) Fórum de Dúvidas (0) Saiba (0) Nas linguagens de programação .NET, um tipo define os valores a serem armazenados na memória, o espaço a ser alocado na memória para armazenar valores deste tipo e a faixa de valores. São tipos suportados pelo .NET, EXCETO: Function Boolean Date Char Structure Gabarito Comentado Gabarito Comentado Gabarito Comentado 7a Questão (Ref.: 201510718310) Fórum de Dúvidas (0) Saiba (0) Um desenvolvedor precisa identificar se o valor inteiro armazenado em uma variável (var) é par, para isso ele deverá usar: var & 2 = 0 var \ 2 = 0 var ^ 2 = 0 var / 2 = 0 var mod 2 = 0 Gabarito Comentado Gabarito Comentado 8a Questão (Ref.: 201511161486) Fórum de Dúvidas (0) Saiba (0) Conhecer e saber manipular os operadores em uma linguagem de programação é uma tarefa inicial e muito importante para quem está começando a programar. Em relação ao que foi apresentado nas aulas a respeito dos operadores, podemos afirmar que: Não existe um operador aritmético para cálculo da potência, devemos utilizar uma função interna do VB. Na linguagem VB não podemos usar a forma x *= y devemos obrigatoriamente utilizar x = x * y. Like é um operador que trabalha com o tipo string e numérico, Retornando True caso um padrão seja encontrado. Se a primeira expressão em um AndAlso é avaliada como False, em seguida, a segunda expressão não será avaliada porque não é possível alterar o resultado final, e AndAlso Retorna False. Não existe diferença entre os tipos short e ushort para um desenvolvedor, já que ambos possuem o mesmo tamanho de memória. Aluno: ALLISON LEONE FRANCELINO RAMOS DA SILVA Matrícula: 201510492054 Disciplina: CCT0248 - DESEN.DE SOFT Período Acad.: 2017.1 EAD (GT) / EX Prezado (a) Aluno(a), Você fará agora seu EXERCÍCIO DE FIXAÇÃO! 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 (3). Após a finalização do exercício, você terá acesso ao gabarito. Aproveite para se familiarizar com este modelo de questões que será usado na sua AV e AVS. 1. O Visual Basic fornece vários módulos que permitem simplificar tarefas comuns no seu código. O módulo que contém os membros que retornam resultados dos testes de verificação de tipo ou retornam as informações sobre erros em tempo de execução, o nome do tipo, o valor da cor em RGB é chamado de: ErrObject Information DateAndTime ControlChars Strings Gabarito Comentado Gabarito Comentado 2. Qual é a função interna da linguagem VB .NET que retorna o número de caracteres em uma string ou a quantidade de bytes necessários para armazenar uma expressão de um tipo? Left Len LTrim LCase LSet Gabarito Comentado Gabarito Comentado 3. Qual será o valor da variável Resultado após a execução da linha de código em linguagem VB 2010? Dim Resultado As String = Mid("ABCDEF", 2, 3) "BCD" "ABC" "BC" "CD" "AB" Gabarito Comentado Gabarito Comentado 4. A modularização diz respeito direto a criação adequada dos métodos, que evitam redundância, facilitam o reaproveitamento de código dentre outras vantagens. Marque a resposta que defina corretamente o que pode ser um método no VB.NET. Module, Form ou Sub. Sub ou Function. Module ou Form. Module, Function ou Sub. Form ou Sub. Gabarito Comentado 5. Um desenvolvedor precisa de um código que receba o valor do lado de um quadrado, calcule e retorne a área deste quadrado, ele deverá usar qual das opções de código a seguir? Sub AreaQuad (ByVal n As Integer) Dim S As Integer S = n * n Console.WriteLine("Area: " & S) End Sub Function AreaQuad (ByVal n As Integer) Dim S As Integer S = n * n Console.WriteLine("Area: " & S) End Function Module AreaQuad (ByVal n As Integer) Dim S As Integer S = n * n Console.WriteLine("Area: " & S) End Module Function AreaQuad (ByVal n As Integer) Dim S As Integer S = n * n Return S End Function Sub AreaQuad (ByVal n As Integer) Dim S As Integer S = n * n Return S End Sub Gabarito Comentado 6. Um desenvolvedor precisa de um código que receba o valor do lado de um quadrado, calcule e exiba a área deste quadrado, ele deverá usar qual das opções de código a seguir? Sub AreaQuad (ByVal n As Integer) Dim S As Integer S = n * n Return S End Sub Sub AreaQuad (ByVal n As Integer) Dim S As Integer S = n * n Console.WriteLine("Area: " & S) End Sub Module AreaQuad (ByVal n As Integer) Dim S As Integer S = n * n Console.WriteLine("Area: " & S) End Module Function AreaQuad (ByVal n As Integer) Dim S As Integer S = n * n Console.WriteLine("Area: " & S) End Function Function AreaQuad (ByVal n As Integer) Dim S As Integer S = n * n Return S End Function Gabarito Comentado Gabarito Comentado 7. Um método, também conhecido como procedimento, é um bloco de códigos identificado por um nome. Sempre chamado pelo nome para que execute o bloco de código. O método que executa um bloco de código, mas Não retorna valor: Module Public Application Sub Function Gabarito Comentado 8. No desenvolvimento de software com a intenção de evitar redundância, permitir o reaproveitamento de código e facilitar a manutenção, baseado na máxima que diz: Dividir para conquistar, O VB 2010 Express, ao criar um projeto, define automaticamente um(a): Rotina Módulo Procedimento Função Método Exercício: CCT0248_EX_A4_201510492054_V1 Matrícula: 201510492054 Aluno(a): ALLISON LEONE FRANCELINO RAMOS DA SILVA Data: 07/05/2017 22:10:13 (Finalizada) 1a Questão (Ref.: 201510718315) Fórum de Dúvidas (0) Saiba (0) Um desenvolvedor precisa entender o desenvolvimento de um código feito por outro programador. Acompanhando a lógica do programa a seguir, qual será o resultado apresentado pelo programa? Module Module1 Sub Main() Dim a As Integer = 10 Dim b As Integer = 20 Dim resp As Integer If a > b Then If a Mod 2 = 0 Then resp = a / b Else resp = a + b End If Else If b Mod 2 = 0 Then resp = a * b Else resp = a - b End If End If Console.WriteLine(resp) Console.ReadKey() End Sub End Module 2 200 30 10 40 Gabarito Comentado Gabarito Comentado 2a Questão (Ref.: 201511118257) Fórum de Dúvidas (0) Saiba (0) O código apresentado nesta questão, tem por objetivo receber a idade de uma pessoa e informar se ele é Eleitor obrigatório, facultativo ou Não é eleitor, baseado apenas na idade, deixando de fora outros requisitos. Sabe-se que voto é obrigatório para pessoas que tenham de 18 a 69 anos, pessoas menores de 16 anos não votam e para os demais o voto é facultativo. Module module1 Sub Main() Dim idade As Byte Console.WriteLine("Idade: ") idade = Console.ReadLine() ______ idade < 16 Then Console.WriteLine("Não Vota") ________ idade < 18 Then Console.WriteLine("Facultativo") ________ idade < 70 Then Console.WriteLine("Obrigatório") ________ Console.WriteLine("Facultativo") _______ Console.ReadKey() End Sub End Module Marque a resposta que completa corretamente as lacunas para que o programa exiba corretamente a categoria do eleitor baseado na idade informada. Desconsidere valores errados, como zero ou números negativos. Select - Case - Case - Default - End Select If - ElseIf - ElseIf - Else - End If If - if - If - Else - End If If - Else - Else - Else - End If Select Case - Case - Case - Case Else - End Select Gabarito Comentado Gabarito Comentado 3a Questão (Ref.: 201510774480) Fórum de Dúvidas (0) Saiba (0) A linguagem VB 2010 possui estruturas de controle de fluxo que permitem o desenvolvimento de programas estruturados, que são programas que não fazem uso da instrução GoTo. São Estruturas de Controle de Decisão, EXCETO: Decisão Simples Decisão de Sequência na mesma linha Decisão de Repetição Decisão Aninhada Decisão Estendida Gabarito Comentado Gabarito Comentado 4a Questão (Ref.: 201510718316) Fórum de Dúvidas (0) Saiba (0) Um desenvolvedor precisa entender o desenvolvimento de um código feito por outro programador. Acompanhando a lógica do programa a seguir, quais serão os resultados apresentados pelo programa? Sabendo-se que foram entrados os seguintes dados em sequência:
Compartilhar