Baixe o app para aproveitar ainda mais
Prévia do material em texto
ESTRUTURA DE DADOS 2a aula Lupa Vídeo PPT MP3 Exercício: GDU0412_EX_A2_201602020752_V1 Matrícula: 201602020752 Aluno(a): JOÃO LÚCIO ALMEIDA DA SILVA Data: 29/09/2017 23:27:54 (Finalizada) 1a Questão (Ref.: 201602281702) Fórum de Dúvidas (1 de 1) Saiba (1 de 1) Considere a seguinte função: void dobro(int x) { x = 2 * x; } Qual valor será impresso na tela quando o seguinte programa principal for executado? int main() { int n; n = 5; dobro(n); cout << n; return 0; } 10 5 20 0 Haverá um erro de compilação 2a Questão (Ref.: 201602042490) 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 inferência e por valor. Por memória e por disco. Por valor e por referência Por reforço e por referência. Por teste e por reforço. Gabarito Comentado 3a Questão (Ref.: 201602050940) Fórum de Dúvidas (1) Saiba (1) As variáveis em programação são utilizadas para armazenar um valor de determinado tipo em um espaço reservado na memória. Em algumas linguagens de programação podemos declarar, ou seja, reservar um espaço na memória, fora do escopo da função principal, e fora do escopo de qualquer outra função. Ao fazer a declaração desta forma estamos declarando uma variável do tipo: Inteiro Real Global Constante Local Gabarito Comentado 4a Questão (Ref.: 201602050974) 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 inteiro. Ponteiros. Passagem por valor. Registro. Envio de valor. Gabarito Comentado 5a Questão (Ref.: 201602664495) 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: As Estruturas de Dados As Filas Os Vetores Os Grafos As funções 6a Questão (Ref.: 201602632661) Fórum de Dúvidas (1) Saiba (1) Considere a função: void dobro(int x) { x = 10 * x; } Qual será o valor impresso na tela quando o programa principal for executado? int main() { int n; n = 5; dobro(n); cout << n; return 0; } 5 10 50 0 Haverá um erro de compilação Gabarito Comentado 7a Questão (Ref.: 201602614765) Fórum de Dúvidas (1 de 1) Saiba (1 de 1) Na passagem por ____________________ , o endereço da variável da função chamadora é passado para a função chamada e, dessa forma, o valor poderá ser alterado, ou não. valor caracter void referência número 8a Questão (Ref.: 201602627990) Fórum de Dúvidas (1) Saiba (1) 1) O que será impresso pela função Eureka ? Assinale a opção correta. void Eureka() { for (int i = 1; i <= 10; i++) if (i % 2 == 0) cout << i << " "; else if (i % 7 == 0) return; } 2 4 6 2 4 6 8 10 Nada é impresso, pois a função não compila. Para a função compilar, deveria ter int no lugar de void, já que há return na função. Nada é impresso, pois a função não compila. A função não deveria usar return, pois não está de acordo com o uso de void. 2 4 6 8 ESTRUTURA DE DADOS 2a aula Lupa Vídeo PPT MP3 Exercício: GDU0412_EX_A2_201602020752_V2 Matrícula: 201602020752 Aluno(a): JOÃO LÚCIO ALMEIDA DA SILVA Data: 29/09/2017 23:33:36 (Finalizada) 1a Questão (Ref.: 201602255620) Fórum de Dúvidas (1 de 1) Saiba (1 de 1) Auxiliar = 100 Numero1 = 1000 Numero2 = 20 Auxiliar = 101 Numero1 = 900 Numero2 = 20 Auxiliar = 111 Numero1 = 1000 Numero2 = 80 Auxiliar = 100 Numero1 = 900 Numero2 = 80 Auxiliar = 100 Numero1 = 900 Numero2 = 20 Gabarito Comentado 2a Questão (Ref.: 201602639248) Fórum de Dúvidas (1) Saiba (1) Blocos únicos de códigos que realizam diversas tarefas distitintas são de dificil manutenção. Portanto, utiliza-se a tecnica da modularização de programas, a fim de facilitar a implementação e a manutenção dos programas. Esta técnica, também chamada de modularização, tem como principal elemento: Os Vetores As funções As Estruturas de Dados Os Grafos As Filas 3a Questão (Ref.: 201602290755) Fórum de Dúvidas (1) Saiba (1) O programa executa perfeitamente independente da ordem das funções já que existem os seus protótipos. O programa não executa corretamente, pois os protótipos estão fora da ordem em que as funções são descritas. O programa não executa corretamente pois as funções devem ser descritas antes da função main(), para que o compilador consiga reconhecê-las. O programa não executa corretamente, pois o protótipo da função media( ) não apresenta a identificação dos parâmetros, mas apenas os tipos dos mesmos. O programa executa perfeitamente, mas não mostra o valor da media já que esta função não foi chamada na função main( ). Gabarito Comentado 4a Questão (Ref.: 201602050971) 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 vl estiver dentro de v. Retorna a posição de v se o valor vl foi encontrado. Retorna -1 se o valor de n foi encontrado. Resulta em erro, se o valor de vl não estiver dentro de v. Retorna o valor de vl se o valor n foi encontrado. Gabarito Comentado 5a Questão (Ref.: 201602253205) 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 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 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 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 compila normalmente e apresenta como resultado o valor 7.0 Gabarito Comentado 6a Questão (Ref.: 201602726874) Fórum de Dúvidas (1 de 1) Saiba (1 de 1) Ao definirmos uma função, podemos afirmar: I Toda função tem parâmetros II Quando nada retorna, o tipo é void III Quando todos os parâmetros são do mesmo tipo, é suficiente usar o tipo uma vez e separar os nomes dos parâmetros por vírgulas IV Na passagem por valor, o endereço da variável da função chamadora é passado para a função chamada Após uma análise das afirmativas acima, escolha a opção correta. Somente I e II estão corretas Somente II III e IV estão corretas Somente II e IV estão corretas Somente II e III estão corretas Somente II está correta Gabarito Comentado 7a Questão (Ref.: 201602118107) 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 ... É preciso definir a função antes do programa principal. 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. A chamada da função não poderá ser feita em qualquer hipótese. O programa não funcionará de forma alguma. Gabarito Comentado 8a Questão (Ref.: 201602050975) 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. 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. 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". 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. ESTRUTURA DE DADOS 3a aula Lupa Vídeo PPT MP3 Exercício: GDU0412_EX_A3_201602020752_V3 Matrícula: 201602020752 Aluno(a): JOÃO LÚCIO ALMEIDA DA SILVA Data: 06/10/2017 01:34:33 (Finalizada) 1a Questão (Ref.: 201602050435) Fórum de Dúvidas (0) Saiba (0) Qual das seguintes estruturas de dados é classificada como heterogênea? Fila Loop Registro Pilha Vetor Gabarito Comentado 2a Questão (Ref.: 201602690289) 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].nota=5.7; vet[10].aluno.nota=5.7 ; aluno.vet[10]=5.7; vet[10]=aluno.5.7; vet[10].nota=5.7; 3a Questão (Ref.: 201602722539) Fórum de Dúvidas (0) Saiba (0) Marque a opção correta, considerando struct Livro { int codigo; float preco; } liv; Livro->liv.codigo = 12345; liv.preco = 30.70; Livro.codigo = 12345; Livro.liv.codigo = 12345; liv->preco = 30.70; 4a Questão (Ref.: 201602050942) 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 nome do campo Nome da estrutura ponto tipo do campo Nome da estrutura vírgula tipo do campo Nome da estrutura seta tipo do campo Nome da estrutura ponto nome do campo Gabarito Comentado 5a Questão (Ref.: 201602255650) Fórum de Dúvidas (0) Saiba (0) Com relação à struct, é correto afirmar que : Cada elemento da struct é chamado componente. Cada elemento da struct é chamado campo e cada campo deve ser, obrigatoriamente, de um tipo de dados distinto de outro campo. Cada elemento da struct é denominado membro ou campo, sendo que a struct pode armazenar elementos de tipos diferentes ou não. Não é possível criar um vetor de structs, pois o vetor trabalha apenas com dados do mesmo tipo. A struct é sempre definida dentro da main. Gabarito Comentado 6a Questão (Ref.: 201602620811) 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].aluno=6.0; aluno[10]=6.0; aluno[3].10=6.0; vet[3].media=6.0; aluno[3].media=6.0; 7a Questão (Ref.: 201602664500) 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 alternativaem que é atribuída de forma correta a nota 5.7 para o décimo primeiro elemento deste vetor. aluno.vet[10].nota=5.7; vet[10].aluno.nota=5.7 ; vet[10]=aluno.5.7; vet[10].nota=5.7; aluno.vet[10]=5.7; ESTRUTURA DE DADOS 2a aula Lupa Vídeo PPT MP3 Exercício: GDU0412_EX_A2_201602020752_V4 Matrícula: 201602020752 Aluno(a): JOÃO LÚCIO ALMEIDA DA SILVA Data: 29/09/2017 23:54:37 (Finalizada) 1a Questão (Ref.: 201602050940) Fórum de Dúvidas (1) Saiba (1) As variáveis em programação são utilizadas para armazenar um valor de determinado tipo em um espaço reservado na memória. Em algumas linguagens de programação podemos declarar, ou seja, reservar um espaço na memória, fora do escopo da função principal, e fora do escopo de qualquer outra função. Ao fazer a declaração desta forma estamos declarando uma variável do tipo: Real Local Global Inteiro Constante Gabarito Comentado 2a Questão (Ref.: 201602614765) Fórum de Dúvidas (1 de 1) Saiba (1 de 1) Na passagem por ____________________ , o endereço da variável da função chamadora é passado para a função chamada e, dessa forma, o valor poderá ser alterado, ou não. void caracter número referência valor 3a Questão (Ref.: 201602627990) Fórum de Dúvidas (1) Saiba (1) 1) O que será impresso pela função Eureka ? Assinale a opção correta. void Eureka() { for (int i = 1; i <= 10; i++) if (i % 2 == 0) cout << i << " "; else if (i % 7 == 0) return; } Nada é impresso, pois a função não compila. A função não deveria usar return, pois não está de acordo com o uso de void. Nada é impresso, pois a função não compila. Para a função compilar, deveria ter int no lugar de void, já que há return na função. 2 4 6 8 10 2 4 6 2 4 6 8 4a Questão (Ref.: 201602050971) 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 a posição de v se o valor vl foi encontrado. Retorna -1 se o valor de vl estiver dentro de v. Resulta em erro, se o valor de vl não estiver dentro de v. Retorna -1 se o valor de n foi encontrado. Retorna o valor de vl se o valor n foi encontrado. Gabarito Comentado 5a Questão (Ref.: 201602255620) Fórum de Dúvidas (1 de 1) Saiba (1 de 1) Auxiliar = 111 Numero1 = 1000 Numero2 = 80 Auxiliar = 100 Numero1 = 1000 Numero2 = 20 Auxiliar = 101 Numero1 = 900 Numero2 = 20 Auxiliar = 100 Numero1 = 900 Numero2 = 80 Auxiliar = 100 Numero1 = 900 Numero2 = 20 Gabarito Comentado 6a Questão (Ref.: 201602253205) 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 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 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 compila normalmente e apresenta como resultado o valor 7.0 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". Gabarito Comentado 7a Questão (Ref.: 201602726874) Fórum de Dúvidas (1 de 1) Saiba (1 de 1) Ao definirmos uma função, podemos afirmar: I Toda função tem parâmetros II Quando nada retorna, o tipo é void III Quando todos os parâmetros são do mesmo tipo, é suficiente usar o tipo uma vez e separar os nomes dos parâmetros por vírgulas IV Na passagem por valor, o endereço da variável da função chamadora é passado para a função chamada Após uma análise das afirmativas acima, escolha a opção correta. Somente II III e IV estão corretas Somente I e II estão corretas Somente II e III estão corretas Somente II está correta Somente II e IV estão corretas Gabarito Comentado 8a Questão (Ref.: 201602118107) 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 definição da função deverá ser escrita, obrigatoriamente, após o programa principal. O programa não funcionará de forma alguma. A chamada da função poderá ser feita em qualquer hipótese. É preciso definir a função antes do programa principal. A chamada da função não poderá ser feita em qualquer hipótese. ESTRUTURA DE DADOS 2a aula Lupa Vídeo PPT MP3 Exercício: GDU0412_EX_A2_201602020752_V5 Matrícula: 201602020752 Aluno(a): JOÃO LÚCIO ALMEIDA DA SILVA Data: 29/09/2017 23:58:29 (Finalizada) 1a Questão (Ref.: 201602050975) 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. 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 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". 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. 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. Gabarito Comentado 2a Questão(Ref.: 201602290755) Fórum de Dúvidas (1) Saiba (1) O programa executa perfeitamente independente da ordem das funções já que existem os seus protótipos. O programa não executa corretamente pois as funções devem ser descritas antes da função main(), para que o compilador consiga reconhecê-las. O programa não executa corretamente, pois o protótipo da função media( ) não apresenta a identificação dos parâmetros, mas apenas os tipos dos mesmos. O programa não executa corretamente, pois os protótipos estão fora da ordem em que as funções são descritas. O programa executa perfeitamente, mas não mostra o valor da media já que esta função não foi chamada na função main( ). Gabarito Comentado 3a Questão (Ref.: 201602639248) Fórum de Dúvidas (1) Saiba (1) Blocos únicos de códigos que realizam diversas tarefas distitintas são de dificil manutenção. Portanto, utiliza-se a tecnica da modularização de programas, a fim de facilitar a implementação e a manutenção dos programas. Esta técnica, também chamada de modularização, tem como principal elemento: As funções Os Vetores As Estruturas de Dados Os Grafos As Filas 4a Questão (Ref.: 201602632661) Fórum de Dúvidas (1) Saiba (1) Considere a função: void dobro(int x) { x = 10 * x; } Qual será o valor impresso na tela quando o programa principal for executado? int main() { int n; n = 5; dobro(n); cout << n; return 0; } 5 Haverá um erro de compilação 10 0 50 Gabarito Comentado 5a Questão (Ref.: 201602042490) 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 reforço e por referência. Por valor e por referência Por memória e por disco. Gabarito Comentado 6a Questão (Ref.: 201602664495) 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: As Estruturas de Dados Os Vetores Os Grafos As Filas As funções 7a Questão (Ref.: 201602885334) Fórum de Dúvidas (1 de 1) Saiba (1 de 1) Considera a FUNÇÃO abaixo: void inverte(int &x, int &y) { int aux = x; x = y; y = aux; } Quais valores serão impressos na tela quando o seguinte programa principal for executado? int main() { int a = 18, b = 28; inverte(a, b); cout << a <<" e "<< b; return 0; } 28 e 18 08 e 18 18 e 28 28 e 08 18 e 18 8a Questão (Ref.: 201602633367) Fórum de Dúvidas (1 de 1) Saiba (1 de 1) Uma função possui um valor de retorno inteiro, recebe por valor um inteiro como primeiro parâmetro e por referência um inteiro como segundo parâmetro. Qual das respostas abaixo poderia representar o protótipo dessa função: int func (int a, int &b); int func (int &a, int b); int func (&int, int); void func (int &a, int &b); void func (int a, int &b);
Compartilhar