Exercícios de Algoritmos: Repetição e Matrizes
Classificado em Computação
Escrito em em
português com um tamanho de 9,4 KB
Unidade 3: Estruturas de Repetição
Complete as lacunas da frase com as palavras da alternativa que apresenta a sequência correta de acordo com as definições apresentadas.
“A inserção do comando ________ utiliza a variável contador seguido dos comandos _______ para indicar a quantidade de vezes que o bloco de comando será repetido. O comando _______ serve como incremento, então, até que a quantidade de repetições seja menor ou igual ao limite de 100 preestabelecido, esse será incrementado de mais 1, indicando a quantidade de vezes que os comandos foram executados.”
- a) para / de...até / passo
- b) até...de / para / passo
- c) passo / para / de...até
- d) de...até / passo / para
- e) para / passo / de...até
Analise as afirmações e assinale a alternativa referente à sequência correta.
I – As estruturas com teste no início (enquanto) e com teste no final (repita) são sugestões para o caso de não existir uma quantidade definida de repetições que serão realizadas.
II – O comando for é equivalente ao comando enquanto.
III – O comando “passo” realiza o incremento da variável de controle.
São verdadeiras as afirmações:
- a) I, II e III.
- b) I e II.
- c) I e III.
- d) II e III.
- e) Apenas III.
Assinale a alternativa que contém o significado correto do símbolo utilizado para elaborar o diagrama de blocos da estrutura de repetição controlada por variável.
- a) Exibir
- b) Preempção
- c) Datagrama
- d) Preparação
- e) Processo
Descreva qual é a lógica computacional da estrutura de repetição controlada por variável.
A lógica computacional para o processamento desses comandos acontece da seguinte forma (PIVA Jr., 2012):
- A variável de controle, no caso chamamos de “i” no exemplo, é iniciada com o valor mínimo pretendido antes da linha de comando “para” (i = 1);
- Na linha de comando “para”, há a comparação do valor da variável de controle com o limite estabelecido (até);
- Se o valor comparado for menor ou igual ao valor do limite, então, as instruções que estão dentro do bloco de comandos do “para” serão executadas repetidamente até que se atinja o valor limite;
- A cada execução das instruções dentro do comando “para”, há o incremento da variável de controle e encerra-se esses procedimentos quando o valor ultrapassar o limite predefinido.
Desenvolva um diagrama de blocos e o respectivo português estruturado que utilize o comando “para” com o incremento “passo”.
algoritmo "Looping" var N, R, I: inteiro inicio para I de 1 ate 5 passo 1 faca leia N R <- N * 3 escreva R fimpara fimalgoritmoSão verdadeiras as afirmações:
I – Esse tipo de repetição pode ser utilizado todas as vezes em que se tiver a necessidade de repetir trechos finitos, quando se conhece o valor inicial e o valor final.
II – Variável: é a variável de controle do comando e deve ser do tipo inteiro.
III – Valor inicial: é o valor de início da variável de controle. Pode ser uma constante ou uma expressão aritmética, desde que o valor seja do tipo inteiro.
- a) I e II.
- b) I, II e III.
- c) II e III.
- d) III e I.
- e) Apenas I.
De acordo com a estrutura abaixo, assinale a alternativa que contém a informação coerente ao tipo de comando apresentado.
para i de 1 ate 10 faca escreval ("I = ", i) fimpara- a. (f) i é uma variável indefinida.
- b. (f) é obrigatória a inicialização da variável de controle.
- c. (v) a variável de controle é o “i”.
- d. (f) o contador pode ser suprimido da estrutura controlada por variável.
- e. (f) a variável de controle não será incrementada na repetição.
Unidade 4: Vetores e Matrizes
Assinale a alternativa que demonstra corretamente a declaração de uma matriz.
- a. (x) matrizA: vetor[1..3,1..3] de real
- b. ( ) somaDiag1: real
- c. ( ) matriz := vetor
- d. ( ) printf( "[ %d ][ %d ]: ", i + 1, j + 1 );
- e. ( ) escreva("Digite os números: [", i, " + ", j, " ] ")
Complete as lacunas da frase com as palavras de uma das alternativas a seguir.
“Quando o número de ............................ de uma matriz é igual ao número de .......................... a matriz é dita quadrada. Neste caso, os elementos de índices iguais constituem a diagonal principal”. (EVARISTO, 2001, p. 107).
- a. ( ) vetor / matriz / quadrada.
- b. ( ) colunas / matriz / quadrada.
- c. (x) linhas / colunas / quadrada.
- d. ( ) declaração / vetor / quadrada.
- e. ( ) vetor / matriz / diagonal.
Está correto o que se afirma em:
I. Com relação à ordenação de elementos de uma matriz de duas dimensões, o processo é o mesmo utilizado para ordenar matrizes de uma dimensão.
II. Uma matriz bidimensional precisa de dois índices, um que aponte para a linha e outro para a coluna; na interseção da linha com a coluna tem-se o elemento de dado, cujo conteúdo se quer acessar.
III. Os elementos da matriz correspondem a endereços que só podem ser acessados com o uso de índices.
- a. ( ) II e III.
- b. (x) I, II e III.
- c. ( ) Apenas I.
- d. ( ) I e II.
- e. ( ) I e III.
Explique como é a sintaxe que distingue uma variável de tipo de dado de constante quando estamos trabalhando com matriz.
Sintaxe: a sintaxe de definição de uma matriz é representada da seguinte forma:
<identificador> : VETOR [Li1..Lf1, LiN..LfN] de <tipo_de_dado>. O identificador do vetor é o nome que atribuímos a ele. A palavra “VETOR” é a instrução que determina a declaração tanto de um vetor quanto de uma matriz, seguido imediatamente da definição de dimensão da matriz, sendo que é preciso delimitar a quantidade de linhas e de colunas respectivamente. Por fim, a definição do tipo de dado da matriz é estabelecida. Mas, além de variáveis de tipo de dado, o conceito também se aplica para que uma matriz seja declarada e compreendida de acordo com a sintaxe como uma constante. Nesse caso, há a atribuição dos valores dos elementos da matriz em sua declaração. Observe o exemplo:Const Mat_Exemplo2: Array [1..2, 1..5] de real <- ((1.10, 1.5, 1.3, 1.2, 1.1), (2.5, 2.4, 2.3, 2.2, 2.1));indLinha, indCol: inteiro
Para uma matriz com duas linhas e cinco colunas, temos a atribuição dos valores da primeira linha e da segunda respectivamente, sendo que o número antes do sinal “.” (ponto) refere-se diretamente à coluna e o que vem depois do sinal é o valor atribuído ao elemento.
Cite as possíveis formas de se atribuir valores em matrizes.
Um elemento de uma matriz pode ser acessado de várias maneiras. Vamos considerar o exemplo de
Mat_Notas_Alunoem VisualG:- Atribuir valor diretamente:
Vet_Notas_Aluno[1,3] := 10. Atribuição realizada para o elemento que está na linha 1, coluna três com o valor para a nota “10”. - Atribuição inserida pelo usuário (teclado):
Leia(Vet_Notas_Aluno[1,3]). Utilizamos o comando de entrada de dados “Leia”, indicamos a respectiva posição no vetor “[1,3]” e, com isso, realizamos a respectiva atribuição por inserção do dado. - Operações com os elementos da matriz: como, por exemplo, atribuir um peso para a nota lançada:
Vet_Notas_Aluno[1,3] := Vet_Notas_Aluno[1,3] * 0.6. - Atribuição de valor para a posição seguinte ao elemento apontado pelo índice:
Vet_Notas_Aluno[indLinha, indCol+1] := 7.5.
- Atribuir valor diretamente:
Assinale a alternativa que contém uma informação verdadeira sobre operações com matrizes.
- a. ( ) É aconselhável declarar apenas um índice para manipular os dados em uma matriz.
- b. ( ) A atribuição dos valores em uma matriz é possível apenas através de inserção pelo usuário.
- c. ( ) A atribuição de valores em uma matriz é possível apenas no momento da declaração.
- d. (x) Os índices devem ser declarados para que se possa apontar os elementos de acordo com as suas respectivas posições na matriz.
- e. ( ) Não é necessário utilizar índices em matriz.
Assinale a alternativa que contém uma das formas de se atribuir valores em matrizes.
- a. ( ) Int minhaMatriz[ 3 ][ 3 ], i, j;
- b. ( ) Leia(Vet_Notas_Aluno[1,3])
- c. (x) Escreva ("Vet_Notas_Aluno[indLinha,indCol]")
- d. ( ) Escreva(matrizA[i,j])
- e. ( ) Para Mat_Vet[1,3] := faça