Buscar

APOSTILA3

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 7 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 7 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

29/08/2016 AVA UNIVIRTUS
http://univirtus­277877701.sa­east­1.elb.amazonaws.com/ava/web/#/ava/AvaliacaoUsuarioHistorico/84630/novo/1 1/7
APOL 3
PROTOCOLO: 201608141304902B041E9RÔMULO SILVA RAMOS - RU: 1304902 Nota: 100
Disciplina(s):
Estrutura de Dados
Data de início: 14/08/2016 20:28
Prazo máximo entrega: - 
Data de entrega: 14/08/2016 20:50
Questão 1/10
Com base nos conceitos, objetivos e declarações de funções, ministrados na aula 3
assinale a alternativa correta:
A Funções somente podem ser declaradas fora do bloco principal do programa main().
B O objetivo principal de utilizarmos funções em nossos programas, é de modularizar as rotinas de
programação.
C Funções podem retornar vários tipos de dados simultaneamente.
D Na passagem de parâmetros por valor, enviamos o endereço da variável de origem.
E Quando chamamos uma função e passamos um determinado dado de uma variável por valor, se este for
alterado na função, altera o valor da variável de origem.
Questão 2/10
De acordo com características das funções em programação, ministrados na Aula 3
Assinale a alternativa que melhor descreve as características da passagem de parâmetros por referência em 
funções.
A Quando queremos que uma determinada função retorne informações com a utilização do comando ‘return()’,
obrigatoriamente temos que realizar a passagem de parâmetros por referência para esta função.
B Em passagem de parâmetros por valor, somente podemos enviar valores numéricos.
C Quando utilizamos passagem de parâmetros por referência, o local de memória da variável de origem é
diferente do local de memória da variável de destino.
Você acertou!
Aula 03 / Slides 5 a 11

29/08/2016 AVA UNIVIRTUS
http://univirtus­277877701.sa­east­1.elb.amazonaws.com/ava/web/#/ava/AvaliacaoUsuarioHistorico/84630/novo/1 2/7
D Quando passamos para uma determinada função os valores de uma variável por referência, se dentro
desta função a variável que recebeu este valor que foi passado for alterado, o valor da variável de
origem também será alterado.
E A principal diferença entre passagem de parâmetros por referência e por valor, é o tipo de variável que pode
ser passada.
Questão 3/10
Qual a diferença entre a declaração de uma função e a chamada desta função para ser executada?
Assinale a Alternativa CORRETA
A Quando declaramos uma função, após escrever o nome da função colocamos o abre e fecha parênteses ‘( )’
e não colocamos ponto e vírgula. E na sequencia definimos o bloco da função com abre e fecha chaves ‘{ }’.
Já para chamar a função, após o nome da função que vai ser chamada colocamos o abre e fecha colchetes ‘[
]’ seguido de ponto e vírgula
B Quando declaramos uma função, após escrever o nome da função colocamos o abre e fecha parênteses ‘( )’
seguido de ponto e vírgula. E na sequencia definimos o bloco da função com abre e fecha chaves ‘{ }’. Já
para chamar a função, após o nome da função que vai ser chamada colocamos o abre e fecha parênteses ‘( )’
seguido de ponto e vírgula.
C Quando declaramos uma função, após escrever o nome da função colocamos o abre e fecha parênteses ‘( )’
e não colocamos ponto e vírgula. E na sequencia definimos o bloco da função com abre e fecha colchetes ‘[
]’. Já para chamar a função, após o nome da função que vai ser chamada colocamos o abre e fecha
parênteses ‘( )’ seguido de ponto e vírgula.
D Quando declaramos uma função, após escrever o nome da função colocamos o abre e fecha parênteses ‘( )’
e não colocamos ponto e vírgula. E na sequencia definimos o bloco da função com abre e fecha chaves ‘{ }’.
Já para chamar a função, após o nome da função que vai ser chamada colocamos o abre e fecha parênteses
‘( )’ seguido de ponto e vírgula e do bloco da função com abre e fecha chaves ‘{ }’.
E Quando declaramos uma função, após escrever o nome da função colocamos o abre e fecha
parênteses ‘( )’ e não colocamos ponto e vírgula. E na sequencia definimos o bloco da função com
abre e fecha chaves ‘{ }’. Já para chamar a função, após o nome da função que vai ser chamada
colocamos o abre e fecha parênteses ‘( )’ seguido de ponto e vírgula.
Questão 4/10
Qual a forma correta de realizar a passagem de parâmetros por valor para uma determinada função?
Assinale a Alternativa CORRETA
Você acertou!
Aula 03 / slides 10 e 11

