Você está na página 1de 16

QUESTÃO 1

Um determinado programador necessita agrupar informações para o cadastro de clientes de


uma empresa. Os dados que serão utilizados são caractere, inteiro e real. Para realizar isso, o
programador irá se utilizar de uma Estrutura de Dados Heterogéneas, que, por definição, são
uma estrutura de dados que permitem o agrupamento de informações formado por tipos de
dados distintos e referenciados por um mesmo nome.

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.

Os registros são exemplos de estruturas de dados heterogêneas, pois permitem agrupar


informações formadas por tipos de dados distintos e referenciados por um mesmo nome. Cada
campo dentro do registro pode ter um tipo de dado diferente, tornando-o uma escolha
detalhada para agrupar informações de clientes que incluam caracteres, inteiros e reais.

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.

Fonte: LEAL, G. C. L.; OLIVEIRA, P. M. de. Algoritmos e Lógica de Programação I. Maringá:


Unicesumar, 2020.

A respeito de estruturas de repetição, analise as afirmativas a seguir:

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.

III. O laço conhecido como "Para-de-ate-passo-faça" também é chamado de "laço por


contagem".
É correto o que se afirma em:

A. I e II, apenas.

B. I e III, apenas.

C. II e III apenas.

D. I, apenas

QUESTÃO 3

O escopo de uma variável está relacionado à sua visibilidade em relação às sub-rotinas de um


programa. Assim sendo, algumas variáveis ficam acessíveis apenas dentro das sub- rotinas e
são destruídas após o final da sua execução.

LEAL, Gislaine Camila Lapasini, OLIVEIRA, Pietro Martins de. Algoritmos e Lógica de
Programação I. Maringá: Unicesumar, 2020.

Considerando o texto acima, assinale a alternativa que satisfaz esta definição.

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.

Portanto, a alternativa correta é:

A. Variáveis Locais .

QUESTÃO 4

O escopo de uma variável está relacionado à sua visibilidade em relação às sub-rotinas de um


programa. Há variáveis que são declaradas fora das sub-rotinas, ficam acessíveis em qualquer
parte do algoritmo, inclusive dento das sub-rotinas, e ainda, são destruídas apenas ao final da
execução do algoritmo. LEAL, Gislaine Camila Lapasini, OLIVEIRA, Pietro Martins de. Algoritmos
e Lógica de Programação I. Maringá: Unicesumar, 2020.

Considerando as informações expostas, estamos nos referindo à:

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.

Portanto, a alternativa correta é:

D. Variáveis Globais.

QUESTÃO 5

Estruturas de dados HOMOGÊNEAS são estruturas que agrupam diversas informações do


mesmo tipo em uma única variável. Essas estruturas homogéneas são divididas em estruturas
unidimensionais e multidimensionais.

Considerando o assunto exposto, analise as afirmações seguintes:

1-Os procedimentos são exemplos de estruturas unidimensionais.

II - As matrizes são exemplos de estruturas multidimensionais,

III-Os vetores são exemplos de estruturas unidimensionais.

IV - Os registros são exemplos de estruturas unidimensionais e multidimensionais


simultaneamente.

É correto o que se afirmar em:

A. II e III, apenas.

B. I e II, apenas.

C. I, II e IV, apenas.

D. I, III e IV, apenas.

Vamos analisar cada afirmação:

I. Os procedimentos são exemplos de estruturas unidimensionais.

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.

II. As matrizes são exemplos de estruturas multidimensionais.

Correto. Matrizes são estruturas multidimensionais, pois são organizadas em linhas e colunas.

III. Os vetores são exemplos de estruturas unidimensionais.

Correto. Vetores são estruturas unidimensionais, organizadas em uma única dimensão.

4. Os registros são exemplos de estruturas unidimensionais e multidimensionais


simultaneamente.
Incorreto. Registros são estruturas que podem conter diversos tipos de dados, mas
normalmente são considerados unidimensionais.

Portanto, a resposta correta é:

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

Analise o algoritmo a seguir:

Algoritmo soma

Função soma: inteiro

Var

aux: inteiro

Início

aux <- n + m

retome aux

fim funçao

Var

n, m, res: inteiro

Início

n<-4

m <-9

res <- soma

Escreva (res)

Fim

Após sua análise avalie as afirmativas abaixo:

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.

II. Essa função tem passagem de parâmetros por referência.

III. A função apresentada tem passagem de parâmetros por valor.

IV. O objetivo da função é calcular e imprimir a soma entre os valores 4 e 9.

É correto o que se afirma:

Vamos analisar cada afirmação:

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.

II. Essa função tem passagem de parâmetros por referência.


Incorreto. O algoritmo não mostra nenhuma evidência de passagem de parâmetros por
referência. As parâmetros ne msão utilizadas na função, mas não há alteração de seus valores
originais.

