Buscar

Algorítmos Aula 10 Exercicios Resolvidos 1


Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 6 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 6 páginas

Continue navegando


Prévia do material em texto

17/10/2018 Conteúdo Interativo
http://estacio.webaula.com.br/Classroom/index.html?id=2253755&classId=979811&topicId=2652531&p0=03c7c0ace395d80182db07ae2c30f034… 1/6
ALGORITMOS
 10a aula
 Lupa 
Vídeo
 
PPT
 
MP3
 
 
 
 
 1a Questão
Analise a seguinte afirmação:
 "Um edifício tem 8 andares, cada andar tem 5 apartamentos."
 Como poderíamos escrever uma declaração de matriz na linguagem C++, seguindo a afirmação acima, sabendo que os dados seriam
do tipo int ?
int edificio[40][1];
 int edificio[8][5];
int edificio[5][8];
int edificio[40][5];
int edificio[1][40];
 
 
Explicação:
Analisando ...
 "Um edifício tem 8 andares, cada andar tem 5 apartamentos."
Cada andar pode ser visto como uma linha da matriz. E em cada linha ou andar, podemos ter 5 apartamentos ou 5 colunas.
Dessa forma temos :
 int edificio[8][5]; 
 
 porque no 1o. par de parênteses temos o total de linhas e no 2o. par de colchetes temos o total de colunas
Veja que em todas as opções temos a variável de nome edificio.
 
 
 
 
 2a Questão
 Todos os elementos que são maiores que cinco do vetor VALOR.
Todos os elementos do vetor VALOR.
17/10/2018 Conteúdo Interativo
http://estacio.webaula.com.br/Classroom/index.html?id=2253755&classId=979811&topicId=2652531&p0=03c7c0ace395d80182db07ae2c30f034… 2/6
Todos os elementos que são menores que cinco do vetor VALOR.
Todos os elementos pares do vetor VALOR.
Todos os elementos ímpares do vetor VALOR.
 
 
Explicação:
Analisando o trecho dado em C++, temos o seguinte :
x é índice do vetor VALOR e é inicializado com zero. x irá de zero até 10, mas só entrará no loop até valer 9.
PAra cada x de 0 até 9 entraremos no loop e testaremos se o elemento de VALOR de índice x é maior que 5. Se for, tal elemento será
impresso na tela. Se não for, nada faremos.
Olhando para o vetor VALOR temos que serão impressos os valores de 6 até 10.
Analisando cada opção :
Falso. Serão impressos valores
ímpares também. Todos os elementos pares do vetor VALOR.
 
Falso. Serão impressos valores pares
também. Todos os elementos ímpares do vetor VALOR.
 
Falso. Serão impressos valores
maiores que 5.
Todos os elementos que são menores que
cinco do vetor VALOR.
 
Todos os elementos que são maiores que
cinco do vetor VALOR.
 
Falso. Serão impressos apenas os
valores 6, 7, 8, 9 e 10 Todos os elementos do vetor VALOR.
 
 
 
 3a Questão
Suponha que em um programa em C/C++ se deseje armazenar 15 valores decimais em um vetor LISTA. Assinale a declaração correta:
 float LISTA[15];
int lista[15];
int LISTA[16];
float lista[16];
 float lista[15];
 
 
Explicação:
 
 Verdadeira
float
LISTA[15];
 
Falso. É 15 e não 16. Além disso, deve-se usar float ou double e não
int. int LISTA[16];
 
Falso. É 15 e não 16. float lista[16];
17/10/2018 Conteúdo Interativo
http://estacio.webaula.com.br/Classroom/index.html?id=2253755&classId=979811&topicId=2652531&p0=03c7c0ace395d80182db07ae2c30f034… 3/6
 
FAlso. Deve-se usar float ou double e não int. int lista[15];
 
Falso. O nome do vetor dado no enunciado é LISTA e não lista. float lista[15];
 
 
 
 4a Questão
Suponha que você tenha que fazer um programa em C++ e deseja armazenar a venda dos 3 meses de 30 vendedores de uma
loja em uma matriz. Marque a opção que representa esta declaração:
char valores[30][2];
 float valores[30][3];
float valores[30][2];
char valores[30];
float valores[32];
 
 
Explicação:
 
Para cada vendedor teremos os valores dos 3 meses. Ou seja, para cada um dos 30 vendedores iremos armazenar valores reais, um
em cada mês. Então, podemos declarar uma matriz bidimensional com 30 linhas e 3 colunas.
Como foi usado o nome valores para a matriz e se está armazenando os valores dos vendedores, usaremos float.
Então,
float valores[30][3];
 
 
 
 
 5a Questão
Em uma aplicação em C/C++, a matriz ESTOQUE [3][4] armazena, em cada uma de suas linhas, a quantidade estocada de produtos no
último quadrimestre (4 meses). Sabendo-se que a declaração de uma matriz em C/C++ se dá da forma:
< tipo de dado> nome [nºde linhas][nºde colunas];
 Para obter o total estocado no primeiro mês do quadrimestre, o programa deverá:
