Rafael está estudando a disciplina de lógica de programação e seu professor lhe passou um exercício no qual ele deveria analisar um algoritmo a fim de encontrar possíveis erros e encontrar a sua funcionalidade. O algoritmo passado foi:
Inicio
tipo X = vetor [1..10] de inteiros;
Inteiro: i, j, aux;
Para 1 até 10 passo 1 faça
Leia X[i];
Fimpara;
Para i até 10 passo 1 faça
Para j até 9 passo 1 faça
Se (X[j] < X[I]) então
aux <- X[j];
X[j] <- X[j + 1];
X[j + 1] <- aux;
Fimse;
Fimpara;
Fimpara;
Para i até 10 passo 1 faça
Escreva (x[i]);
Fimpara;
Fimalgoritmo.
Considerando o algoritmo apresentado e o conteúdo estudado, analise as afirmativas a seguir:
I. O algoritmo irá ler um vetor de 10 números inteiros e irá apresentar o vetor em ordem decrescente.
II. São utilizados 2 laços de repetição na estrutura, sendo um para ordenar e outro para mostrar os resultados.
III. Temos no algoritmo a presença de laços de repetição encadeados, ou seja, um laço dentro do outro.
IV. Há um erro de sintaxe na comparação dos números para a ordenação dos dados.
É correto o que se afirma em:
I e III, apenas.
II e IV, apenas.
I e IV , apenas.
II e III, apenas.
I, II e IV, apenas.
Respostas
Resposta:
I e III, apenas.
Explicação:
A afirmativa II está incorreta, pois temos a presença de três laços de repetição e não dois. A afirmativa IV está incorreta, pois a sintaxe está correta, o laço de repetição possui um bloco de códigos que será analisado qual valor é maior e menor, e assim ordená-los em ordem decrescente.
Resposta:
Correta I e III, apenas.
Explicação:
A afirmativa I está correta, pois analisando e realizando o teste de mesa no algoritmo, percebemos a existência de um vetor de 10 números, que serão inseridos pelo usuário, e vetor após uma análise, irá mostrar os dados em ordem decrescente. A afirmativa III está correta, pois o algoritmo utiliza uma estrutura encadeada de laços de repetição para realizar a análise e ordenação dos vetores.