Buscar

ATIVIDADE 3 - ALGORITMOS E LÓGICA DE PROGRAMAÇÃO I

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 15 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 15 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 9, do total de 15 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

ATIVIDADE 3 - ALGORITMOS E LÓGICA DE PROGRAMAÇÃO I - 52/2022
Período:09/05/2022 08:00 a 27/05/2022 23:59 (Horário de Brasília)
Status:ENCERRADO
Nota máxima:1,50
Gabarito:Gabarito será liberado no dia 02/07/2022 00:00 (Horário de Brasília)
Nota obtida:1,05
1ª QUESTÃO
Inúmeras aplicações têm, em certo ponto de seu código, que decidir entre tomar um caminho ou outro. Por
exemplo, algumas ações podem ser tomadas caso um número qualquer seja igual a zero, ou caso o número
seja menor do que zero, e assim por diante.
 
Com base em seus conhecimentos a respeito de estruturas condicionais, realize o teste de mesa no
algoritmo abaixo.
 
01 - Algoritmo testaNumero
02 - Var numero: inteiro
03 - Início
04 - leia(numero)
05 - Se((-1)*numero < 0) então
06 - escreva("Caso 1.")
07 - Senão
08 - Se ((-1)*numero > 0) então
09 - escreva("Caso 2.")
10 - Senão
11 - escreva("Caso 3.")
12 - Fim_se
13 - Fim_se
14 - Fim
 
Com base no algoritmo acima, leia as afirmações abaixo.
 
I – A linha 6 do algoritmo só será executada caso o usuário insira um valor positivo.
II – A condição da linha 8 só será testada caso o usuário insira um valor não-positivo.
III – A linha 10 será executada quando o número for diferente de zero.
 
Sendo assim, é correto o que se afirma em:
ALTERNATIVAS
I, apenas.
II, apenas.
III, apenas.
I e II, apenas.
I, II e III.
2ª QUESTÃO
1)      Analise o algoritmo a seguir e assinale o resultado de sua execução:
 
Algoritmo abc
Var
     a, b, c: inteiro
Início
   a <- 12
   b <- 5
   c <- a
   b <- c
   a <- b
  Escreva (a)
  Escreva (b)
  Escreva (c)
Fim
 
Logo, a resposta correta é:
ALTERNATIVAS
A = 12, B = 12, C = 12
A = 5, B = 12, C = 12
A = 12, B = 12, C = 5
A = 12, B = 5, C= 5
A = 5, B =5, C = 5
3ª QUESTÃO
A estrutura Para é uma estrutura do tipo laço contado, normalmente, utilizada para um número definido de
repetições. Isto é, comumente, utilizamos essa estrutura quando sabemos o número de vezes que o trecho
de código precisa ser repetido. Outro termo utilizado para essa estrutura de repetição é o de estrutura de
repetição com variável de controle, pois é utilizada uma variável contadora para controlar o número de
repetições.
LEAL, Gislaine Camila Lapasini; OLIVEIRA, Pietro Martins de. Algoritmos e Lógica de Programação I. Maringá
- PR.: UniCesumar, 2020. 
A partir do texto acima, analise as linhas de códigos a seguir:
 
1.      Para i de 0 até 10 passo 1 faça
2.      Enquanto (num < 10) faça
 
A partir da análise dos exemplos acima, avalie as afirmações a seguir e assinale (V) para verdadeiro e (F)
para falso:
 
I. As duas linhas de código funcionam de forma igual, portanto retornam o mesmo resultado.
II. As duas estruturas condicionais possuem repetições indefinidas e o teste condicional deve ser executado
pelo menos uma vez.
III. No exemplo 2 o loop será executado apenas 10 vezes.
IV. No exemplo 1 o loop será executado indefinidas vezes.
As afirmações I, II, III e IV são, respectivamente:
ALTERNATIVAS
F, V, V, F.
F, F, V, V.
F, V, V, V.
F, F, F, V.
F, F, F, F.
4ª QUESTÃO
Um objeto é dito recursivo se ele for definido em termos de si próprio. Destaca-se que o conceito de
recursão não é encontrado somente na programação mas também na matemática e no dia a dia como, por
exemplo, quando vemos uma imagem que contém a si própria.
 
LEAL, Gislaine Camila Lapasini, OLIVEIRA, Pietro Martins de. Algoritmos e Lógica de Programação I. Maringá:
Unicesumar, 2020.
 