Você acertou!
Aula 03 / Slides 5, 6, 7

29/08/2016 AVA UNIVIRTUS
http://univirtus­277877701.sa­east­1.elb.amazonaws.com/ava/web/#/ava/AvaliacaoUsuarioHistorico/84630/novo/1 3/7
A Nome_funcao(num1, aux);
B Nome_funcao(num1 aux);
C Nome_funcao(&num1, &aux);
D Nome_funcao(*num1 *aux);
E Nome_funcao(int num1, int &aux);
Questão 5/10
Sobre recursividade,
qual a alternativa CORRETA?
A Uma função recursiva se caracteriza pela passagem de parâmetro por referência.
B Uma função é considerada recursiva, quando ela é chamada várias vezes de dentro de uma estrutura de
repetição.
C Em relação a uma determinada variável, declarada dentro de uma função recursiva, se esta função
recursiva for chamada 10 vezes, no momento da 10ª chamada, teremos 10 posições de memória
distintas para esta variável que foi declarada dentro da função. Cada uma podendo ter um conteúdo
diferente.
D O que caracteriza a função ser recursiva, é o fato que, entre as suas linhas de execução, existe uma
chamada a outra função, que depois volta.
E Funções recursivas possuem um mecanismo automático de proteção que não deixa o programa travar, não
precisamos nos preocupar com isso.
Questão 6/10
Sobre o programa a seguir:
main()
{             int teste(int y)
               {              if(y < 20)
                                              y = teste(y * y + 1);
Você acertou!
Aula 03 / Slide 10

Você acertou!
Aula 03 / Slides 12 e 13

29/08/2016 AVA UNIVIRTUS
http://univirtus­277877701.sa­east­1.elb.amazonaws.com/ava/web/#/ava/AvaliacaoUsuarioHistorico/84630/novo/1 4/7
                               return(y);
               }
 
int x;
               x = teste(1);
}
ao final da execução, qual o valor de ‘X’?
Assinale a Alternativa CORRETA
A 1
B 21
C 26
D 42
E 256
Questão 7/10
Antes de executar um determinado programa, o compilador faz uma análise linha a linha procurando inconsistências. 
Caso encontre o compilador para e acusa erro de programação.
Em qual das afirmações a baixo o compilador não vai acusar erro com relação a funções?
Assinale a Alternativa CORRETA
A Quando declaramos que a função vai receber 3 (três) valores como argumento e somente enviamos 2 (dois).
B Quando o compilador �ver encontrado uma chamada à execução de uma determinada função, sendo que esta função somente vai ser
declarada no final do programa, fora do bloco principal main(), e não existe o cabeçalho da função no topo do programa antes da
chamada.
C Quando fazemos a chamada a uma determinada função internamente a outra função, mas a função que
estamos chamando está sendo declarada dentro do bloco principal main().
D Quando realizamos a chamada à execução de uma função fora do bloco principal main() e fora de qualquer
outra função.
Você acertou!
Aula 03 / Slide 13

