Buscar

Algoritmos - exercícios aula 10

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

Prévia do material em texto

ALGORITMOS 
10a aula Lupa 
 
 
Vídeo 
 
PPT 
 
MP3 
 
 
 
Exercício: CCT0749_EX_A10__V1 
23/10/2018 23:29:45 
(Finalizada) 
Aluno(a): EDOARDO ULYSSES FONTOURA 
KRAUSE JUNIOR 
2018.3 EAD 
Disciplina: CCT0749 - ALGORITMOS 
 
 
 
 1a Questão 
 
 
 
 Os chamados vetores e matrizes podem ser considerados como: 
 
 Comandos de repetição 
 Estruturas de dados homogêneas 
 Estruturas de dados heterogêneas 
 Comandos de seleção 
 Comandos de seleção composta 
 
Explicação: 
 Verdadeira Estruturas de dados homogêneas 
 
 
 2a Questão 
 
 
 
 Análise a seguinte afirmação: 
"Um shopping possui 4 andares, cada andar possui 30 lojas". 
Se você for declarar uma matriz, na linguagem C++, para a afirmação acima, qual das 
opções abaixo você escolheria? 
 
 int shopping[4][30]; 
 int shopping[30][1]; 
 int shopping[1][30]; 
 int shopping[4][4]; 
 int shopping[30][30]; 
 
Explicação: 
 Considerando cada andar como uma linha da matriz e as 30 lojas como as 
30 colunas da matriz, teremos : 
int shopping[4][30]; 
 
 
 
 
 
 
 
 3a Questão 
 
 
 
 Sendo a matriz M bidimensional igual a: 
 1 2 3 4 
5 -5 3 0 
Dimensionadas da seguinte maneira: 
int m[2][4]; 
Determine quais são os seguintes elementos: 
· m[0][3] 
· m[0][0] 
· m[1][1] 
· m[1][2] 
 
 
 -5 - 1 - 5 - 4 
 5 - 1 - 3 - 0 
 4 - 1 - -5 - 3 
 4 - 5 - -5 - 0 
 0 - 1 - 3 - 5 
 
Explicação: 
Considerando a matriz dada : 
1 2 3 4 
5 -5 3 0 
 temos que na 1a. linha (linha 0) temos 4 colunas, a saber : m[0][0] que é 1, 
m[0][1] que é 2, m[0][2] que é 3 e m[0][3] que é 4 
Na 2a. linha (linha 1) temos 4 colunas, a saber : m[1][0] que é 5, m[1][1] que 
é -5, m[1][2] que é 3 e m[1][3] que é 0 
 Logo, respondendo ao pedido temos : 
 m[0][3] é 4 
· m[0][0] é 1 
· m[1][1] é -5 
· m[1][2] é 3 
 
 
 
 
 4a Questão 
 
 
 
 Analise o código em C++ mostrado abaixo e assinale a alternativa que descreve 
corretamente a sua execução: 
#include < iostream > 
using namespace std; 
int main() 
{ 
 int p, num[50]; 
 
 for (p = 0; p <= 49; p++) 
 { 
 cout << "Digite um valor : "; 
 cin >> num[p]; 
 } 
 
 for (p = 0; p <= 49; p++) 
 { 
 if (num[p] % 2 == 0 && num[p] > 30) 
 cout << num[p] << "\t"; 
 } 
 
 system("pause"); 
 return 0; 
} 
 
 
 O código armazenará em um vetor 50 números inteiros e imprimirá 
somente os números ímpares e que sejam maiores que 30. 
 O código armazenará em um vetor 50 números inteiros e imprimirá 
somente os números pares e que sejam menores que 30. 
 O código armazenará em um vetor 50 números inteiros e imprimirá todos 
os 50 números. 
 
O código armazenará em um vetor 50 números inteiros e imprimirá 
somente os números pares e que sejam maiores que 30. 
 O código armazenará em um vetor 50 números inteiros e imprimirá todos 
os números que sejam maiores que 30. 
 
Explicação: 
Analisando o programa temos que : 
O 1o. for lê valores inteiros e os armazena em um vetor com capacidade para 
30 elementos. Depois, no 2o. for, testa cada elemento do vetor e verifica se é 
par e se é maior que 30. Apenas satisfazendo as 2 condições é que o 
elemento de v será impresso. 
Analisando cada opção : 
O código armazenará em um vetor 50 números inteiros e imprimirá todos os 
50 números. é falso. Nâo imprime todos os números 
O código armazenará em um vetor 50 números inteiros e imprimirá todos os 
números que sejam maiores que 30. é falso. Tem que ser par e maior que 30 
para ser impresso. 
 O código armazenará em um vetor 50 números inteiros e imprimirá somente 