Assim, considere o seguinte trecho de pseudocódigo do algoritmo fatRec , abaixo, cujo propósito é
calcular e exibir, na tela, o fatorial de 5.
 
01 - Algoritmo fatRec
02 - Funcao fat(x: inteiro): inteiro
03 - Início
04 - Se (________) então
05 - retorne 1
06 - Senão
07 - retorne x * __________
08 - Fim_se
09 - Fim_funcao
10 - Var n, resultado: inteiro
11 - Início
12 - n <- 5
13 - ______________ <- fat(n)
14 - escreva(resultad0)
15 - Fim
 
Com base em suas habilidades no desenvolvimento e compreensão de algoritmos, assinale a alternativa que
melhor se adequa à realidade e ao propósito do algoritmo fatRec apresentado acima.
ALTERNATIVAS
As lacunas das linhas 4, 7 e 13 devem ser preenchidas pelas instruções "x = 1", "fat(x)" e "n", respectivamente.
As lacunas das linhas 4, 7 e 13 devem ser preenchidas pelas instruções "x = 1", "fat(x-1)" e "n", respectivamente.
As lacunas das linhas 4, 7 e 13 devem ser preenchidas pelas instruções "x = 1", "fat(x)" e "resultado",
respectivamente.
As lacunas das linhas 4, 7 e 13 devem ser preenchidas pelas instruções "x = 0", "fat(x-1)" e "resultado",
respectivamente.
As lacunas das linhas 4, 7 e 13 devem ser preenchidas pelas instruções "fat(x) = 0", "fat(x)" e "resultado",
respectivamente.
5ª QUESTÃO
Analise o trecho extraído de um PSEUDOCÓDIGO:
...
Inicio
 jogada <- 0
 pontuacao <- 0
 while (jogada < 10){
 jogada <- jogada + 1
 Leia(pontos)
 pontuacao <- pontuacao + pontos
 }
...
Fim
 
De acordo com o PSEUDOCÓDIGO anterior, assinale a alternativa correta.
I - A variável jogada é considerada contadora.
II - A variável pontos é considerada contadora.
III - A variável pontuação é considerada acumuladora.
IV - A variável pontuação é considerada contadora.
É correto o que ser afirma em:
ALTERNATIVAS
I, apenas.
II, apenas.
I e III apenas.
II e III, apenas.
I, II e IV, apenas.
6ª QUESTÃO
Considere o pseudocódigo a seguir:
 
Tipo
     empregados = registro
         nome: vetor
1..50
de caractere
         sobrenome: vetor
1..50
de caractere
         dataNascimento: vetor
1..10
de caractere
         RG: vetor
1..50
de caractere
         dataAdmissao: vetor
1..10
de caractere
         salario: real
     fim_registro
var
     empregado: vetor
1..100
de empregados
 
Relacione o trecho de código disponibilizado acima com conteúdo discutido ao longo da disciplina e avalie
as afirmações a seguir:
 
I. Temos uma estrutura do tipo Registro para guardar os dados (nome, sobrenome, data de nascimento, RG,
data de admissão e salário).
II. Temos um vetor para armazenar todos os empregados da empresa.
III. A variável nome é do tipo booleana.
IV. O registro está incorreto porque deveria armazenar informações do mesmo tipo apenas.
É correto o que se afirma em:
 
ALTERNATIVAS
I e II, apenas.
II e IV, apenas.
I, II e III, apenas.
II, III e IV, apenas.
I, II, III e IV.
7ª QUESTÃO
Analise as linhas a seguir:
velocidadeGol <- 100
velocidadeFiatUno <- 120
 
Analise as alternativas a seguir,  que invertam de forma correta os valores sem perder nenhum valor.
 
I -
aux <- velocidadeGol
velocidadeGol <- velocidadeFiatUno
velocidadeFiatUno <- aux
 
II -
velocidadeGol <- velocidadeFiatUno
velocidadeFiatUno <- velocidadeGol
 
III -
aux <- velocidadeGol
velocidadeGol <- velocidadeFiatUno
velocidadeFiatUno <- velocidadeGol
 
IV -
aux <- velocidadeFiatUno
velocidadeFiatUno <- velocidadeGol
velocidadeGol <- aux
 
É correto o que se afirma em:
 
