Escolar Documentos
Profissional Documentos
Cultura Documentos
LEAL, Gislaine Camila Lapasini, OLIVEIRA, Pietro Martins de. Algoritmos e Lógica de
Programação I. Maringá: Unicesumar, 2020. Considerando o exposto acima, marque a
alternativa que indica corretamente um exemplo de Estruturas de Dados Heterogéneas.
A. Vetores.
B. Registros.
C. Funções.
D. Procedimentos
E. Matrizes
A alternativa correta é:
B. Registros.
QUESTÃO 2
Estruturas de repetição também são conhecidas como laços ou loops. Tais estruturas são um
dos mecanismos mais formidáveis de algoritmos, já que permitem automatizar tarefas que
seriam extremamente repetitivas e propensas a erro, caso fossem executadas por humanos. Os
laços permitem que um bloco de comandos seja repetido (iterado) por diversas vezes, com
base em condições lógico-relacionais.
I. O laço "Enquanto" é conhecido por realizar o teste condicional logo no início do bloco de
comandos.
II. O laço "Repita-Até que é famoso por garantir que o bloco de comandos definido por ele seja
executado ao menos uma vez.
A. I e II, apenas.
B. I e III, apenas.
C. II e III apenas.
D. I, apenas
QUESTÃO 3
LEAL, Gislaine Camila Lapasini, OLIVEIRA, Pietro Martins de. Algoritmos e Lógica de
Programação I. Maringá: Unicesumar, 2020.
A. Variáveis Locais
B. Registros
C. Variáveis Globais
D. Parâmetros
E. Vetores
A definição dada está relacionada às variáveis locais, que ficam acessíveis apenas dentro das
sub-rotinas (ou funções, métodos) onde são declaradas e são eliminadas após o final da
execução dessas sub-rotinas.
A. Variáveis Locais .
QUESTÃO 4
A. Constantes.
B. Variáveis Locais
C. Parâmetros.
D. Variáveis Globais.
E. Registros.
A descrição dada corresponde às Variáveis Globais . Variáveis globais são declaradas fora das
sub-rotinas e ficam acessíveis em qualquer parte do algoritmo, inclusive dentro das sub-
rotinas. Eles são destruídos apenas ao final da execução do programa.
D. Variáveis Globais.
QUESTÃO 5
A. II e III, apenas.
B. I e II, apenas.
C. I, II e IV, apenas.
Os procedimentos não são estruturas de dados, mas sim sub-rotinas ou blocos de código que
realizam uma tarefa específica. Esta afirmação está incorreta.
Correto. Matrizes são estruturas multidimensionais, pois são organizadas em linhas e colunas.
A. II e III, apenas.
QUESTÃO 6
Uma determinada pessoa foi contratada para criar um sistema que lerá 100 valores de um
mesmo tipo, porém, sabe-se que há uma forma de poupar o trabalho repetido de ler cada um
desses valores.
LEAL, Gislaine Camila Lapasini, OLIVEIRA, Pietro Martins de. Algoritmos e Lógica de
Programação I. Maringá: Unicesumar, 2020.
Considerando o texto exposto, as estruturas de dados que permite uma única variável
armazenar diversos valores de um mesmo tipo são chamadas:
A. Registros
B. Laços de repetição
C. Desvios condicionais
D. Sub-rotinas
E. Procedimentos
Dado o contexto fornecido, uma estrutura de dados que permite armazenar diversos valores
de um mesmo tipo em uma única variável é o Vetor . No entanto, entre as opções fornecidas, a
mais próxima descrição seria a opção B. Laços de reprodução .
Ainda assim, é importante esclarecer que os laços de repetição são estruturas usadas para
iterar sobre um bloco de código várias vezes, e não para armazenar valores. Portanto, nesse
caso, a resposta mais seria abordar um vetor, que é uma estrutura de dados específica para
armazenar uma coleção de valores do mesmo tipo.
Se nenhuma das opções parecer completamente adequada ao contexto fornecido, pode haver
uma questão de redação ou de interpretação.
QUESTÃO 7
Algoritmo soma
Var
aux: inteiro
Início
aux <- n + m
retome aux
fim funçao
Var
n, m, res: inteiro
Início
n<-4
m <-9
Escreva (res)
Fim
I. O valor retornado pela função será do tipo especificado na sua declaração e este valor deve
ser retornado através do comando retorne.
I. O valor retornado pela função será o tipo especificado em sua declaração e este valor deverá
ser retornado através do comando retorne.
Correto. A função somafoi declarada como retornando um valor do tipo inteiro ( inteiro), e ela
utiliza o comando retornepara retornar o valor calculado.
I. O valor retornado pela função será o tipo especificado em sua declaração e este valor deverá
ser retornado através do comando retorne.
QUESTÃO 8
Algoritmo cadastro
Tipo
cadAluno = registro
nome : caractere[50]
Fim_registro
Var
Aluno: cadAluno
i: inteiro
Inicio
mediaAluno: <- 0
leia(aluno.nome)
leia(aluno.nota[i])
mediaAluno <- mediaAluno + aluno.nota[i]
Fim_para
Fim
I-O algoritmo deveria servir para ler o nome do aluno, suas quatro notas e no final apresentar a
média dessas notas.
II - Foi utilizado o laço contado ("para"), pois era sabido previamente quantas vezes seria
necessário repetir o conjunto de instruções.
III-O algoritmo funcionará perfeitamente caso os dados informados não forem compatíveis
com os tipos declarados nas variáveis e nos campos do registro "cadAluno IV - Os dados do
aluno são armazenados numa variável com estrutura de dados heterogéneos.
LEAL, Gislaine Camila Lapasini, OLIVEIRA, Pietro Martins de. Algoritmos e Lógica de
Programação I. Maringá: Unicesumar, 2020 (adaptado).
I. O algoritmo deveria servir para ler o nome do aluno, suas quatro notas e no final apresentar
a média dessas notas.
Correto. O algoritmo solicita o nome do aluno, lê suas quatro notas, calcula a média e a
apresenta no final.
II. Foi utilizado o laço contado ("para"), pois era sabido anteriormente quantas vezes seria
necessário repetir o conjunto de instruções.
Correto. O uso do laço "para" indica que o conjunto de instruções dentro do laço será repetido
um número fixo de vezes (quatro vezes, no caso).
III. O algoritmo funcionará perfeitamente caso os dados informados não sejam compatíveis
com os tipos declarados nas variáveis e nos campos do registro.
Incorreto. Se os dados informados não forem compatíveis com os tipos declarados, o algoritmo
pode não funcionar corretamente. Por exemplo, se o usuário inserir um texto no lugar de uma
nota, isso pode causar problemas.
4. Os dados do aluno são armazenados numa variável com estrutura de dados heterogêneas.
Incorreto. Os dados do aluno são armazenados em uma variável chamada "Aluno" que possui
uma estrutura de dados específica, já que os campos do registro (nome e nota) possuem tipos
específicos (caractere e vetor de real).
II. Foi utilizado o laço contado ("para"), pois era sabido anteriormente quantas vezes seria
necessário repetir o conjunto de instruções.
QUESTÃO 9
III - As variáveis acumuladoras são utilizadas para incrementar valores em um valor variável
dentro de uma estrutura de repetição.
B. I, apenas.
D. I, III e IV apenas.
I. As variáveis do tipo contadoras são utilizadas para aumentar ou diminuir um valor constante
nos laços de repetições.
II. **As variáveis contadoras e acumuladoras não são flutuantesAs variáveis contadoras e
acumuladoras não refletem sendo iniciais.
III. **As variáveis acumuladas são utilizadas para incrementar valores em um valor variável
dentro deAs variáveis acumuladas são utilizadas para incrementar valores em uma variável
dentro de uma estrutura de transação.
Correto. As variáveis acumuladas são usadas para acumular (somar) valores sucessivos ao
longo de um processo, geralmente dentro de um laço de repetição.
4. As variáveis contadoras e acumuladoras devem ser inicializadas.
Correto. Antes de serem usadas em um laço, as variáveis contadoras e acumuladas devem ser
inicializadas com um valor inicial.
D. I, III e IV apenas.
QUESTÃO 10
Uma estrutura de repetição permite executar um conjunto de instruções tentas vezes quanto
for necessário, sem a necessidade de replicar o mesmo trecho de código por várias vezes.
Replicar código fonte de maneira desregulada, além de deselegante, pode tornar o código
ineficiente e dificultar em muito a manutenção de um algoritmo.
Algoritmo "repeat"
var
x: inteiro
Inicio
x <- 6
x <- x - 1
Fimenquanto
Fimalgoritmo
Ao final, a saída será “6 5 4 3 2 1”. O loop continua até que xseja igual a 0, momento em que a
condição Enquanto (x > 0)se torna falsa e o loop termina.
QUESTÃO 11
1 Algoritmo poui
4 leia(numero)
6 Se (resto = 0) então
7 escreva("Condição satisfeita")
8 Senão
10 Fim_se
11 Fim
De acordo com os resultados encontrados em seu teste de mesa avalie as afirmações abaixo.
Correto. O operador MODé usado para calcular o resto da divisão inteira entre dois números.
Correto. A condição verifica se o resto da divisão inteira do número por 2 é igual a 0. Se for,
significa que o número é par.
Incorreto. A mensagem na linha 9 será impressa caso o número seja ímpar . Isso ocorre porque
a condição na linha 6 verifica se o número é par (resto da divisão por 2 igual a 0), e a
mensagem na linha 9 será impressa quando essa condição não estiver satisfeita, ou seja,
quando o número for ímpar.
01 Algoritmo conta
03 inicio
04 A <- 0
05 B <- 0
08 Leia(num)
10 A <- A + 1
11 Senão
12 B <- B + 1
13 Fim_se
14 Fim_para
17 Fim
I. Podemos dizer que esse algoritmo realizará, obrigatoriamente 100 iterações do laço "para".
I. Podemos dizer que esse algoritmo realizará, obrigatoriamente, 100 iterações do laço "para".
Correto. O laço "para" está configurado para executar de 1 a 100, realizando 100 iterações.
I. Podemos dizer que esse algoritmo realizará, obrigatoriamente, 100 iterações do laço "para".
QUESTÃO 13
Fim caso
Nesta estrutura, a < variável > é o objeto que será testado. O termo < valor > é o conteúdo, que
a variável poderá possuir, e o termo < instrução> refere-se aos comandos que serão
executados. caso aquela condição seja satisfeita. O funcionamento desta estrutura consiste em
testar cada um dos casos pré-programados. Ao executar o teste para o seja < valor 1 >", se for
verdadeiro, a < instrução 1 > é executada e, após seu término, o fluxo de execução prossegue
pela primeira instrução após o final da construção (fin_caso); se o seja < valor 1 for falso, o seja
< valor 2 > é testado e assim por diante.
Considerando a sintaxe do texto acima podemos dizer que o nome dessa estrutura é?
QUESTÃO14
A equipe de vendas de uma determinada empresa, pediu uma alteração no sistema que faz o
controle de consulta de estoque. A partir da atualização, será necessário informar o código
numérico do produto com 5 números seguido das très primeiras letras do nome do fabricante.
Se o produto não estiver cadastrado o valor padrão será XXXX012345678.
Considerando o tema variável, podemos dizer que o tipo da variável que será utilizada para
armazenar esse novo codigo será?
Dado o requisito de armazenamento de um código composto por um número de 5 dígitos
seguido pelas três primeiras letras do nome do fabricante, a variável que seria utilizada para
armazenar esse novo código pode ser do tipo String .
Em muitas linguagens de programação, uma String é uma sequência de caracteres e pode ser
utilizada para armazenar informações alfanuméricas, como um código composto por números
e letras. Isso permite a fácil manipulação e concatenação de diferentes partes do código, como
os números e as letras neste caso.
QUESTÃO 15
1 Algoritmo Expressao
2 Var A, B, C: real
3 Inicio
4 A <- 3.1
5 B <- 3.0
8 Fim
QUESTÃO 16
Variáveis são nada menos que espaços na memória do computador para que um algoritmo
possa armazenar dados em tempo de execução.
I. Na expressão "A - 3+ B", pode ser dizer que tanto A quanto B são variáveis numéricas.
II. Na expressão "X> O, temos condições de entender que o resultado da expressão será um
valor lógico (verdadeiro ou falso) IN.
III. Para armazenar vários caracteres textuais em uma mesma variável, não é necessário o uso
de vetores.
I. Na expressão "A - 3 + B", pode-se dizer que tanto A quanto B são variáveis numéricas.
Correto. As variáveis A e B estão envolvidas em operações aritméticas, o que sugere que são
variáveis numéricas.
II. Na expressão "X > 0", temos condições de entender que o resultado da expressão será um
valor lógico (verdadeiro ou falso).
Correto. A expressão "X > 0" é uma condição que resulta em um valor lógico, indicando se a
condição é verdadeira (quando X é maior que 0) ou falsa (quando X é menor ou igual a 0).
III. Para armazenar vários caracteres textuais em uma mesma variável, não é necessário o uso
de vetores.
Incorreto. Para armazenar vários caracteres textuais em uma mesma variável, geralmente é
necessário o uso de vetores ou strings, que são estruturas que podem armazenar sequências
de caracteres.
I. Na expressão "A - 3 + B", pode-se dizer que tanto A quanto B são variáveis numéricas.
II. Na expressão "X > 0", temos condições de entender que o resultado da expressão será um
valor lógico (verdadeiro ou falso).
QUESTÃO 17
Um objeto é dito recursivo se ele for definido em termos de si próprio. Destaca-se que o
concerto de recursão não é encontrado 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 propria.
II – A chamada recursiva de uma função é feita dentro da própria função porem sem passar
parâmetros
III - Caso uma função recursiva não possua caso base ela poderá entrar em loop infinito
Correto. A definição da sequência de Fibonacci é recursiva, pois cada termo é definido nos
termos dos dois termos anteriores.
II. A chamada recursiva de uma função é feita dentro da própria função, porém sem passar
parâmetros.
Incorreto. Em uma chamada recursiva, geralmente, são passadas parâmetros diferentes para
que a função trate um caso menor. A ideia é que a função resolva o problema para uma
instância menor do mesmo problema.
III. Caso uma função recursiva não possua caso base, ela poderá entrar em loop infinito.
Correto. O caso baseado em uma função recursiva é fundamental para evitar um loop infinito.
Se não houver um caso base que encerre as chamadas recursivas, a função continuará
chamando a si mesma indefinidamente.
III. Caso uma função recursiva não possua caso base, ela poderá entrar em loop infinito.
QUESTÃO 18
1 Algoritmo manipulaMatriz
3 i,j: inteiro
4 Inicio
5 i <- 1
6 j <- 1
10 j <- j + 1
11 Fim_enquanto
12 Fim_enquanto
13 Fim
III - Da maneira como foi escrito o algoritmo nunca ira entrar em loop infinito
Incorreto. O algoritmo não acessou a segunda coluna, apenas a primeira, então o elemento [1,
2] não é modificado.
II. Há um erro de semântico na linha 7, pois a matriz possui duas linhas apenas.
Correto. Há um erro na linha 7, pois o algoritmo tenta acessar a terceira linha da matriz, que
não existe.
III. Da maneira como foi escrito, o algoritmo nunca entrará em loop infinito.
Correto. O algoritmo tem condições de parada definidas (quando iou jultrapassam os limites) e
não possui chamadas recursivas, portanto, não entrará em loop infinito.
II. Há um erro de semântica na linha 7, pois a matriz possui duas linhas apenas.
III. Da maneira como foi escrito, o algoritmo nunca entrará em loop infinito.