Prévia do material em texto
APOL 01,02,03,04 e 05 - LÓGICA DE PROGRAMAÇÃO E ALGORITMOS
Questão 1/5 - Lógica de Programação e Algoritmos
Um algoritmo fixa um padrão de comportamento a ser seguido ou uma
norma de execução a ser trilhada, com vistas a alcançar, como resultado
final, a solução de um problema, garantindo que sempre que executado,
sob as mesmas condições, produza o mesmo resultado. É incorreta a
definição de algoritmo abaixo:
Nota: 20.0
A Algoritmo é uma sequência de passos que visa atingir um objetivo bem definido.
Forbellone, 1999.
B Algoritmo é uma sequência finita de instruções ou operações cuja execução, em tempo
finito, resolve um problema computacional, qualquer que seja sua instância. Salvetti, 1999.
C Algoritmo é uma sequência de características padronizadas para realização de uma tarefa.
Ascencio, 1999.
Você acertou!
“Algoritmo é a descrição de uma sequência de passos que deve ser seguida para a realização de
uma tarefa.” Ascencio, 1999
D Algoritmos são regras formais para obtenção de um resultado ou da solução de um
problema, englobando fórmulas de expressões aritméticas. Manzano, 1997.
Questão 2/5 - Lógica de Programação e Algoritmos
Lógica de programação pode ser definida como o uso correto das leis do
pensamento, da ordem da razão e de processos de raciocínio e
simbolização formais na programação de computadores. É incorreto
afirmar, ao se falar de lógica e lógica de programação, que:
Nota: 20.0
A Um dos principais objetivos é a racionalidade e o desenvolvimento de técnicas que
cooperam na produção de soluções logicamente válidas e coerentes.
B O mesmo raciocínio pode ser expresso em qualquer idioma existente, mas continuaria
representando o mesmo raciocínio através de outra convenção.
C Uma vez a lógica estruturada, poderíamos representá-la em qualquer linguagem de
programação.
D O raciocínio é algo concreto e tangível.
Você acertou!
Aula 01:
"O raciocínio é algo abstrato e intangível, porém seres humanos têm a capacidade de expressá-lo
através da palavra falada ou escrita, baseando-se num determinado idioma que segue regras e
padrões gramaticais."
Questão 3/5 - Lógica de Programação e Algoritmos
Descrição narrativa consiste em analisar o enunciado do problema e
escrever, utilizando uma linguagem natural (por exemplo, a língua
portuguesa), os passos a serem seguidos para sua resolução.
Quais são as Vantagens e Desvantagens em relação ao uso da descrição
narrativa?
I- Vantagem: Língua natural, próxima do ser humano.
II - Vantagem: Linguagem Visual, que facilita a compreensão humana.
III - Desvantagem: Gera dúvidas e várias interpretações possíveis.
IV - Desvantagem : Dificuldade para transcrição em código de programa de
computador.
Qual a alternativa corresponde ao conjunto de Verdadeiros (V) e Falsos (V)
segundo as vantagens e desvantagens?
Nota: 20.0
A V,F,V,F
B V,V,V,V
C F,F,V,V
D V,F,V,V
Você acertou!
Slides 6 e 7 da Aula 02.
E V,F,F,F
Questão 4/5 - Lógica de Programação e Algoritmos
Observe os passos abaixo e diga qual a ordem ideal para o funcionamento
de um algoritmo que tenha por finalidade sacar dinheiro num banco 24
horas:
Nota: 20.0
A Ir até o banco 24 horas / Digitar a senha / Solicitar a quantia desejada / Colocar o cartão
/ Se o saldo for maior ou igual à quantia desejada, sacar; caso contrário, mostrar
mensagem de impossibilidade de saque / Retirar o cartão / Sair do banco 24 horas.
B Ir até o banco 24 horas / Colocar o cartão / Digitar a senha / Se o saldo for maior ou igual
à quantia desejada, sacar; caso contrário, mostrar mensagem de impossibilidade de saque
/ Solicitar a quantia desejada / Retirar o cartão / Sair do banco 24 horas.
C Ir até o banco 24 horas / Sair do banco 24 horas / Colocar o cartão / Digitar a senha /
Solicitar a quantia desejada / Se o saldo for maior ou igual à quantia desejada, sacar;
caso contrário, mostrar mensagem de impossibilidade de saque / Retirar o cartão.
D Ir até o banco 24 horas / Colocar o cartão / Digitar a senha / Solicitar a quantia desejada /
Se o saldo for maior ou igual à quantia desejada, sacar; caso contrário, mostrar mensagem
de impossibilidade de saque / Retirar o cartão / Sair do banco 24 horas.
Você acertou!
Aula 01:
Alguns algoritmos do cotidiano:
Algoritmo 1 – Somar três números
Passo 1: receber os três números
Passo 2: somar os três números
Passo 3: Mostrar o resultado obtido
Algoritmo 2 – Sacar dinheiro no banco 24 horas
Passo 1: ir até o banco 24 horas
Passo 2: colocar o cartão
Passo 3: digitar a senha
Passo 4: solicitar a quantia desejada
Passo 5: se o saldo for maior ou igual à quantia desejada, sacar; caso contrário, mostrar mensagem
de impossibilidade de saque
Passo 6: Retirar o cartão
Passo 7: sair do banco 24 horas
Questão 5/5 - Lógica de Programação e Algoritmos
Na escrita de um algoritmo que calcule a média de três valores quaisquer, a
melhor resolução escrita em descrição narrativa seria:
Nota: 20.0
A 1-receber os três valores.
2 – calcular a média aritmética.
3-se a média for maior que 7 dizer que o aluno está aprovado.
4-mostrar a média.
B 1-receber os três valores.
2 – calcular a soma aritmética.
3-mostrar a soma aritmética.
4-mostrar a média.
C 1-receber os três valores.
2-calcular a média aritmética.
3-mostrar a média aritmética.
Você acertou!
Veja slides das Aulas 01 e 02 e exemplos apresentados.
Observe que a descrição do problema pede:
calcule a média de três valores quaisquer.
Ele não fala em condicionar a média a algum valor.
D 1-receber os três valores.
2 – somar os três valores.
3-mostrar a média aritmética.
E 1-receber os dois valores.
2 –Calcular a média dos três valores.
3-mostrar a média aritmética.
APOL-02
Questão 1/5 - Lógica de Programação e Algoritmos
Na Aula 3, trabalhamos com o conceito de leitura e escrita de dados em
materiais e manipulações matemáticas:
Observe o algoritmo acima e assinale a alternativa que corresponde
ao enunciado que melhor representa este código.
Nota: 20.0
A Faça um programa que receba um número positivo e maior que zero, calcule e mostre:
• O número recebido ao quadrado;
• O número recebido ao cubo;
• O dobro do número.
B Faça um programa que receba um número qualquer, calcule e mostre:
• O número recebido ao quadrado;
• O número recebido ao cubo;
• O dobro do número.
Você acertou!
Aula 03
C Faça um programa que receba 3 números quaisquer, calcule e mostre:
• O número recebido ao quadrado;
• O número recebido ao cubo;
• O dobro do número.
D Faça um programa que receba 3 números quaisquer, calcule e mostre:
• O dobro do número.
E Faça um programa que receba 3 números quaisquer do tipo inteiro, calcule e mostre:
• O número recebido ao quadrado;
• O número recebido ao cubo;
• O dobro do número.
Questão 2/5 - Lógica de Programação e Algoritmos
Na Aula 4, trabalhamos com estruturas de controle do tipo condicional.
Acerda deste assunto, assinale a alternativa que contém as composições
das estruturas de controle:
Nota: 20.0
A Condicional simples e encadeada.
B Condicional composta e encadeada.
C Condicional simples e condicional composta.
D Condicional simples, condicional composta e condicional encadeada.
Você acertou!
Slides e Vídeo-Aula04.
E Condicional simples, composta e múltipla.
Questão 3/5 - Lógica de Programação e Algoritmos
O algoritmo abaixo tem como objetivo calcular o resultado de um número
qualquer elevado em uma potência qualquer.
Identifique nas alternativas a parte de código que, inserida na linha faltante,
efetuaria o cálculo correto:
Nota: 20.0
A result==base^expo
B result<-^base*expo
C result<-base^expo
Você acertou!
Aula 03.
D result<-base*(expo)^2
E result=base^expo
Questão 4/5 - Lógica de Programação e Algoritmos
Analise o algoritmo abaixo desenvolvido em pseudocódigo no VisuALG.
Assinale a alternativa que contém o enunciado que melhor descreve o
algoritmo escrito acima.
Nota: 20.0
A Faça um programa que receba o ano de nascimento de uma pessoa e o ano atual.
Calcule e mostre:
• Quantos anos a pessoa terá em 2020.
B Faça um programa que receba o ano de nascimento de uma pessoa e o ano atual.
Calcule e mostre:
• A idade da pessoa;
C Faça um programa que receba o ano de nascimento de uma pessoa e o ano atual.
Calcule e mostre:
• A idade da pessoa;
• Quantos anos a pessoa terá em 2020.
Você acertou!
Aula 03.
A variável s1 recebe a idade da pessoa.
A variável s2 recebe quantos anos a pessoa terá em 2020.
D Faça um programa que receba o ano de nascimento de uma pessoa e outro ano qualquer.
Calcule e mostre:
• A idade da pessoa;
E Faça um programa que receba dois anos quaisquer. Calcule e mostre:
• A idade da pessoa;
Questão 5/5 - Lógica de Programação e Algoritmos
Na Aula 3, trabalhamos com manipulação de dados dentro de nossos
algoritmos.
Acerca deste assunto, assinale a alternativa correta:
Nota: 20.0
A Variáveis são alteradas constantemente no decorrer do tempo de execução dos algoritmos,
e constantes não sofrem variação no decorrer do tempo de execução do algoritmo.
Você acertou!
B Variáveis são alteradas constantemente no decorrer do tempo, bem como constantes que
também sofrem variações.
C Variáveis, constantes, estruturas de controle e declaração de variáveis fazem tudo parte do
sistema de manipulação de dados.
D Variáveis inteiras, numéricas e caracter não podem ser alteradas durante o tempo de
execução.
E As únicas constantes que existem em programação são aquelas definidas matematicamente,
como por exemplo, o PI (que vale 3,14...)
APOL – 3
Questão 1/5 - Lógica de Programação e Algoritmos
Uma estrutura de repetição é utilizada quando se deseja repetir um trecho
do algoritmo, conforme vimos na Aula 5. Uma dos tipos de estrutura de
repetição utiliza um número definido de repetições.
Qual seria a melhor estrutura para uma repetição com número definido de
repetições?
Nota: 0.0
A PARA <variável> de ate [passo] faca
<seqüência-de-comandos>
fimpara
Aula 05 - Slide 13
B PARA <variável> de ate [passo] faca
<seqüência-de-comandos>
fimse
C PARAENQUANTO <variável> de ate [passo] faca
<seqüência-de-comandos>
fimpara
D SEENQUANTO para <variável> de ate [passo] faca
<seqüência-de-comandos>
fimse
E DE <variável> de ate [passo] faca
<seqüência-de-comandos>
fimpara
Questão 2/5 - Lógica de Programação e Algoritmos
Na Aula 6 trabalhamos com o conceito de vetores em psedocódigo. Vetores
são variáveis que podem conter diversos valores.
O algoritmo abaixo realiza a leitura de 10 nomes de pessoas e o seu sexo, e
armazena os nomes em 2 vetores diferentes.
Caso a pessoa seja homem, é armazenada no vetor Vmasc, e caso seja
mulher, no vetor Vfem.
Infelizmente, o código contém erros. Assinale a alternativa que identifica
todos os erros do código.
Nota: 20.0
A • A leitura do Nome e do Sexo devem estar dentro do para-se.
• Estão invertidos os vetores de armazenamento dentro do se-faca. Deveria ser
• primeiro o Vmasc e depois o Vfem.
• A variável i está declarada errada. Ela deve ser to tipo inteiro.
Você acertou!
B • A leitura do Nome e do Sexo devem estar dentro do para-se.
• A variável i está declarada errada. Ela deve ser to tipo inteiro.
C • A leitura do Nome e do Sexo devem estar dentro do para-se.
• Estão invertidos os vetores de armazenamento dentro do se-faca. Deveria ser
• primeiro o Vmasc e depois o Vfem.
D • O para-se é inapropriado para esta situação. Deve-se utilizar o enquanto-faca.
• Estão invertidos os vetores de armazenamento dentro do se-faca. Deveria ser
• primeiro o Vmasc e depois o Vfem.
• A variável i está declarada errada. Ela deve ser to tipo inteiro
E • O para-se é inapropriado para esta situação. Deve-se utilizar o enquanto-faca.
• A variável i está declarada errada. Ela deve ser to tipo inteiro
Questão 3/5 - Lógica de Programação e Algoritmos
Na aula 6 trabalhamos com o conceito de vetores. Considere um vetor
de dimensão 50 chamado v1.
Qual seria a melhor lógica para a identificação do menor e do maior
elemento deste vetor v1? Assinale a alternativa correta e assuma que a
variável que varre as posições do vetor é a variável pos, a variável maior
armazena o maior valor do vetor e a variável menor armazena o menor
valor do vetor.
Nota: 20.0
A para pos de 1 ate 10 faca
se (v1[pos]>maior) entao
maior<-v1[pos]
fimse
se (v1[pos]<menor) entao
menor<-v1[pos]
fimse
fimpara
B maior<-v1[1]
menor<-v1[1]
para pos de 1 ate 10 faca
se (v1[pos]>maior) entao
maior<-v1[pos]
senao
menor<-v1[pos]
fimse
fimpara
C maior<-v1[1]
menor<-v1[1]
para pos de 1 ate 50 faca
se (v1[pos]>maior) entao
maior<-v1[pos]
fimse
se (v1[pos]<menor) entao
menor<-v1[pos]
fimse
fimpara
Você acertou!
D maior<-v1[1]
menor<-v1[1]
se (v1[pos]>maior) entao
maior<-v1[pos]
fimse
se (v1[pos]<menor) entao
menor<-v1[pos]
fimse
E maior<-v1[pos]
menor<-v1[pos]
para pos de 1 ate 50 faca
se (v1[pos]>maior) entao
maior<-v1[pos]
fimse
se (v1[pos]<menor) entao
menor<-v1[pos]
fimse
fimpara
Questão 4/5 - Lógica de Programação e Algoritmos
Para o algoritmo abaixo, foi desenvolvido um psedocódigo que obtém como
dado de entrada a idade e o sexo de pessoas.
Assinale a alternativa que mostra corretamente como calcular os
percentuais de pessoas em cada uma das categorias (homens, mulheres,
meninos e meninas)?
Nota: 20.0
A escreval("% de meninas: ",fem_menor*10/qt," %")
escreval("% de mulheres: ",fem_maior*10/qt," %")
escreval("% de meninos: ",masc_menor*10/qt," %")
escreval("% de homens: ",masc_maior*10/qt," %")
B escreval("% de meninas: ",fem_menor/qt," %")
escreval("% de mulheres: ",fem_maior/qt," %")
escreval("% de meninos: ",masc_menor/qt," %")
escreval("% de homens: ",masc_maior/qt," %")
C escreval("% de meninas: ",fem_menor*100/x-qt," %")
escreval("% de mulheres: ",fem_maior*100/ x-qt," %")
escreval("% de meninos: ",masc_menor*100/ x-qt," %")
escreval("% de homens: ",masc_maior*100/ x-qt," %")
D escreval("% de meninas: ",fem_menor*100/qt," %")
escreval("% de mulheres: ",fem_maior*100/qt," %")
escreval("% de meninos: ",masc_menor*100/qt," %")
escreval("% de homens: ",masc_maior*100/qt,"%")
Você acertou!
E escreval("% de meninas: ",fem_menor*100," %")
escreval("% de mulheres: ",fem_maior*100," %")
escreval("% de meninos: ",masc_menor*100," %")
escreval("% de homens: ",masc_maior*100," %")
Questão 5/5 - Lógica de Programação e Algoritmos
Na aula 6 trabalhamos com o conceito de vetores. Considere um vetor
de dimensão 10 chamado v1.
Qual seria a lógica mais adequada para fazer a entrada, via teclado, de
cada elemento deste vetor v1? Assinale a alternativa correta e assuma que
a variável que varre as posições do vetor é a variável pos.
Nota: 20.0
A para pos de 1 ate 10 faca
escreval("Digite um numero qualquer:")
leia(v1[1])
fimpara
B para pos de 1 ate 10 faca
escreval("Digite um numero qualquer:")
leia(v1[pos])
fimpara
Você acertou!
C para pos de 1 ate 10 faca
escreval("Digite um numero qualquer:")
leia(v1[10])
fimpara
D para pos de 1 ate 10 faca
escreval("Digite um numero qualquer:")
leia(v1)
fimpara
E para pos de 1 ate 10 faca
escreval("Digite um numero qualquer:")
fimpara
APOL – 4
O algoritmo abaixo recebe uma dimensão de matriz como dado de entrada
e retorna na tela as posições da matriz preenchidas de forma automática
por um calculo matemático.
Assinale a alternativa que contém a saída para uma MATRIZ 5x5.
Nota: 20.0
A 2 3 4 5 6
4 5 6 7 8
5 6 7 8 9
6 7 8 9 10
7 8 9 10 11
B 2 3 4 5 6
3 4 5 6 7
4 5 6 7 8
5 6 7 8 9
6 7 8 9 10
Você acertou!
Conforme apresentado no material e videoaulas .
C 1 3 4 5 6
2 5 6 7 8
3 6 7 8 9
4 7 8 9 10
5 8 9 10 11
D 1 2 3 4 5
2 4 5 6 7
3 5 6 7 8
4 6 7 8 9
5 7 8 9 10
E 0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
Questão 2/5 - Lógica de Programação e Algoritmos
O algoritmo abaixo recebe a dimensão de uma matriz e calcula
automaticamente os valores dos elementos da matriz.
Assinale a alternativa que representa o resultado para um MATRIZ 2x2.
Nota: 20.0
A 2 3
2 3
Você acertou!
B 2 1
2 1
C 2 0
2 0
D 4 2
4 2
E 0 0
0 0
Questão 3/5 - Lógica de Programação e Algoritmos
O algoritmo abaixo envolve o conceito de MATRIZES, visto da AULA 8.
Matrizes são vetores bi-dimensionais, contendo linhas e colunas. O código
realiza a leitura de uma MATRIZ 3x3 (3 linhas e 3 colunas), e encontra os
elementos PARES da matriz, mostrando-os na tela e contando quantos
existem.
Assinale a alternativa que contém o código mais adequado para, ao invés
de encontrar os pares, encontre os números ímpares da matriz?
Nota: 20.0
A
B
C
D
Você acertou!
Correta! Basta analisar se o resto da divisão não é zero, caracterizando um número ímpar.
E
Questão 4/5 - Lógica de Programação e Algoritmos
O algoritmo abaixo recebe números reais positivos e/ou negativos e
armazena-os em um vetor. Posteriormente, armazena os valores positivos e
os negativos em novos vetores separados e escreve os vetores na tela.
Ao rodar o código acima, você percebe que existe um pequeno problema.
Ao mostrar na tela os valores positivos e negativos em vetores separados,
sempre um ZERO extra é colocado ao fim do vetor. Conforme a figura
abaixo:
Assinale a alternativa que contém a parte do código que melhor corrige este
problema, eliminando os zeros desnecessários ao final do vetor.
Nota: 0.0
A
B
C
D
E
Correta! Inserindo a condicional SE diferente de ZERO faz com que aqueles valores ZERO não sejam escritos.
Questão 5/5 - Lógica de Programação e Algoritmos
Na Aula 7 trabalhamos com o conceito de vetores. O pseudocódigo abaixo
lê e escreve na tela um vetor de dimensão variável.
Assinale a alternativa que contém o código correto
deste mesmo vetor sendo impresso na ordem inversa (de trás para frente).
Nota: 0.0
A
B
C
D
E
APOL – 5
Questão 1/5 - Lógica de Programação e Algoritmos
Nas Aulas 9 e 10 trabalhamos com funções e procedimentos. Observe
o código abaixo que aborda este tema.
Assinale a alternativa que contém a saída impressa na tela caso o valor lido
na variável x seja 5.
Nota: 0.0
A Sou inteligente.
Mas sem praticar, não vou passar!
Sou inteligente.
B Mas sem praticar, não vou passar!
Sou inteligente.
C Sou inteligente.
Mas sem praticar, não vou passar!
D Sou inteligente.
E Mas sem praticar, não vou passar!
Questão 2/5 - Lógica de Programação e Algoritmos
Observe o recorte de código abaixo. Este código realiza o cadastro de
diversos dados de pessoas: nome, idade, sexo e cargo em uma
determinada empresa.
Agora, assuma que você precisa fazer este cadastro dentro de uma
FUNÇÃO. Assinale a alternativa que contém a sintaxe correta da função
criada para este caso específico.
Nota: 0.0
A
B
C
D
E
Correta!
Questão 3/5 - Lógica de Programação e Algoritmos
Na Aula 9 trabalhamos com o conceito de PROCEDIMENTOS. Um
procedimento é um tipo de modularização do código onde não existe um
retorno de valor. Analise o código abaixo.
Neste algoritmo, quantas linhas UNICAMENTE COM ASTERISCOS serão
mostradas na tela?
Nota: 20.0
A Duas
B Quatro
Você acertou!
São 4 pois o PROCEDIMENTO linha é chamado 4 vezes, e em cada uma delas a linha de
asteriscos é escrita uma única vez.
C Três
D Nenhuma
E Cinco
Questão 4/5 - Lógica de Programação e Algoritmos
Na Aula 9 trabalhamos com o conceito de Funções. Funções servem como
um artifício de modularização do seu código.
O algoritmo acima mostra um psedocódigo que contém uma função.
Assinale a alternativa que descreve o funcionamento desta função.
Nota: 20.0
A A função calcula a soma dos quadrados dos valores.
B A função calcula a soma do primeiro valor com o quadrado do segundo valor.
Você acertou!
Conteúdo abordado nas aulas 7, 8, 9 e 10.
C A função calcula a soma do quadrado do primeiro valor pelo segundo valor.
D A função calcula o quadrado das somas dos valores.
E A função calcula a razao dos quadrados dos valores.
Questão 5/5 - Lógica de Programação e Algoritmos
A partir da Aula 5 trabalhamos com lógica iterativa. Na Aula 6 iniciamos os
estudos com vetores e na Aula 7 iniciamos os estudos com matrizes. Acerca
destes assuntos, observe as linhas de código abaixo. Nela temos uma
matriz chamada preço recebendo diversos valores em diferentes posições.
Avalie este bloco de código e selecione a alternativa que melhor se adequa
para substituí-lo.
Nota: 20.0
A para i de 1 ate 2 faca
para j de 1 ate 4 faca
leia(preco[i,j])
fimpara
fimpara
Você acertou!
Conteúdo abordado nas aulas 5, 6 e 7.
B para i de 2 ate 1 faca
para j de 4 ate 1 faca
leia(preco(i,j))
fimpara
fimpara
C para i de 1 ate 2 faca
para j de 1 ate 4 faca
leia(preco[j,i])
fimpara
fimpara
D para i de 1 ate 2 faca
para j de 1 ate 4 facaleia(preco[i])
fimpara
fimpara
E para i de 1 ate 4 faca
para j de 1 ate 4 faca
leia(preco[i,j])
fimpara
fimpara