ALTERNATIVAS
I, apenas.
II, apenas.
I e IV, apenas.
II e III, apenas.
I, II e III, apenas.
8ª QUESTÃO
O algoritmo abaixo foi criado com o intuito de inicializar uma matriz de 2 (duas) linhas por 3 (três) colunas.
 
01 - Algoritmo manipulaMatriz
02 -        Var mat: Vetor
1..2, 1..3
de inteiro
03 -                      i, j: inteiro
04 - Início
05 -        i <- 1
06 -        j <- 1
07 -        Enquanto (i <= 3) faça
08 -                      Enquanto(j <= 2) faça
09 -                                     mat
i, j
<- i*j
10 -                                     j <- j + 1
11 -                      Fim_enquanto
12 -        Fim_enquanto
13 - Fim
 
Assim, considere o algoritmo acima para avaliaras afirmações abaixo.
 
I – Em um dado ponto da execução do algoritmo, o elemento da primeira linha, segunda coluna, terá seu
conteúdo valendo 2 (dois).
II – Há um erro semântico na linha 7, pois a matriz possui duas linhas apenas.
III – Da maneira como foi escrito, o algoritmo nunca irá entrar em loop infinito.
 
Sendo assim, é correto o que se afirma em:
ALTERNATIVAS
I, apenas.
II, apenas.
III, apenas.
) I e II, apenas.
I, II e III.
9ª QUESTÃO
Considere o pseudocódigo abaixo:
 
Algoritmo maior_menor
Var
num1, num2, maior: inteiro
Início
     Escreva(“Digite os valores:”)
     Leia(num1, num2)
     Se (resto = 0) então
            metade <- n / 2
             Escreva(“o maior número:”, maior)
Fim_se
Fim
 
O propósito desse código é encontrar o maior valor entre 2 números, mas podemos notar que existe um
erro em sua lógica. Nesse sentido assinale a alternativa que resolva de forma correta a lógica proposta:
ALTERNATIVAS
Se (num1 > num2) então
 maior <- num1
Senão
 maior <- num2
fim_se
Se (num1 < num2) então
 maior <- num1
Senão
 maior <- num2
fim_se
Se (num1 >= num2) então
 maior <- num1
Senão 
 maior <- num2 
fim_se
Se (num1 = maior) então
 maior <- num1
Senão
 maior <- num2
fim_se
Se (num1 mod num2) então
 mod <- num1 > num2
fim_se
10ª QUESTÃO
Sub-rotinas consistem em blocos de instruções que realizam tarefas específicas. É um trecho menor de
código, um algoritmo mais simples que resolve um subproblema, por meio de operações de entrada,
processamento e saída. Uma sub-rotina é carregada apenas uma vez e pode ser executada quantas vezes
for necessário, podendo ser utilizada para economizar espaço e tempo de programação
LEAL, Gislaine Camila Lapasini; OLIVEIRA, Pietro Martins de. Algoritmos e Lógica de Programação I. Maringá
- PR.: UniCesumar, 2020.
 
A definição acima, adaptada, explica o que é uma sub-rotina e seu funcionamento. Analise o código a
seguir, relacionando-o ao contexto apresentado.
 
Algoritmo sub_rotina
 
??? soma (x, y: real): real
Início
      Retorne x + y
Fim_???
 
// programa principal
Var
    a, b, r: real
Início
   A <- 1
   B <- 2
   R < - soma (n, m)
   Escreva (r)
Fim
Assinale a alternativa correta:
ALTERNATIVAS
As funções diferem dos procedimentos porque as funções retornam valores, ao contrário dos procedimentos que
não. Contudo parâmetros podem ser passados para procedimentos e funções. No código apresentado temos um
exemplo de procedimento.
As linguagens de programação têm um conjunto de funções e procedimentos pré-definidos, portanto programadores
não podem incluir outras funções e procedimentos em um programa.
No algoritmo apresentado acima temos um exemplo de função. O valor retornado pela função será do tipo
especificado na sua declaração este valor deve ser retornado através do comando retorne.
Procedimentos e funções são loops dentro de um programa. Eles constituem a estrutura que permite que um
problema complexo seja dividido em várias subtarefas complexas.
Sub-rotinas servem para executar uma tarefa específica que provavelmente será executada uma única vez ao longo
da vida do software. Essa rotina é declarada em um bloco de código dentro do programa principal.

Continue navegando

Outros materiais