Somar todas as colunas da linha índice 1
Somar todas as linhas da coluna índice 1.
 Somar todas as linhas da coluna índice 0.
Somar todas as linhas de todas as colunas.
Somar todas as colunas da linha índice 0.
 
 
Explicação:
Como a 1a. coluna (coluna 0) é relativa ao 1o. mês, então é preciso somar todas as linhas da coluna 0.
Analisando as opções :
 Verdadeira
Somar todas as linhas da coluna
índice 0.
 
Falso. Tem que somar todas as linhas da coluna 0 Somar todas as colunas da linhaíndice 0.
 
17/10/2018 Conteúdo Interativo
http://estacio.webaula.com.br/Classroom/index.html?id=2253755&classId=979811&topicId=2652531&p0=03c7c0ace395d80182db07ae2c30f034… 4/6
Falso. O 1o. mês é relativo à 1a. coluna, que tem
índice zero.
Somar todas as linhas da coluna
índice 1.
 
Falso. Tem que somar todas as linhas, cuja coluna
tem índice 0.
Somar todas as colunas da linha
índice 1
 
FAlso. Se quer apenas o 1o. mês, que está na 1a.
coluna.
Somar todas as linhas de todas as
colunas.
 
 
 
 6a Questão
Análise de código abaixo e selecione entre as alternativas, o que será impresso, após a execução.
int a = 3, b = 2;
int v[] = { 6, 7, 8, 9};
a = (v[2] - v[0]) + a;
int d = a * v[b];
std::cout << d << " " << v[1] << a + 2;
40 75
35 67
 40 77
21 67
24 75
 
 
Explicação:
int a = 3, b = 2;
int v[] = { 6, 7, 8, 9};
a = (v[2] - v[0]) + a;
int d = a * v[b];
std::cout << d << " " << v[1] << a + 2;
Analisando passo a passo :
a b v d
3 2 {6,7,8,9} 
a recebe 8 - 6 + 3, que
dá 5 
5 * v[2], ou seja, 5 * 8
= 40
Na tela será impresso :
40 7 7
pois, d vale 40
 v[1] vale 7
 a vale 5 e somado com 2 dá 7
 
 
 
 7a Questão
Considere os seguintes valores de entrada: 1, 2, 3, 4, 5, 6, 7, 8 e 9 e ainda, o programa abaixo. Marque a resposta que mostra o que
será exibido na tela.
17/10/2018 Conteúdo Interativo
http://estacio.webaula.com.br/Classroom/index.html?id=2253755&classId=979811&topicId=2652531&p0=03c7c0ace395d80182db07ae2c30f034… 5/6
#include < iostream > 
using namespace std;
int main()
{
 int lin, col, mat[3][3];
 for (lin=0; lin<3; lin++)
 for(col=0; col<3; col++)
 {
 cout<< "\nEntre com o elemento da matriz:";
 cin>> mat[lin][col];
 }
 for (lin=0; lin<3; lin++)
 cout << mat[lin][lin]<<"\n";
system("pause");
return 0;
}
1 2 3
 1 5 9
1 3 5 7 9
1 2 3 4 5 6 7 8 9
2 4 6 8
 
 
Explicação:
Considerando a entrada 1, 2, 3, 4, 5, 6, 7, 8 e 9 e o trecho do programa abaixo, veja o comentado ao fim de cada trecho.
int lin, col, mat[3][3];
 for (lin=0; lin<3; lin++)
 for(col=0; col<3; col++)
 {
 cout<< "\nEntre com o elemento da matriz:"; 
 cin>> mat[lin][col]; 
 }
O trecho acima montará a matriz com 3 linhas e 3 colunas, a saber :
1 2 3 
4 5 6
7 8 9
Já o trecho a seguir : 
 for (lin=0; lin<3; lin++)
 cout << mat[lin][lin]<<"\n";
imprimirá os elementos da matriz em que a linha e a coluna são iguais. Ou seja, imprimirá os elementos da diagonal principal, que
estão destacados em amarelo.
1 2 3 
4 5 6
7 8 9
Impressos : 1 5 9
 
 
 
 8a Questão
Analise o código abaixo e assinale o item que corresponde aos valores finais do vetor v.
17/10/2018 Conteúdo Interativo
http://estacio.webaula.com.br/Classroom/index.html?id=2253755&classId=979811&topicId=2652531&p0=03c7c0ace395d80182db07ae2c30f034…6/6
int a = 2; 
 int v[] = {2, 3, 1}; 
 v[0] = v[a]; 
 v[1] = v[0] + v[0]; 
 v[2] = v[0] + v[1]; 
 
2, 3, 1
2, 1, 3
1, 3, 2
3, 2, 1
 1, 2, 3
 
 
Explicação:
Comentando linha a linha, a resposta será encontrada.
int a = 2; 
 int v[ ] = {2, 3, 1}; 
 v[0] = v[a]; //v[0] recebe v[2], que é 1
 v[1] = v[0] + v[0]; // v[1] recebe 1 + 1, que dá 2
 v[2] = v[0] + v[1]; //v[2] recebe o valor 1+2, que dá 3