III. A função que fornece passagem de parâmetros por valor.

Correto. Na linguagem de programação usual, a passagem de parâmetros é por valor, o que


significa que os valores originais dos parâmetros são usados pela função, mas não são
alterados.

4. O objetivo da função é calcular e imprimir a soma entre os valores 4 e 9.

Incorreto. O objetivo do algoritmo é calcular a soma de ne mutilizar a função somae armazenar


o resultado em res. Em seguida, o valor de resé impresso. No entanto, o texto não menciona
explicitamente que o objetivo é calcular a soma de 4 e 9; ele simplesmente executa essa
operação.

Portanto, a resposta correta é:

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.

III. A função que fornece passagem de parâmetros por valor.

QUESTÃO 8

Algoritmo cadastro

Tipo

cadAluno = registro

nome : caractere[50]

nota : vetor [1..4] de real

Fim_registro

Var

Aluno: cadAluno

i: inteiro

Inicio

mediaAluno: <- 0

escreva("Digite o nome do aluno: ")

leia(aluno.nome)

Para i de 1 até 4 passo faça

escreva("Digite a nota ", i)

leia(aluno.nota[i])
mediaAluno <- mediaAluno + aluno.nota[i]

Fim_para

mediaAluno <- mediaAluno / 4

escreva("A média do aluno é: ", mediaAluno)

Fim

Considerando o algoritmo, analise as afirmativas seguintes:

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).

É correto o que se afirma em:

Vamos analisar cada afirmação:

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).

Portanto, a resposta correta é:


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 anteriormente quantas vezes seria
necessário repetir o conjunto de instruções.

QUESTÃO 9

Ao construir algoritmos utilizando estruturas de repetição, muitas vezes, precisaremos utilizar


variáveis contadoras e acumuladoras. Aprendemos os conceitos relacionados a esses modelos
de variáveis, como utilizá-las e qual a diferença entre elas.

Sobre variáveis contadoras e acumuladoras, analise as afirmativas a seguir:

1 - As variáveis do tipo contadoras são utilizadas para incrementar ou decrementar um valor


constante nos laços de repetições.

II - As variáveis contadoras e acumuladoras não necessitam serem inicializadas.

III - As variáveis acumuladoras são utilizadas para incrementar valores em um valor variável
dentro de uma estrutura de repetição.

IV - As variáveis contadoras e acumuladoras devem ser inicializadas.

É correto o que ser afirma em:

A. III e IV, apenas.

B. I, apenas.

C. I, II, III e IV.

D. I, III e IV apenas.

Vamos analisar cada afirmação:

I. As variáveis do tipo contadoras são utilizadas para aumentar ou diminuir um valor constante
nos laços de repetições.

Incorreto. As variáveis do tipo contadora são utilizadas para acompanhar o número de


iterações em um laço de repetição, geralmente incrementando de 1 em 1.

II. **As variáveis contadoras e acumuladoras não são flutuantesAs variáveis contadoras e
acumuladoras não refletem sendo iniciais.

Incorreto. Contadoras e acumuladores variáveis devem ser inicializados antes de serem


utilizados em um laço de reprodução.

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.

Portanto, a resposta correta é:

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

Enquanto (x > 0) faca

escreva(x, " ")

x <- x - 1

Fimenquanto

Fimalgoritmo

Com base no código fonte apresentado acima, realize o teste de mesa

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.

Portanto, a saída final do algoritmo é: 6 5 4 3 2 1

QUESTÃO 11

A realização de testes de mesa em algoritmos que contém estruturas de decisão deve


considerar o monitoramento de atribuições a variáveis, valores de entrada e saída, constantes
e a resolução de expressões. Além disso, é preciso compreender o fluxo do algoritmo
analisando o comportamento das condições presentes no pseudocódigo.

Considere a realização de um teste de mesa sobre o algoritmo abaixo.

1 Algoritmo poui

2 Var numero, resto: inteiro


3 Inicio

4 leia(numero)

5 resto <- numero MOD 2

6 Se (resto = 0) então

7 escreva("Condição satisfeita")

8 Senão

9 escreva("Condição não satisfeita")

10 Fim_se

11 Fim

De acordo com os resultados encontrados em seu teste de mesa avalie as afirmações abaixo.

I – A palavra “MOD”, na linha 5, é um operador que remete a operação do calculo do resto da


divisão inteira entre dois números

II – A condição da linha 6 serve para testar se um numero é par ou impar

III – A mensagem da linha 9 será impressa caso o número seja par

Vamos analisar cada afirmação com base no algoritmo fornecido:

I. A palavra “MOD”, na linha 5, é um operador que se refere à operação do cálculo do resto da