os números ímpares e que sejam maiores que 30. é falso. Imprime os pares 
maiores que 30 e não os ímpares. 
O código armazenará em um vetor 50 números inteiros e imprimirá somente 
os números pares e que sejam menores que 30. é falso. Tem que ser par e 
maior que 30 para ser impresso. 
O código armazenará em um vetor 50 números inteiros e imprimirá somente 
os números pares e que sejam maiores que 30. Verdadeira 
 
 
 5a Questão 
 
 
 
 Em um programa, deseja-se armazenar as 3 notas , a média e a maior nota 
de cada um dos 50 alunos de uma turma, em uma matriz NOTA. Entendendo-
se que todos os dados de um mesmo aluno ficarão armazenados em uma 
mesma linha, assinale a alternativa que indica a declaração correta na matriz 
descrita. 
 
 float NOTA [50][5]; 
 int NOTA [50][5]; 
 int NOTAS [5][50]; 
 float NOTAS [5][50]; 
 long int NOTA [50][5]; 
 
Explicação: 
Existem 50 alunos. Os dados de cada aluno devem ser armazenados em 
uma linha e são 5 dados por aluno. Então teremos uma matriz com 50 linhas 
e 5 colunas. Portanto, a opção marcada no gabarito é a certa. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 6a 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[5][8]; 
 int edificio[8][5]; 
 int edificio[40][5]; 
 int edificio[40][1]; 
 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. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 7a Questão 
 
 
 
 Uma professora possui uma turma de 40 alunos e precisa declarar uma matriz 
bidimensional, na linguagem C++, para armazenar as notas de AV1, AV2 e AV3 da 
turma. Considere que ela necessita dos dados organizados na matriz, de modo que 
cada linha deverá representar um aluno. Assinale a alternativa que apresenta a 
declaração desta matriz. 
 
 float notas[40][3]; 
 float notas[40,3]; 
 int notas[40][40]; 
 char notas[40][3]; 
 char notas[3][40]; 
 
 
Explicação: 
 Se cada linha deve representar um aluno e são 40 alunos então a matriz a 
ser declarada terá 40 linhas. Como é preciso armazenar as 3 notas de cada 
aluno então, a matriz possuirá 3 colunas. Se é preciso armazenar notas então 
o tipo de dados deve ser float. 
Analisando as opções. 
Falso. Errado o número de colunas e o tipo de dados. 
int 
notas[40][40]; 
 
Falso. Seriam 40 linhas, 3 colunas e o tipo float. tipo 
char para nota não serve. 
char 
notas[3][40]; 
 
Falso. Não se separa o total de linhas do total de colunas 
com vírgula. 
float 
notas[40,3]; 
 
 Verdadeira 
float 
notas[40][3]; 
 
FAlso. Erro no uso do tipo char. 
char 
notas[40][3]; 
 
 
 
 
 
 
 
 
 8a Questão 
 
 
 
 Sabendo-se que a sintaxe do C e do C++ estabelece que a declaração de 
vetores bidimensionais deve se dar da seguinte forma: 
< tipo do dado > nome_da_matriz [nº de linhas][nº de colunas]; 
Na codificação de um programa, na linguagem C++, é necessário a 
declaração de uma matriz bidimensional para armazenar as notas de 6 
disciplinas de uma turma com 30 alunos. Tomando-se como base que o 
algoritmo considera que os dados estarão organizados na matriz de modo 
que cada linha represente as notas de um único aluno,marque a alternativa 
que apresenta de forma correta a declaração desta matriz, chamada 
notasAlunos. 
 
 c) float notasAlunos[30,6]; 
 d) float notasAlunos[6,30]; 
 b) float notasAlunos[6][30]; 
 e) float notasAlunos[][]; 
 a) float notasAlunos[30][6]; 
 
 
Explicação: 
Como cada linha possui as notas de cada aluno e são 6 disciplinas ( = 6 
notas) então teremos uma matriz com 30 linhas e 6 colunas. como a matriz 
se chama notasAlunos e as notas são valores reais teremos : 
 float notasAlunos[30][6]; 
 
Vendo porque as outras opções não podem ser : 
Falso. São 30 linhas e 6 colunas. A matriz declarada 
neste item coloca 6 linhas e 30 colunas. 
 float 
notasAlunos[6][30]; 
 
Falso. Sintaticamente incorreto. Precisa trabalhar 
com as linhas e colunas dentro de colchetes 
separados. 
 float 
notasAlunos[30,6]; 
 
Falso. Erro nos valores e na sintaxe no uso dos 
colchetes. 
 float 
notasAlunos[6,30]; 
 
Falso. Nâo colocou o total de linhas e de colunas. float notasAlunos[][];

Outros materiais