29/08/2016 AVA UNIVIRTUS
http://univirtus­277877701.sa­east­1.elb.amazonaws.com/ava/web/#/ava/AvaliacaoUsuarioHistorico/84630/novo/1 5/7
E Quando o compilador tiver encontrado uma chamada à execução de uma determinada função, sendo
que esta função somente vai ser declarada no final do programa, fora do bloco principal main(), e
existe o cabeçalho da função no topo do programa antes da chamada.
Questão 8/10
Sobre o programa a seguir:
int numero(int *y)
{             int x;
for(x=5; x>1; x­­)
               *y = *y + x;
}
 
int quadrado(int y)
{              return(y * y);
}
 
main()
{             int num=3;
               num = quadrado(num);
num = quadrado(num);numero(&num);
}
ao final da execução, qual o valor de ‘num’?
Assinale a Alternativa CORRETA
Você acertou!
Aula 03 / Slides 5, 6 e 7

29/08/2016 AVA UNIVIRTUS
http://univirtus­277877701.sa­east­1.elb.amazonaws.com/ava/web/#/ava/AvaliacaoUsuarioHistorico/84630/novo/1 6/7
A 95
B 73
C 70
D 26
E 23
Questão 9/10
O algoritmo a seguir, imprime a série de Fibonacci até uma determinada posição definida pelo usuário. 
int Fib(int n1, int n2, int impr, int limite)
{             printf(“ %d ”, n2);
if (impr == limite)
               {              return(0);
               }
               else
               {              Fib(n2, (n1+n2),  ++impr, limite);
               }
}
main()
{  int num;
    printf(“Até qual posição da série de Fibonacci deseja que seja impresso? ");
   scanf("%d",&num);
    Fib(0, 1, 1, num);
}
Sobre este algoritmo, qual a afirmação (Alternativa) está correta?
Você acertou!
Aula 03 / Slides 16 a 19

29/08/2016 AVA UNIVIRTUS
http://univirtus­277877701.sa­east­1.elb.amazonaws.com/ava/web/#/ava/AvaliacaoUsuarioHistorico/84630/novo/1 7/7
A Caso o usuário digitar um valor maior que 1 (um) a função recursiva ‘Fib’ ficará em loop eterno.
B Se quisermos alterar a função ‘Fib’ para somente imprimir o elemento da série solicitada pelo usuário,
teríamos que: 1º retirar printf(“ %d ”, n2); da função ‘Fib’; 2º colocar a linha printf(“ %d ”, n2); dentro da função
main, mas depois da chamada da função Fib.
C Para economizarmos tempo, podemos colocar a leitura do número digitado pelo usuário dentro da função
‘Fib’.
D A série de Fibonacci poderia ser impressa sem a necessidade de recursividade. Para tanto teríamos que
utilizar estruturas de decisão.
E Para corrigir a possibilidade de loop eterno pela função ‘Fib’, temos que criar uma condição de
somente chamar a função se o usuário digitar um valor positivo maior que 0 (zero).
Questão 10/10
Seguindo o conteúdo ministrado na AUla 3, Com base nas sentenças I, II e III, 
I – Quando realizamos a passagem de parâmetros por referência, estamos passando para a função o endereço da 
variável de origem. Deste modo se a variável que recebeu este endereço for alterada, vai ser alterado na verdade o 
conteúdo da variável de origem.
II – Quando declaramos uma função, colocamos na frente do nome da função o tipo de dado que a função pode retornar 
utilizando o comando “return”. Se não tiver nada escrito na frente do nome da função, por padrão ele pode retornar 
caracteres alfa numéricos.
III – O propósito de criarmos funções, é o de modularizar o programa de formar a ficar mais clara a compreensão do 
programa. Sendo que o ideal é que cada função execute uma única tarefa.
Assinale a Alternativa CORRETA
A As questões I e III estão corretas.
B As questões I e II estão corretas.
C As questões II e III estão corretas.
D Somente a questão I está correta.
E Somente a questão II está correta.
Você acertou!
Aula 03 / Slide 21

Você acertou!
Slides da Aula 3


Outros materiais