divisão inteira entre dois números.

Correto. O operador MODé usado para calcular o resto da divisão inteira entre dois números.

II. A condição da linha 6 serve para testar se um número é par ou ímpar.

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.

III. A mensagem da linha 9 será impressa caso o número seja 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.

Portanto, a resposta correta é:

I. A palavra “MOD”, na linha 5, é um operador que se refere à operação do cálculo do resto da


divisão inteira entre dois números.

II. A condição da linha 6 serve para testar se um número é par ou ímpar.


QUESTÃO 12

01 Algoritmo conta

02 Var num, A, B, i:inteiro

03 inicio

04 A <- 0

05 B <- 0

06 Para i de 1 até 100 passo 1 faça

07 Escreva("Digite um numero: ")

08 Leia(num)

09 Se(num MOD 2 = 0) então

10 A <- A + 1

11 Senão

12 B <- B + 1

13 Fim_se

14 Fim_para

15 Escreva("A quantidade 'A":", A)

16 Escreva("A quantidade 'B':", B)

17 Fim

Com Base no algoritmo analise as afirmativas a seguir:

I. Podemos dizer que esse algoritmo realizará, obrigatoriamente 100 iterações do laço "para".

II . A quantidade A se refere a números impares, informados pelo usuário.

III. A quantidade B se refere a números pares, informados pelo usuário.

Vamos analisar cada afirmação com base no algoritmo fornecido:

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.

II. A quantidade refere-se a números impróprios, informados pelo usuário.

Correto. A variável A é incrementada quando o número informado pelo usuário é ímpar


(conforme a condição na linha 9).

III. A quantidade B se refere a números pares, informados pelo usuário.

Correto. A variável B é incrementada quando o número informado pelo usuário é par


(conforme a condição na linha 11).
Portanto, a resposta correta é:

I. Podemos dizer que esse algoritmo realizará, obrigatoriamente, 100 iterações do laço "para".

II. A quantidade refere-se a números impróprios, informados pelo usuário.

III. A quantidade B se refere a números pares, informados pelo usuário.

QUESTÃO 13

Observe a sintaxe da estrutura abaixo:

Caso (< variável >)

seja < valor 1 > faça < instrução 1 >

seja < valor 2 > faça < instrução 2 >

seja < valor N > faça < instrução N >

senão< instrução >

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 é?

A estrutura descrita na sintaxe fornecida é conhecida como "Caso-Seja-Senão" ou "Switch-


Case-Default" . Essa estrutura é comumente usada em linguagens de programação para realizar
a seleção de um bloco de código a ser executado com base no valor de uma variável ou
expressão. Cada caso seja <valor>representa um caso possível, e o bloco de código
correspondente é executado se a condição for verdadeira. O bloco senãoé executado caso
nenhuma das condições anteriores seja verdadeira. O termo "Caso" é muitas vezes usado como
sinônimo de "Switch" ou "Escolha" em diferentes linguagens de programação

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

6 C <- B " (A - 0.3/8)

7 escreva("O resultado é ", C)

8 Fim

Faça o teste de mesa.

o resultado final impresso será "O resultado é 9.1875

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.

É correto o que se afirma em?

Vamos analisar cada afirmação:

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.

Portanto, a resposta correta é:

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.

I – A sequencia de Fibonacci é um exemplo inerentemente recursivo

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

Sendo assim é correto afirmar em :

. A sequência de Fibonacci é um exemplo potencialmente recursivo.

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.

Portanto, a resposta correta é:

I. A sequência de Fibonacci é um exemplo potencialmente recursivo.

III. Caso uma função recursiva não possua caso base, ela poderá entrar em loop infinito.

QUESTÃO 18

1 Algoritmo manipulaMatriz

2 Var mat: Vetor[1..2, 1..3] de inteiro

3 i,j: inteiro

4 Inicio

5 i <- 1

6 j <- 1

7 Enquantp(i <= 3 faça

8 Enquanto(j <= 2) faça

9 mat[i,j] <- i*j

10 j <- j + 1

11 Fim_enquanto

12 Fim_enquanto

13 Fim

Assim considere o algoritmo acima para avaliar as afirmações abaixo:

I - Em um dado ponto da execução do algoritmo o elemento da primeira linha segunda coluna


terá o seu conteúdo valendo 2

II - Há um erro de semântico na linha 7 pois a matriz possui duas linhas apenas

III - Da maneira como foi escrito o algoritmo nunca ira entrar em loop infinito

Sendo assim é correto o que se afirma em:

I. Em um dado ponto da execução do algoritmo, o elemento da primeira linha segunda coluna


terá o seu conteúdo valendo 2.

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.

Portanto, a resposta correta é:

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.

Você também pode gostar