Buscar

Exercícios - INTRODUÇÃO A PROGRAMAÇÃO ESTRUTURADA EM C

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 87 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 87 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 9, do total de 87 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

Aula 1
	
	 1a Questão
	
	
	
	
	Sobre fluxograma, assina a opção correta.
		
	
	É uma representação gráfica de algoritmos que dá margem à dupla interpretação ou ambiguidades.
	 
	É usado na escrita de pseudolinguagens, como o Portugol.
	
	É uma forma de se representar o uso de hardware no programa.
	
	É uma forma de se escrever programas em qualquer linguagem de programação.
	 
	É uma forma de se representar graficamente algoritmos e que não dá margem à ambiguidade .
	Respondido em 15/04/2020 08:43:03
	
Explicação:
É uma forma de se representar graficamente algoritmos e que não dá margem à ambiguidades, como ensinado na aula 1 online.
	
	
	 
	
	 2a Questão
	
	
	
	
	Assinale a opção que, corretamente, mostra exemplos de linguagens de programação.
		
	
	C++, Java, portugol
	
	fluxograma, português estruturado, C
	 
	C++, Java, C#
	
	C++, C# e fluxograma
	
	português estruturado, C++, Java
	Respondido em 15/04/2020 08:47:53
	
Explicação:
Exemplos dados na aula 1.  
	
	
	 
	
	 3a Questão
	
	
	
	
	Fluxograma é um "diagrama esquemático que apresenta uma sequência de operações, tal como para um programa de computador ou processo industrial" (in Dicionário Priberam da Língua Portuguesa [em linha], 2008-2013, http://www.priberam.pt/dlpo/fluxograma [consultado em 13-08-2014]. Abaixo temos um fluxograma de notas (N1 e N2) obtidas pelo aluno João. Selecione a opção que apresenta os itens de entrada do fluxograma.
		
	
	Fim
	
	Reprovado
	
	Aprovado
	
	Média
	 
	N1 e N2
	Respondido em 15/04/2020 08:48:59
	
Explicação:
Logo após o início do algoritmo aparecem N1 e N2 no símbolo que representa entrada de dados.
	
	
	 
	
	 4a Questão
	
	
	
	
	Assinale a opção correta.
		
	
	Um programa é um algoritmo codificado em uma pseudolinguagem.
	 
	Um programa é um algoritmo codificado em uma linguagem de programação.
	
	Programa e fluxograma são sinônimos.
	
	Um programa é um algoritmo codificado em linguagem natural.
	
	Para se escrever um programa não precisa se conhecer lógica de programação, pois o fundamental é a linguagem de programação.
	Respondido em 15/04/2020 08:50:05
	
Explicação:
	Um programa é um algoritmo codificado em uma linguagem de programação.
Verdadeira
 
	 
	Falsa.  Programa é código escrito em alguma linguagem de programação.  Fluxograma é uma representação gráfica de algoritmo.
	Programa e fluxograma são sinônimos.
	 
	Falso. Programa é um algoritmo codificado ou  escrito em alguma linguagem de programação. 
	Um programa é um algoritmo codificado em linguagem natural.
	 
	Falso. Programa é um algoritmo codificado ou  escrito em alguma linguagem de programação. 
	Um programa é um algoritmo codificado em uma pseudolinguagem.
	 
	Falso.  É fundamental o uso da lógica de  programação além de se conhecer a linguagem de programação.
	Para se escrever um programa não precisa se conhecer lógica de programação, pois o fundamental é a linguagem de programação.
	
	
	 
	
	 5a Questão
	
	
	
	
	Analise as afirmativas a seguir em relação a representação de algoritmos:
I - O fluxograma utiliza diagramas para representar e facilitar o entendimento de um algoritmo;
II - O pseudocódigo é um recurso muito utilizado para desenvolver programas complexos e representar graficamente o algoritmo;
III - A linguagem de programação é a maneira utilizada de formalizar a solução de um problema do mundo real a partir dos algoritmos.
Podemos afirmar que:
		
	
	Apenas as alternativas I e II são CORRETAS
	 
	Apenas as alternativas I e III são CORRETAS
	
	Apenas as alternativas II e III são INCORRETAS
	
	Todas as alternativas são CORRETAS
	
	Apenas a alternativa I é CORRETA
	Respondido em 15/04/2020 08:54:08
	
Explicação:
Analisando cada afirmativa :
I - O fluxograma utiliza diagramas para representar e facilitar o entendimento de um algoritmo; 
Verdadeira.  O fluxograma usa símbolos para E/S, atribuição e outros comandos.
II - O pseudocódigo é um recurso muito utilizado para desenvolver programas complexos e representar graficamente o algoritmo; 
Falsa.  Pseudocódigo não tem nada de representação gráfica.
III - A linguagem de programação é a maneira utilizada de formalizar a solução de um problema do mundo real a partir dos algoritmos. 
VErdadeira.  Através de alguma linguagem de programação, escrevemos programas.
	
	
	 
	
	 6a Questão
	
	
	
	
	Sobre Português Estruturado, assinale a opção correta :
		
	
	É igual ao fluxograma
	 
	O português estruturado é uma simplificação da nossa linguagem natural, na qual usamos frases simples e estruturas que possuem um significado muito bem definido.
	
	É igual a uma carta para um encarregado
	
	É igual à linguagem natural ou narrativa
	
	É igual à linguagem de programação na língua portuguesa
	Respondido em 15/04/2020 08:57:55
	
Explicação:
Definição direta e objetiva dada na aula 1. 
	
	
	 
	
	 7a Questão
	
	
	
	
	Algoritmo pode ser definido como a descrição dos passos para a execução de uma tarefa. Existem algumas formas distintas de representação de algoritmos, onde as principais são: Linguagem Natural, Linguagem Gráfica e Pseudocódigos. Se usarmos N para representar linguagem Natural, G para representar linguagem Gráfica e P para representar pseudocódigos, pode-se relacionar estas formas de representação de algoritmos com as seguintes afirmações:
( ) Sua simbologia é amplamente conhecida, por isto sua aplicação não se restringe apenas a algoritmos computacionais.
( )  Sua simbologia e sintaxe aproxima-se muito a simbologia e a sintaxe da maioria das linguagens de programação.
( ) A grande ambiguidade existente nos significados de seus termos é uma restrição a representação aos algoritmos computacionais.
Marque a alternativa que representa a o relacionamento existente entre as afirmações e as formas de representação de algoritmos.
		
	 
	G, P, N
	
	P, N, G
	
	N, G, P
	 
	N, P, G
	
	G, N, P
	Respondido em 15/04/2020 09:00:30
	
Explicação:
Analisando as afirmativas :
( ) Sua simbologia é amplamente conhecida, por isto sua aplicação não se restringe apenas a algoritmos computacionais.  <<< Fluxograma, por exemplo, que é uma linguagem gráfica >>>
( )  Sua simbologia e sintaxe aproxima-se muito a simbologia e a sintaxe da maioria das linguagens de programação.   <<< Pseudocódigo >>>
( ) A grande ambiguidade existente nos significados de seus termos é uma restrição a representação aos algoritmos computacionais.  <<< Linguagem natural >>>
	
	
	 
	
	 8a Questão
	
	
	
	
	Observe o fluxograma a seguir e assinale a alternativa correta sobre o mesmo:
 
 
		
	
	Poderiam ser retirados do fluxograma os símbolos de terminação que delimitam, respectivamente, o início e o fim da solução.
	
	O fluxograma está incompleto e errado, pois não exibe mensagens antes que a leitura de dados seja realizada.
	 
	O fluxograma é responsável por calcular a idade de um indivíduo a partir de seu ano de nascimento e do ano em que estamos.
	
	No cálculo da idade, inverteram-se as posições dos anos e, por isso, a idade resultante será sempre negativa.
	
	A simbologia empregada no recebimento de dados está equivocada e foi trocada por aquela que representa exibição de informações.
	Respondido em 15/04/2020 09:04:41
	
Aula 2
	 1a Questão
	
	
	
	Assinale a opção que apresenta somente nomes válidos para variáveis em C++.
		
	
	Conta, Total1, DIA-MÊS-ANO
	 
	CONTA, TOTAL1, data
	
	CONTA, TOTAL1, 1DATA
	
	Conta, Total, 5data
	
	1conta, 2total, 3data
	Respondido em 15/04/2020 11:24:20
	
Explicação:
	Falsa.  Não se pode começar nome de variável com dígito.
	CONTA, TOTAL1, 1DATA
	 
	Falsa. Não se pode começar nome de variável com dígito.
	Conta, Total, 5data
	 
	Verdadeiro
	CONTA, TOTAL1, data
	 
	Falsa. Não se pode pôr acento ou usar hífen em nome de variável.
	Conta, Total1, DIA-MÊS-ANO
	 
	Falsa. Não se pode começar nome de variável com dígito.
	1conta, 2total, 3data2a Questão
	
	
	
	
	Assinale a opção correta :
		
	
	Quando declaramos variáveis do mesmo tipo usamos o ponto e vírgula para separá-las.
	
	Para declarar uma variável podemos usar o tipo da variável ou não.
	 
	Se precisamos de armazenar 1 caracter usamos o tipo char na declaração da variável
	
	Não se pode usar o underscore ou sublinhado em nome de variável, mas apenas letras e dígitos.
	
	O tipo int serve para variáveis inteiras ou reais, de pouca precisão
	Respondido em 15/04/2020 11:26:14
	
Explicação:
De acordo com as descrições e características apresentadas na aula sobre variáveis.
	
	
	 
	
	 3a Questão
	
	
	
	
	Considerando a linguagem C++, assinale a opção correta :
		
	
	Se declararmos uma variável inteira nota, podemos escrever NOTA, Nota, ou qualquer outra variação, pois é a mesma coisa.
	 
	A linguagem C++ diferencia maiúsculas de minúsculas
	
	Nem toda variável precisa ser declarada.
	
	Alguns programas em C++ começam com float main e outros com int main
	
	Se quisermos declarar uma variável que possa armazenar valores reais, com casas decimais, devemos usar o tipo real na declaração da variável.
	Respondido em 15/04/2020 11:27:10
	
Explicação:
BAsta seguir as descrições  e características da linguagem C++  na aula sobre variáveis
	
	
	 
	
	 4a Questão
	
	
	
	
	Uma variável pode ser entendida como sendo:
		
	 
	Um endereço na memória principal.
	
	Um dispositivo de saída de dados.
	 
	Um dispositivo de entrada de dados.
	
	Um elemento da unidade lógica de controle.
	
	Um dispositivo de memória auxiliar.
	Respondido em 15/04/2020 11:27:34
	
Explicação:
Analisando cada item :
	Falso. Variável ocupa espaço em memória e tem um endereço.
Um dispositivo de entrada de dados é o teclado.
	Um dispositivo de entrada de dados.
	 
 
	Falso. Variável ocupa espaço em memória e tem um endereço.
	Um dispositivo de memória auxiliar.
	 
	Verdadeiro.
 
	Um endereço na memória principal.
	 
	Falso. Variável ocupa espaço em memória e tem um endereço.
Um dispositivo de saída de dados é o monitor.
 
	Um dispositivo de saída de dados.
	 
	Falso. Variável ocupa espaço em memória e tem um endereço.
	Um elemento da unidade lógica de controle.
	
	
	 
	
	 5a Questão
	
	
	
	
	O linha de programa que representa a ação "processamento" em um algoritmo em pseudolinguagem é:
		
	 
	valor <- valor + 1;
	
	programa
	
	se
	 
	leia
	
	enquanto
	Respondido em 15/04/2020 11:28:43
	
Explicação:
Conteúdo administrado no livro, onde é mostrado a equivalência entre   algoritmo e programa em C++.
As demais opções não apresentam nenhuma linha de processamento.
se indica o início de uma estrutura condicional, enquanto, uma estrutura de repetição e programa não diz nada.
Leia é o comando de leitura, para entrada de dados e não processamento.
	
	
	 
	
	 6a Questão
	
	
	
	
	Assinale a opção correta.  O que quer dizer main ?
		
	
	programa
	 
	estruturado, de português estruturado
	 
	principal
	
	portugol
	
	algoritmo
	Respondido em 15/04/2020 11:31:03
	
Explicação:
Basta saber a tradução.
	
	
	 
	
	 7a Questão
	
	
	
	
	Assinale a opção correta:
		
	
	Para saída de dados usamos cin com o operador <<
	
	Para terminar um programa podemos escrever :   return;
	
	Na linguagem C++ temos que não há distinção entre maiúsculas e minúsculas.
	
	Sem endentação o programa não compila
	 
	Todas as instruções de um programa em C++ devem estar entre chaves
	Respondido em 15/04/2020 11:34:33
	
Explicação:
Basta considerar o que é descrito da linguagem na aula 2
	
	
	 
	
	 8a Questão
	
	
	
	
	Um menino resolveu abrir o cofrinho de economias que contém o que guardou durante um ano. São moedas de R$ 0,25, R$ 0,50 e R$ 1,00. Imaginando que você precisa escrever um programa em C++ que, a partir da quantidade de cada moeda, mostre a quantia total economizada, como seria a declaração de variáveis necessárias a este programa?
		
	
	int qtde25, qtde50, qtde1, quantiaTotal;
	 
	float qtde25, qtde50, qtde1, quantiaTotal;
	
	char qtde25, qtde50, qtde1, quantiaTotal;
	
	bool qtde25, qtde50, qtde1, quantiaTotal;
	
	string qtde25, qtde50, qtde1, quantiaTotal;
	Respondido em 15/04/2020 11:38:25
	
Aula 3
	
	 1a Questão
	
	
	
	
	Indique qual alternativa calcula corretamente a média aritmética das notas AV1 e AV2 de uma determinada disciplina
		
	 
	MEDIA = (AV1 + AV2) / 2;
	
	MEDIA = AV1 + AV2 / 2;
	
	MEDIA = (AV1 * AV2) / 2;
	
	MEDIA = (AV1 - AV2) / 2;
	
	MEDIA = (AV1 ** AV2) / 2;
	Respondido em 23/04/2020 13:09:36
	
Explicação:
MEDIA = (AV1 + AV2) / 2; - OK
	
	
	 
	
	 2a Questão
	
	
	
	
	Qual das alternativas apresenta a expressão que seja capaz de avaliar se uma variável do tipo inteiro, denominada NUMERO ,é ímpar e negativa.
		
	
	(NUMERO>0) !! (NUMERO%2==0)
	
	(NUMERO>0) && (NUMERO%2==0)
	
	(NUMERO<0) || (NUMERO%2!=0)
	
	(NUMERO>0) || (NUMERO%2==0)
	 
	(NUMERO<0) && (NUMERO%2!=0)
	Respondido em 23/04/2020 13:10:49
	
Explicação:
(NUMERO<0) && (NUMERO%2!=0)
pra ser negativo , tem que se menor que zero NUMERO<0
pra ser impar, o resto da divisão pode 2 não pode ser zero -->  != (diferente) --> NUMERO%2!=0
 
	
	
	 
	
	 3a Questão
	
	
	
	
	Utilizando os operadores adequados, como pode ser reescrita a expressão abaixo?
 A ou B e C e não D
		
	
	A !! B && C && ||D
	
	A && B || C || !D
	 
	A || B && C && !D
	
	A && B && C && !D
	
	A || B ! C ! &&D
	Respondido em 23/04/2020 13:14:25
	
Explicação:
A ||  B && C && !D
|| = OU
&& = E
! = não
	
	
	 
	
	 4a Questão
	
	
	
	
	Analise o trecho de código abaixo e depois marque a opção correta para o que se pede:
  int x, y,a , b;
  float z;
  a = 14;
  b = 3;
  x = a / b;
  y = a % b;
  z = y / x;
 Qual seria o valor de x?
		
	
	5
	 
	4
	
	4.66666
	 
	14
	
	3
	Respondido em 23/04/2020 13:20:46
	
Explicação:
Fazendo um teste de mesa e sabendo que a divisão com  / entre inteiros fornece o quociente da divisão e o operador % fornece o resto da divisão inteira, chegamos no valor x igual a 4.
	
	
	 
	
	 5a Questão
	
	
	
	
	Assinale a alternativa que apresenta APENAS os exemplos de operadores relacionais.
		
	
	+, - e *
	
	=, > e ||
	
	&&, || e ~
	 
	<, > e >=
	
	&&, >= e ||
	Respondido em 23/04/2020 13:22:59
	
Explicação:
	
	<, > e >=
	 
	Falso. Nenhum é relacional
	&&, || e ~
	 
	Falso. O único relacional é o >
	=, > e ||
	 
	Falso. O único relacional é o >= 
	&&, >= e ||
	 
	Falso. Nenhum relacional
	+, - e *
	
	
	 
	
	 6a Questão
	
	
	
	
	Assinale a opção correta.
		
	 
	Os operadores matemáticos são : +, - , *, / e %.
	
	os operadores matemáticos não tem precedência de uso
	
	As expressões lógicas retornam valores inteiros
	
	São operadores relacionais : = , > , <
	
	São operadores lógicos : &&, ||, !=
	Respondido em 23/04/2020 13:24:10
	
Explicação:
Os operadores matemáticos são : +, - , *, / e %. = VERDADE
São operadores lógicos : &&, ||, != -->  != não é operador lógico e sim relacional (diferente) --> FALSO
São operadores relacionais : = , > , < --->  = não é operador relacional e sim comando de atribuição de valor a variável.--> FALSO
As expressões lógicas retornam valores inteiros --> FALSO, retornam valores lógicos (V ou F)
os operadores matemáticos não tem precedência de uso --: FALSO, há precedencia sim, o * tem preferencia sobre a soma e subtrção
 
 
	
	
	 
	
	 7a Questão
	
	
	
	
	Assinale a alternativa que apresenta APENAS os exemplos de operadores lógicos.
		
	
	!, > e >=
	
	+, - e *
	
	&&, >= e <=
	
	=, > e ?
	 
	&&, || e !
	Respondido em 23/04/2020 13:25:10
	
Explicação:
	 
	Falso. O único operador lógico é o !
	!, > e >=
	 
	 Verdadeiro.
	&&, || e !
	 
	Falso. Nâo há operador lógico neste item.
	=, > e ?
	 
		 
	Falso. O único operador lógico é o &&
	
	&&, >= e <=
	 
	Falso. Nâo há operador lógico neste item.
	+, -e *
	
	
	
	
	 
	
	 8a Questão
	
	
	
	
	Sendo X = 1, Y = 2 e Z = 5, assinale a alternativa correta, dentre as relacionadas abaixo, que corresponde aos questionamentos realizados em relação à expressão: X * X + Y > Z.
Questionamentos:
- Esta expressão é VERDADEIRA ou FALSA?
- O valor do termo X * X + Y é igual a qual valor ?
		
	
	A expressão é FALSA, e o valor de X * X + Y = 6.
	 
	A expressão é FALSA, e o valor de X * X + Y = 3.
	
	A expressão é FALSA, e o valor de X * X + Y = 4.
	
	A expressão é VERDADEIRA, e o valor de X * X + Y = 5.
	
	A expressão é VERDADEIRA, e o valor de X * X + Y = 3.
	Respondido em 23/04/2020 13:26:46
	
Explicação:
Questionamentos:
- Esta expressão é VERDADEIRA ou FALSA? A expressão é Falsa.
- O valor do termo X * X + Y é igual a qual valor ? O resultado da expressão é 3
Resolvendo a expressão :  X * X + Y > Z
                                           1 * 1 + 2 dá  1 + 2 que é 3
                                           3 > Z, sendo que Z vale 5 ? FAlsa.
Aula 4
	
	 1a Questão
	
	
	
	
	Assinale a opção correta :
		
	
	Para entrada de dados usamos cin com <<  e para saída de dados usamos cout com >>
	
	Para entrada de dados usamos cout  e para saída de dados usamos cin
	
	Para entrada de dados usamos cout com <<  e para saída de dados usamos cin com >>
	
	Para entrada de dados usamos read e para saída de dados usamos write
	 
	Para entrada de dados usamos cin com >> e para saída de dados usamos cout com <<
	Respondido em 29/04/2020 16:11:24
	
Explicação:
Basta seguir as descrições na aula 2.
	
	
	 
	
	 2a Questão
	
	
	
	
	Observe o algoritmo a seguir:
1 programa
2 {
3  inclua biblioteca Matematica --> mat
4  funcao inicio()
5  {
6      real qtdeDin, valComb, qtdeLitros
7      escreva("Quanto custa o litro do combustível? R$ ")
8      leia(valComb)
9      escreva("Quantos reais você tem? R$ ")
10     leia(qtdeDin)
11     qtdeLitros=qtdeDin/valComb
12     escreva("Com R$ ", qtdeDin, " você consegue abastecer ", mat.arredondar(qtdeLitros,2)," litros de combustível.")
13     }
14 }
Sabendo que o valor do litro do combustível é R$ 3.90 e que você dispõe de R$ 200.00 para abastecer, qual mensagem seria exibida pelo computador na linha 12?
		
	
	"Com R$ qtdeDin você consegue abastecer mat.arredondar(qtdeLitros,2) litros de combustível."
	 
	"Com R$ 200.00 você consegue abastecer 51.28 litros de combustível."
	
	"Você consegue abastecer 51.28 litros de combustível com R$ 200.00."
	
	"Com R$ 200.00 você consegue abastecer 51.287645 litros de combustível."
	
	"Você consegue abastecer 51.28 litros de combustível."
	Respondido em 29/04/2020 16:12:29
	
	
	 
	
	 3a Questão
	
	
	
	
	Utilizando as regras do Portugol Studio, imagine que você precisa escrever um algoritmo que receba o ano atual e o ano de nascimento de um usuário, calcule e exiba a sua idade através da mensagem "Você tem ou fará XX anos", onde XX é a idade calculada. Qual das alternativas a seguir mostra a instrução correta a ser utilizada na exibição da idade?
		
	
	leia("Você tem ou fará ", idade, " anos")
	
	leia("Você tem ou fará " / idade/ " anos")
	
	escreva("Você tem ou fará " /idade/ " anos")
	
	escreva("Você tem ou fará " * idade * " anos")
	 
	escreva("Você tem ou fará ", idade, " anos")
	Respondido em 29/04/2020 16:14:14
	
	
	 
	
	 4a Questão
	
	
	
	
	Marque a opção correta para a declaração das variáveis conforme o trecho de código abaixo, que calcula a média de 3 notas de 1 aluno:
   printf (" nota 1 = ");
   scanf("%f", nota1);
   printf (" nota 2 = ");
   scanf("%f", nota2);
   printf (" nota 3 = ");
   scanf("%f", nota3);
   media=(nota1+nota2+nota3)/3;
   printf ("media= %f",media);
   
		
	
	float nota1..nota3, media;
	
	int nota1, nota2, nota3, media;
	
	real nota1, nota2, nota3;
	
	nota1, nota2, nota3 : float
	 
	float nota1, nota2, nota3, media;
	Respondido em 29/04/2020 16:15:18
	
Explicação:
as 4 variáveis precisam ser float, para conterem valores com casas decimais
	
	
	 
	
	 5a Questão
	
	
	
	
	No C++, para que os acentos sejam exibidos corretamente durante a execução de um programa, é preciso que sejam utilizadas a biblioteca _______________ e a função _______________.
		
	
	iostream - ptb
	
	math - math.round
	
	locale - ptb
	 
	iostream - setlocale
	 
	locale - setlocale
	Respondido em 29/04/2020 16:18:26
	
	
	 
	
	 6a Questão
	
	
	
	
	C++ é uma linguagem de programação compilada. Leia as assertivas a seguir e assinale Verdadeiro ou Falso conforme o que é dito sobre as funções do compilador:
(  ) Verificar erros de sintaxe no programa;
(  ) Produzir um outro programa em linguagem de máquina;
(  ) Executar o programa sem necessidade de conversão alguma.
		
	
	V - F - F
	
	F - F - F
	 
	V - V - F
	
	V - V - V
	
	F - V - F
	Respondido em 29/04/2020 16:20:53
	
	
	 
	
	 7a Questão
	
	
	
	
	Imagine que você viajou para os Estados Unidos e está muito confuso com a forma como os americanos medem a temperatura, que é em Fahrenheit. Para ficar com menos dúvidas, você decide criar um algoritmo que, dada uma temperatura em Fahrenheit, exiba seu equivalente em graus Celsius. Com base na sintaxe do Portugol Studio, qual das alternativas a seguir apresenta o trecho da solução a ser escrito no lugar das interrogações a seguir?
programa {
  funcao inicio( ) {
    ????????
  }
}
		
	
	escreva("Temperatura em Fahrenheit: ")
leia(tempF)
tempC=(tempF-32)/1.8
escreva("Temperatura em graus Celsius: ", tempC)
	
	real tempF, tempC
escreva("Temperatura em Fahrenheit: ")
leia(tempF)
escreva("Temperatura em graus Celsius: ", tempC)
	 
	real tempF, tempC
escreva("Temperatura em Fahrenheit: ")
leia(tempF)
tempC=(tempF-32)/1.8
escreva("Temperatura em graus Celsius: ", tempC)
	
	real tempF, tempC
escreva("Temperatura em Fahrenheit: ")
leia(tempF)
tempC=(tempF-32)/1.8
	
	real tempF, tempC
escreva("Temperatura em Fahrenheit: ")
tempC=(tempF-32)/1.8
escreva("Temperatura em graus Celsius: ", tempC)
	Respondido em 29/04/2020 16:24:20
	
	
	 
	
	 8a Questão
	
	
	
	
	Marque a opção correta quanto ao uso dos comandos de entrada e saída em C++
		
	 
	cout << "lendo a idade"; cin >> idade;
	
	cout < lendo idade; cin > idade
	
	System.out.println("lendo idade"); System.out.println("lendo idade");
	
	cout "lendo a idade"; cin idade;
	 
	exiba "lendo a idade"; lendo idade;
	Respondido em 29/04/2020 16:28:15
	
Explicação:
	Falso. Erro no cout e no cin. Os operadores são >> e <<. E ainda ?: variável não tem espaço em branco
	cout < lendo idade; cin > idade
	 
	 VErdade
	cout << "lendo a idade"; cin >> idade;
	 
	Falso.  Faltam os operadores >> e <<
	cout "lendo a idade"; cin idade;
	 
	Falso. Em C++ não é exiba e lendo.
	exiba "lendo a idade"; lendo idade;
	 
	Falso. Não é Java. Em C++ usam-se cout para saída de dados e cin para entrada de dados
	System.out.println("lendo idade"); System.out.println("lendo idade");
Aula 5
	
	 1a Questão
	
	
	
	
	Examine as afirmativas a seguir e marque a alternativa correta.
I- A estrutura de decisão pode alterar ou desviar o fluxo natural de execução de um algoritmo.
II- O uso de uma estrutura de decisão composta pode ser mais eficiente que o uso de duas estruturas de decisão simples, pois reduz o número de testes.
III- Muitas vezes é possível combinar a condição de duas estruturas de decisão simples em apenas uma utilizando operadores lógicos.
		
	 
	Todas as alternativas estão corretas.
	
	Todas as alternativas estão erradas.
	
	Apenas a alternativa i está correta.
	
	Apenas a alternativa ii está correta.
	
	Apenas a alternativa iii está correta.
	Respondido em 06/05/2020 14:39:06
	
Explicação: As estruturas de decisão realmente alteram o fluxo de um programa, uma estrutura composta é mais eficiente que duas simples, já que há menos testes e podemos usar operadores lógicos para combinar condições e reduzir o número de estruturas de decisãosimples. Portanto todas as afirmativas estão corretas.
	
	
	 
	
	 2a Questão
	
	
	
	
	Analise o trecho abaixo que um aluno desenvolveu na linguagem C++ e escolha a opção onde estão os valores que aprecem na tela.
int x = 235, y = 138, z = 177, m;
m = z;
if( x < m) m = x;
if( y < m) m = y;
cout << m << " " << x << " " << y ;
		
	
	138 138 235
	
	177 138 235
	
	235 235 138
	
	177 235 138
	 
	138 235 138
	Respondido em 06/05/2020 14:40:56
	
Explicação: A variável m ficará com o menor valor
	
	
	 
	
	 3a Questão
	
	
	
	
	O programa abaixo recebeu o valor 2 como entrada. Analise o programa abaixo e assinale a o valor que será impresso.
#include
using namespace std;
int main()
{
  int a, b;
  cout<< "\n Digite um valor: ";
  cin>> a;
  if (a <= 2)
      b = a + 2 * 30 / 10;
  else
      b = a - 2 * 30 /10;
  cout<< b;
  system("pause");
}
		
	
	-4
	
	2
	
	0
	 
	8
	 
	12
	Respondido em 06/05/2020 14:42:22
	
	
	 
	
	 4a Questão
	
	
	
	
	Considere o trecho de programa em C++. O que é impresso na tela ?
int x = 10, y = 3, z, k;
y = x + y - 1;
z = x/y;
k = y % x;
if (k == 0)
cout << "x = " << x << " y = " << y << " z = " << z << " k = " << k;
else
cout << x + 1 << " " << y - 1 << " " << z + 2 << " " << k - 2;
		
	
	x= 11 y = 11 z = 2 k = 0
	 
	11 11 2 0
	
	10 12 2 0
	 
	x = 10 y = 12 z = 0.833 k = 0
	
	x = 10 y = 12 z = 0 k = 0
	Respondido em 06/05/2020 15:05:48
	
Explicação:
É preciso fazer um teste de mesa ou chinês e encontrar a resposta correta, como indicado. Para isso, o conteúdo sobre comando condicional, atualmente, na aula 5,  é suficiente, junto com declaração de variáveis de aula anterior.
 
x recebe 10 e depois
y recebe 3 e depois y recebe 10+3-1, que dá 12
z recebe 10/12, que dá 0
k recebe 2
TEste do if é falso. Então, entra-se no else e é impresso :    11   11  2  0 
	
	
	 
	
	 5a Questão
	
	
	
	
	Assinale a opção correta. O que será impresso na tela, respectivamente, após duas execuções seguidas,
sendo que na 1ª. execução o valor de entrada é 7 e na 2ª. execução o valor de entrada é 8.    Para isso, considere
o seguinte trecho em C++.
  int num;
  cout << "Digite um numero: ";
  cin >> num;
  if (num != 2 || num != 4 || num != 6)
  {
      num = num + 2;
      cout << num << " ";
  }
  if (num != 8)
  {
      num--;
      cout << num << " ";
  }
  else
     cout << num * 5 ;
 
		
	 
	9   8    10   9
 
	
	8  10   40
 
	
	9  40
 
	
	9   6   10    9
 
	
	9   8   10  40
 
	Respondido em 06/05/2020 15:26:02
	
Explicação:
Analisando o trecho de programa em C++ ...
1a. execução : num recebe 7.  Daí, testamos o 1o. if.   Note que usamos o || lógico. A condição é verdadeira e entramos no bloco do 1o. if.  Então, num recebe 9 e é impresso o valor 9 na tela.
Seguimos para o próximo if e testamos sua condição.  É verdade que 9 != 8 ? Sim. Entramos no bloco do 2o. if e então decrementamos 9 para 8 e imprimimos o valor 8.
Concluindo esta 1a. execução :  Foram impressos 9 8
2a. execução : num recebe  8.  Daí, testamos o 1o. if.   Note que usamos o || lógico. A condição é verdadeira e entramos no bloco do 1o. if.  Então, num recebe 10 e é impresso o valor 10.
Seguimos para o próximo if e testamos sua condição.  É verdade que 10 != 8 ? Sim. Entramos no bloco do 2o. if e então decrementamos 10 para 9, imprimindo o valor 9.
Concluindo esta 2a. execução :  Foram impressos 10 9 
	
	
	 
	
	 6a Questão
	
	
	
	
	Tendo em mente os conceitos dos comandos básicos de decisão do C++, analise o trecho de programa abaixo e assinale a alternativa que corresponda a saída na tela:
		
	
	5
	
	11
	
	2
	
	-1
	 
	22
	Respondido em 06/05/2020 15:42:18
	
	
	 
	
	 7a Questão
	
	
	
	
	Analise o trecho abaixo que um aluno desenvolveu na linguagem C++ e escolha a opção onde estão os valores que aprecem na tela.
int x = 13, y = 4, z;
if( x > y ) { z = x; x = y; y = z; }
cout << z << " " << x << " " << y ;
		
	
	13 13 4
	 
	13 4 13
	
	0 13 4
	
	4 13 13
	
	0 4 13
	Respondido em 06/05/2020 15:45:25
	
Explicação:
Fazendo um teste de mesa  através de comentários no trecho dado :
int x = 13, y = 4, z;           // x recebe 13 e y recebe 4     
if( x > y )           //testa se 13 é maior que 4 ... É verdade. Então, entra no bloco do if
{
   z = x;         // z recebe x, que vale 13. Ou seja, z recebe 13
   x = y;       // x recebe y, que é 4.   Ou seja, x recebe 4
  y = z;       // y recebe z, que vale 13. Ou seja, y recebe 13
}
cout << z << " " << x << " " << y ;  //SErá impresso  :    13  4  13
 
 
	
	
	 
	
	 8a Questão
	
	
	
	
	Analise o código abaixo e marque as saídas corretas:
#include   < iostream >
using namespace std;
int main () {
int x, i;
x = 1;
cout << x;
i = 6;
x = x + i;
cout <<  x;
if ( x <= 7) {
   cout  <<  x;
   x = x + 10;
} else {
   cout  <<  x;
}
retun 0;
}
		
	
	1, 6 e 7
	 
	1, 7, 17
	 
	1, 7 e 7
	
	0, 6 e 7
	
	1, 6 e 16
	Respondido em 06/05/2020 15:48:38
	
Explicação:
int x, i;
x = 1;
cout << x;
i = 6;
x = x + i;
cout <<  x;
if ( x <= 7) {
   cout  <<  x;
   x = x + 10;
} else {
   cout  <<  x;
}
Fazendo um teste de mesa, temos :
x = 1 e depois é impresso o valor 1
i recebe 6 e então, x recebe 1+6, que dá 7. Então, 7 é impresso.
Chegamos na condição do if e testamos se 7 <= 7.  É verdade ? Sim. Então, 7 é impresso e depois, x recebe 7 + 10, que dá 17.
Ou seja, foi impresso  1   7   7  
Aula 6
	
	 1a Questão
	
	
	
	
	Considere o trecho de programa em C++ abaixo.  O que é impresso na tela quando o número de entrada é 7 ? Assinale a opção correta.
  int num;
  cout << "Digite um numero: ";
  cin >> num;
  if (num % 2 == 0)
    cout << num << "é divisível por 2";
  else
    if (num % 3 == 0 && num % 5 == 0)
       cout << num << " é divisível por 3 e por 5";
    else
        cout << num << " ### " ;
		
	 
	7 ###
	
	 
7 é divisível por 3 e por 5.
	
	 
Nada aparece, pois o trecho de programa possui erro.
	
	 
Apenas 7
	
	 
7 não é divisível por 2.
	Respondido em 14/05/2020 15:07:33
	
Explicação:
Analisando o trecho em C++ e considerando a entrada 7 temos :
num recebeu 7 na entrada.
1o. teste : 7 % 2 é zero ? Falso. Então, entramos no else do 1o. if  e testamos a condição do 2o. if
2o. teste : 7 % 3 é zero ? Falso. Nem adianta testar a outra condição deste if, pois existe o &&. DAí, entramos no else do 2o. if, imprimindo na tela 
                                     7###
Logo, a resposta correta é   7###
 
	
	
	 
	
	 2a Questão
	
	
	
	
	Considere o trecho de programa em C++ abaixo.  O que é impresso na tela quando o número de entrada é 9 ? Assinale a opção correta.
  int x;
  cout << "Digite um numero: ";
  cin >> x;
  if (x % 2 == 0)
    cout << x << "é divisível por 2";
  else
    if (x % 3 == 0 && x % 5 == 0)
       cout << x << " é divisível por 3 e por 5";
    else
        cout << x <<  " ### " ;
 
		
	
	Apenas 9
	
	9 não é divisível por 2.
	
	9 é divisível por 3 e por 5.
	 
	9 ###
	
	Nada aparece, pois o trecho de programa possui erro.
	Respondido em 14/05/2020 15:08:02
	
Explicação:
Como a entrada foi 9 então o teste do 1o. if falha e entramos no 1o. else.
Dentro do 1o. else temos uma conjunção, ou seja, um E.  Como o 1o. teste do E é verdadeiro, mas o 2o. teste é falso, não entramos no bloco do 2o. if.  Entramos então,  no último else .   Por isso, é impresso o valor de x e ###.  Como x vale 9, a saída é 9###
	
	
	 
	
	 3a Questão
	
	
	
	
	Uma lanchonete está disponibilizando para seus clientes um terminal através do qual poderão fazer seu pedido. Para que isso aconteça, o terminal deve exibir o menu de itens disponíveis conforme se vê a seguir:
*** Cardápio ***
100 - Hambúrguer - R$5,50
101 - Cachorro-quente - R$4,50
102 - Milkshake - R$7,00
103 - Pizza brotinho - R$8,00
104 - Cheeseburguer - R$8,50
Informe o código do seu pedido:
-------------------------------------------------------------------
Uma vez que o cliente informe o código do item desejado,o terminal deverá perguntar a quantidade de itens que ele deseja pedir. Ao final, o usuário deverá informar o pedido do cliente e o valor a pagar.
Considerando a sintaxe do Portugol Studio, um algoritmo que possa resolver o problema da lanchonete, utilizando a estrutura ESCOLHA, no trecho referente à compra de um milkshake seria:
		
	
	se 102:
  item="Milkshake"
  valor=qtde*7
pare
	
	escolha 102:
  item="Milkshake"
  valor=qtde*7
pare
	 
	caso 102:
  item="Milkshake"
  valor=qtde*7
pare
	
	enquanto (102)
  item="Milkshake"
  valor=qtde*7
	
	para (item==102)
{
  item="Milkshake"
  valor=qtde*7
}
	Respondido em 14/05/2020 15:12:23
	
	
	 
	
	 4a Questão
	
	
	
	
	   
		
	
	11  10  50  10
	
	10  50  10  2
	 
	11  50 10
	 
	11  10  50  10  2
	
	11  50  10  2
	Respondido em 14/05/2020 15:19:34
	
Explicação:
1ª. Execução : valor de a é 1
Entrar no case 1, depois no case 3 e em seguida, no case 5. 
Então será impresso  11
                                       10
2ª. Execução : valor de a é 5
Entrar no case 5 e imprimir  50
3ª. Execução : valor de a é 20
Entrar no case 20 e depois no case 30.
Então, será impresso        10
                                              2
Concluindo :
Valores impressos :  11  10  50  10 2
	
	
	 
	
	 5a Questão
	
	
	
	
	Quero escrever um programa que leia o número equivalente a um dia da semana e retorne o nome equivalente considerando que 1- Domingo, 2 - Segunda etc. Qual  a estrutura básica em C++ que deve ser utilizada para fazer esta seleção múltipla?
		
	
	cout
	
	do/while
	 
	switch/case
	
	while
	
	for
	Respondido em 14/05/2020 15:22:06
	
Explicação:
	
	switch/case
	 
	É para repetição
	do/while
	 
	É para repetição
	for
	 
	É para impressão na tela
	cout
	 
	É para repetição
	while
	
	
	 
	
	 6a Questão
	
	
	
	
	Uma estrutura seletiva permite que se restrinja a execução de um trecho do programa à veracidade, ou não, de uma condição. Sabendo disso, imagine que você está com as medidas dos três lados de um triângulo armazenados nas variáveis L1, L2 e L3. Utilizando a sintaxe do Portugol Studio, como seria o trecho da estrutura seletiva que avalie se este triângulo é isóscele, escaleno ou equilátero? Veja as definições para os diferentes tipos de triângulo:
Escaleno: Dois lados quaisquer com a mesma medida;
Equilátero: Três lados com a mesma medida;
Isósceles: Três lados com medidas diferentes.
		
	
	se (lado1=lado2 e lado2=lado3)
{ escreva("Este é um triângulo equilátero!") }
senao se
{ escreva("Este é um triângulo escaleno!") }
senao (lado1=lado2 ou lado2=lado3 ou lado3=lado1)
{ escreva("Este é um triângulo isósceles!") }
	 
	se (lado1==lado2 e lado2==lado3)
{ escreva("Este é um triângulo equilátero!") }
senao se (lado1==lado2 ou lado2==lado3 ou lado3==lado1)
{ escreva("Este é um triângulo escaleno!") }
senao
{ escreva("Este é um triângulo isósceles!") }
	
	se (lado1==lado2 e lado2==lado3)
{ escreva("Este é um triângulo escaleno!") }
senao se (lado1==lado2 ou lado2==lado3 ou lado3==lado1)
{ escreva("Este é um triângulo isósceles!") }
senao
{ escreva("Este é um triângulo equilátero!") }
	
	se (lado1==lado2 ou lado2==lado3)
{ escreva("Este é um triângulo equilátero!") }
senao se (lado1==lado2 e lado2==lado3 e lado3==lado1)
{ escreva("Este é um triângulo escaleno!") }
senao
{ escreva("Este é um triângulo isósceles!") }
	
	(lado1==lado2 e lado2==lado3)
{ escreva("Este é um triângulo equilátero!") }
se (lado1==lado2 ou lado2==lado3 ou lado3==lado1)
{ escreva("Este é um triângulo escaleno!") }
se
{ escreva("Este é um triângulo isósceles!") }
	
	 7a Questão
	
	
	
	
	Com base na sintaxe do Portugol Studio, imagine que você precisa escrever um algoritmo que exiba o nome do dia semana a partir de seu código numérico equivalente, armazenado na variável codigo. Confira a codificação: 1 - domingo, 2 - segunda-feira, 3 - terça-feira, 4 - quarta-feira, 5 - quinta-feira, 6 - sexta-feira, 7 - sábado. Veja o trecho da estrutura de seleção que poderia ser utilizado na solução:
_____A_____ (codigo) {
  _____B_____ 1:
    escreva("domingo")
    ____C______
  _____B_____ 2:
    escreva("segunda-feira")
    ____C______
  _____B_____ 3:
    escreva("terça-feira")
    ____C______
  _____B_____ 4:
    escreva("quarta-feira")
    _____C_____
  _____B_____ 5:
    escreva("quinta-feira")
    _____C_____
  _____B_____ 6:
    escreva("sexta-feira")
    _____C_____
  _____B_____ 7:
    escreva("sábado")
    __________    
  _____D_____:
    escreva("Código inválido!")
  }
As instruções que completam adequadamente as lacunas são:
		
	
	A - case, B - switch, C - default, D - break
	
	A - switch, B - case, C - break, D - default
	
	A - se, B - caso, C - pare, D - default
	
	A - caso, B - escolha, C - pare, D - outros casos
	 
	A - escolha, B - caso, C - pare, D - outros casos
	Respondido em 14/05/2020 15:29:16
	
	
	 
	
	 8a Questão
	
	
	
	
	Imagine que você precisa escrever um programa em C++ que exiba o nome do dia semana a partir de seu código numérico equivalente, conforme se vê a seguir. 1 - domingo, 2 - segunda-feira, 3 - terça-feira, 4 - quarta-feira, 5 - quinta-feira, 6 - sexta-feira, 7 - sábado. Se fosse utilizada a estrutura SWITCH e os testes fossem escritos na ordem em que os dias estão listados, os casos finais dessa estrutura, considerando que você deseja apresentar uma mensagem de erro caso o usuário informe um código equivocado, seriam.
		
	
	case 7:
  cout <<"sábado";
  break;  
case not:
    cout <<"Código inválido!";
	
	default 7:
  cout <<"sábado";
  break;  
switch:
    cout <<"Código inválido!";
	
	default 7:
  cout <<"sábado";
  break;  
default:
    cout <<"Código inválido!";
	 
	case 7:
  cout <<"sábado";
  break;  
default:
    cout <<"Código inválido!";
	
	switch 7:
  cout <<"sábado";
  break;  
default:
    cout <<"Código inválido!";
Aula 7
	
	 1a Questão
	
	
	
	
	Em relação às técnicas de programação e construção de algoritmos, assinale a alternativa que apresente corretamente duas características da estrutura de controle repetir ... até que.
		
	
	O teste de controle é realizado no início da estrutura / a saída da estrutura de repetição ocorre quando o resultado do teste é verdadeiro.
	
	O teste de controle é realizado no fim da estrutura / a saída da estrutura de repetição ocorre quando o resultado do teste é verdadeiro.
	 
	A execução permanece no loop enquanto o resultado do teste for verdadeiro / a saída da estrutura de repetição ocorre quando o resultado do teste é falso.
	 
	A execução permanece no loop enquanto o resultado do teste for falso / a saída da estrutura de repetição ocorre quando o resultado do teste é verdadeiro.
	
	As instruções no loop são executadas pelo menos uma vez / a saída da estrutura de repetição ocorre quando o resultado do teste é verdadeiro.
	Respondido em 14/05/2020 19:30:50
	
Explicação:
A execução permanece no loop enquanto o resultado do teste for verdadeiro / a saída da estrutura de repetição ocorre quando o resultado do teste é falso.
	
	
	 
	
	 2a Questão
	
	
	
	
	O trecho de código a seguir utiliza uma estrutura de repetição do tipo  for . Marque a alternativa que apresenta de forma correta o mesmo trecho utilizando a estrutura de repetição while.
Seja:
for( int i=3; i<100; i+=2)
     cout <<   i ;
 
		
	
	    int i;
    i=3;
    while(i<100)
    {
         i=i+2;
        cout << i;
    }
	
	   int i;
    while (i<100) {
       i=3;
      cout << i;
      i=i+2;
   }
	 
	   int i;
    while (i<100) {
         cout << i;
         i=3;
         i=i+2;
    }
	
	    int i;
    i=3;
    while(i<100)   
     cout << i;
      i=i+2;
   
	 
	   int i;
    i=3;
    while (i<100)   {
      cout << i;
      i=i+2;
 }
	Respondido em 14/05/2020 19:35:17
	
Explicação:
A estrutura dos dois comandos é a seguinte :
 inicialização, teste lógico, incremento/decremento e o trecho da repetição.
conforme aula e gabarito.
 
	
	
	 
	
	 3a QuestãoConsidere o seguinte problema: Uma turma precisa escolher seu representante. Sabendo que existem apenas dois candidatos, identificados pelas letras A e B, receba o número do aluno e o candidato por ele escolhido e contabilize os votos de cada um. A leitura de votos será finalizada quando o número do aluno informado for 0.
A linha inicial da estrutura repetitiva com pré-teste capaz de controlar o recebimento dos votos é:
 
		
	
	if (num!=0)
	
	do (num!=0)
	
	for (num<=0)
	 
	while (num!=0)
	
	while (num==0)
	Respondido em 14/05/2020 19:37:27
	
	
	 
	
	 4a Questão
	
	
	
	
	Assinale a alternativa correta em relação a quantidade de vezes que a palavra "ALGORITMO" será impressa, no trecho de código abaixo:
cont = 0;
while( cont < 30 ) {
   cout << "ALGORITMO" << endl;
   cont = cont + 1;
}
		
	
	29
	
	Nenhuma das alternativas.
	
	31
	
	15
	 
	30
	Respondido em 14/05/2020 19:38:13
	
Explicação:
Fazendo passo a passo :
cont = 0;
while( cont < 30 ) {
   cout << "ALGORITMO" << endl;
   cont = cont + 1;
}
	variável cont
	Teste cont < 30 ? Sim ou não ?
	0
	0 < 30 ? sim
	1
	1 < 30 ? sim
	2
	2 < 30 ? Sim
	3
	3 < 30 ? Sim
	4
	4 < 30 ? Sim
	5
	5 < 30 ? sim
	6
	6 < 30 ? sim
	7
	7 < 30 ? sim
	continuando até 29 
	 29  < 30 ? Sim
	30
	30 < 30 ? Não. Falso.  Não entra no while
Note que entrou 30 vezes no corpo do while e a cada vez que entrou imprimiu ALGORITMO
TELA
ALGORITMO
ALGORITMO
ALGORITMO
ALGORITMO
ALGORITMO
ALGORITMO
ALGORITMO
ALGORITMO
ALGORITMO
ALGORITMO
ALGORITMO
ALGORITMO
ALGORITMO
ALGORITMO
ALGORITMO
ALGORITMO
ALGORITMO
ALGORITMO
ALGORITMO
ALGORITMO
ALGORITMO
ALGORITMO
ALGORITMO
ALGORITMO
ALGORITMO
ALGORITMO
ALGORITMO
ALGORITMO
ALGORITMO
ALGORITMO
>>>>>>>>>>>>>>>>>>  Logo, imprimiu 30 vezes a palavra   ALGORITMO
 
	
	
	 
	
	 5a Questão
	
	
	
	
	Sobre a estrutura com pós-teste, julgue as assertivas a seguir Verdadeiras ou Falsas:
(   ) Avalia somente uma condição por vez, tendo essa que ser do tipo relacional ou matemático.
(   ) Trata-se de uma estrutura de seleção capaz de restringir a execução de determinado trecho do código;
(   ) É uma estrutura do tipo repetitiva, que precisa de uma condição que controle quando o trecho deve se repetir;
 
		
	
	F - V - V
	
	F - F - F
	 
	F - F - V
	
	V - F - V
	
	V - F - F
	Respondido em 14/05/2020 19:39:49
	
	
	 
	
	 6a Questão
	
	
	
	
	Assinale a alternativa correta em relação a quantidade de vezes que a palavra "PAZ" será impressa, no trecho de código abaixo:
x = 50;
do{
y = 8;
do{
cout<<"PAZ \n";
y++;
} while ( y <10);
x--;
}while ( x > 48);
		
	
	5 vezes
	 
	4 vezes
	 
	6 vezes
	
	8 vezes
	
	7 vezes
	Respondido em 14/05/2020 19:42:54
	
Explicação:
Analisando passo a passo o trecho dado :
x = 50;
do{
   y = 8;
   do{
       cout<<"PAZ \n";
       y++;
   } while ( y <10);
   x--;
} while ( x > 48);
 
	x
	y
	50
	8
	49
	9 
	48  (48 > 48 ? ) Falso
	10 ... 10 < 10 ? FALSO
	 
	8
	 
	9
	 
	10 ... 10 <  10 ? Falso
	 
	 
	 
	 
	 
	 
PAZ
PAZ
PAZ
PAZ
	
	
	 
	
	 7a Questão
	
	
	
	
	Leia atentamente o trecho de código abaixo e diga o que ele retornaria ao usuário:
int main ( ) {
    int i = 0;
    double x, y = 0;
    cout << "Digite um numero diferente de zero : ";
    cin >> x;
    while (x != 0){
        i = i + 1;
        y = y + x;
        cout << "Digite um numero diferente de zero: ";
        cin >> x;
    }
    y = y / i;
    cout << "Numero: " << i << "\n";
    return 0;
}
		
	
	O maior de todos os elementos digitados
	
	A média dos elementos digitados
	 
	A quantidade de elementos digitados diferentes de zero.
	
	A quantidade de elementos pares
	
	O menor de todos os elementos digitados
	Respondido em 14/05/2020 19:47:30
	
Explicação:
A condição para entrar no loop e contar é x ser diferente de zero. O que será exibido ao final do programa é a quantidade i calculada.
Note que o primeiro valor de x digitado é testado, então entra-se no loop e logo depois, este valor é contado através do uso de i que é incrementado.  Claro que x é manipulado, tendo seu valor somado com o valor de y, mas ao final do programa a quantidade i é impressa.  Se o valor zero for digitado, ele não será contado.
	
	
	 
	
	 8a Questão
	
	
	
	
	A estrutura de dados de iteração na qual uma ação será executada pelo menos uma vez, antes da avaliação da condição, é implementada pelo comando básico
		
	 
	de seleção
	
	condicional
	 
	de repetição
	
	sequencial
	
	de atribuição
	Respondido em 14/05/2020 19:50:27
	
Explicação:
A estrutura de dados de iteração na qual uma ação será executada pelo menos uma vez, antes da avaliação da condição, é implementada pelo comando básico de repetição
Aula 8
		1.
		Após análise do código responda a questão:
 
 
 
Ao ser compilado e executado, o programa irá exibir na tela:
	
	
	
	Os números pares entre 1 e 5 (inclusive) em ordem crescente.
	
	
	Os números ímpares entre 1 e 5 em ordem decrescente.
	
	
	Os valores entre 1 e 5 (inclusive) em ordem decrescente.
	
	
	Os números ímpares entre 1 e 5 (inclusive) em ordem decrescente.
	
	
	Os valores entre 1 e 5 (inclusive)em ordem crescente.
	
Explicação:
	 
	 
	Verdadeira, visto que o programa imprimirá :
O valor de i e 5
O valor de i e 3
O valor de i e 1
Portanto em ordem decrescente incluindo o 5 e o 1.
	Os números ímpares entre 1 e 5 (inclusive) em ordem decrescente.
	 
	Falso. Não é entre apenas, pois inclui 5 e 1.
	Os números ímpares entre 1 e 5 em ordem decrescente.
	 
	FAlso.  É em ordem decrescente e imprime os ímpares e não os pares.
	Os números pares entre 1 e 5 (inclusive) em ordem crescente.
	 
	FAlso. Não é qualquer valor, mas apenas os ímpares de 5 a 1, incluindo 5 e 1.
	Os valores entre 1 e 5 (inclusive) em ordem decrescente.
	 
	FAlso. Não é qualquer valor, mas apenas os ímpares em ordem decrescente de 5 a 1.
	Os valores entre 1 e 5 (inclusive)em ordem crescente.
	
	
	
	 
		
	
		2.
		Leia atentamente o trecho de código abaixo e diga o que ele retornaria ao usuário:
int main ( ) {
    int i;
    double x, y = 0;
    for (i = 0; i < 10; i++){
        cout << "Digite um numero: ";
        cin >> x;
        y = y + x;  
    }
    cout << "Numero: " << y << "\n";
    system("PAUSE");
    return 0;
}
	
	
	
	O maior de todos os elementos digitados
	
	
	A média dos elementos digitados
	
	
	A soma de todos os elementos
	
	
	A soma dos elementos pares
	
	
	A quantidade de elementos digitados
	
Explicação:
Antes do loop é lido um valor e armazenado em x e a cada rodada o valor de x é acumulado em um somatório, indicado na linha :
    y = y + x;
Assim, ao final do for, teremos em y o somatório de todos os números que x armazenou.
	
	
	
	 
		
	
		3.
		Imagine que você precisa criar um laço capaz de receber o nome e as notas bimestrais de um teste e uma prova de trinta alunos. Para cada um deles, é preciso calcular e mostrar a média do bimestre e informar se o aluno está na média (nota mínima 7) ou abaixo dela. Considerando que o código será escrito em C++, qual das opções a seguir apresenta as linhas de código do laço?
	
	
	
	while (cont=1;cont<=30;cont++) {
  cout <<"Informe as notas do aluno ";
  cout <<"Teste: "; cin >>Teste;
  cout <<"Prova: "; cin >>Prova;
  Media = (Teste+Prova)/2;
  cout <<"A média do aluno é " << Media;
  if (Media>=7)
  { cout <<"Você está na média!";  }
  else
  { cout <<"Você está abaixo da média!";  }
}
	
	
	do (cont=1;cont<=30;cont++) {
  cout <<"Informe as notas do aluno ";
  cout <<"Teste: "; cin >>Teste;
  cout <<"Prova: "; cin >>Prova;
  Media = (Teste+Prova)/2;
  cout <<"A média do aluno é " << Media;
  if (Media>=7)
  { cout <<"Você está na média!";  }
  else
  { cout <<"Você está abaixo da média!";  }
}
	
	
	for (cont=1;cont<=30;cont+=2) {
  cout <<"Informe as notas do aluno ";
  cin <<"Teste: "; cout >>Teste;
  cin <<"Prova: "; cout >>Prova;
  Media = (Teste+Prova)/2;
  cout <<"A média do aluno é " << Media;
  if (Media>=7){ cin <<"Você está na média!";  }
  else
  { cin <<"Você está abaixo da média!";  }
}
	
	
	for (cont=1;cont<=30;cont++) {
  cout <<"Informe as notas do aluno ";
  cout <<"Teste: "; cin >>Teste;
  cout <<"Prova: "; cin >>Prova;
  Media = (Teste+Prova)/2;
  cout <<"A média do aluno é " << Media;
  if (Media>=7)
  { cout <<"Você está na média!";  }
  else
  { cout <<"Você está abaixo da média!";  }
}
	
	
	for (cont=30;cont<=0;cont++) {
  cout <<"Informe as notas do aluno ";
  cout <<"Teste: "; cin >>Teste;
  cout <<"Prova: "; cin >>Prova;
  Media = (Teste+Prova)/2;
  cout <<"A média do aluno é " << Media;
  if (Media<7)
  { cout <<"Você está na média!";  }
  else
  { cout <<"Você está abaixo da média!";  }
}
	
	
	
	 
		
	
		4.
		Analise o trecho do código abaixo, e indique a saída obtida se for lido o valor 5 para n:
cin>>n;
total=0;
for (i=15; i>n; i-=2)
{
    total+=i;
}
cout < < total;<total;< p=""> </total;<>
	
	
	
	63
	
	
	48
	
	
	60
	
	
	55
	
	
	39
	
Explicação:
Considerando o trecho e n sendo 5 : 
cin>>n;
total=0;
for (i=15; i>n; i-=2)
{
    total+=i;
}
cout < < total; 
temos o teste de mesa :
	n
	total
	i
	5
	0
	15
	 
	0 + 15 que é 15
	13
	 
	15 + 13 que é 28
	11
	 
	28 + 11 que é 39 
	9
	 
	39 + 9  que é 48
	 7
	 
	 48 + 7 que é 55 
	 5   ( 5 > 5 dá falso)
Logo, total é 55
	
	
	
	 
		
	
		5.
		Ao fazer um programa de computador, algumas estruturas precisam ser utilizadas. Assinale a alternativa correta para que um programa repita 200 vezes um bloco de comandos através da estrutura de repetição FOR na linguagem C++.
	
	
	
	for ( i=0; i <= 200; i++)
	
	
	for (int i=0; i <= 200; i++)
	
	
	for (int i=0; i =< 200; i++)
	
	
	for (int i=0, i <= 200, i++)
	
	
	for (int i=0; i < 200; i++)
	
Explicação:
	 
	 Verdadeira
	for (int i=0; i < 200; i++)
	 
	 Falsa. Entraremos 201 vezes no bloco do for, pois i começou de 0 e é <= no teste do for.
	for (int i=0; i <= 200; i++)
	 
	 FAlsa. A variável i não foi declarada.
	for ( i=0; i <= 200; i++)
	 
	 Falsa.  Não existe =<
	for (int i=0; i =< 200; i++)
	 
	 Falsa.  Uso indevido do for. Não se põe vírgula e sim ponto e vírgula.
	for (int i=0, i <= 200, i++)
	
	
	
	 
		
	
		6.
		Após a execução do trecho de código, abaixo, quais números serão exibidos na tela?
for(int i=3; i<100; i=i+19)
cout << " " << i;
	
	
	
	3 22 41 60 79 98
	
	
	3 23 40 60 79 98
	
	
	3 22 41 60 79 99
	
	
	3 23 42 61 80 99
	
	
	3 22 41 59 79 98
	
Explicação:
Considerando o trecho 
for(int i  =  3; i<100;  i = i+19) 
    cout << " " << i;
fazendo passo a passo :
	i
	 i < 100 ? 
	3
	 3 < 100 ? Sim
	3+ 19 é 22
	22  < 100 ? Sim
	22+ 19 é 41
	41 < 100  ? Sim
	41 + 19 é 60 
	60 < 100 ? sim
	60 + 19 é  79 
	79 < 100 ? sim
	79 + 19 é 98
	98 <  100 ? sim
	98 + 19 é 117
	 117 < 100 ? falsa. Então não entra no loop
 
TELA
3  22  41 60 79 98  
	
	
	
	 
		
	
		7.
		Leia atentamente o trecho de código abaixo e diga o que ele retornaria ao usuário:
int main ( ) {
    int i = 0;
    double x, y = 0;
    cout << "Digite um numero: ";
    cin >> x;
    while (x != 0){
        i = i + 1;
        y = y + x;
        cout << "Digite um numero: ";
        cin >> x;
    }
    y = y / i;
    cout << "Numero: " << y << "\n";
    system("PAUSE");
    return 0;
}
	
	
	
	A média dos elementos digitados
	
	
	A quantidade de elementos pares
	
	
	O menor de todos os elementos digitados
	
	
	A quantidade de elementos digitados
	
	
	O maior de todos os elementos digitados
	
Explicação:
 int i = 0;         //inicializa a quantidade de elementos digitados diferentes de zero
 double x, y = 0;          // y inicializa o somatorio dos valores de entrada
    cout << "Digite um numero: ";
    cin >> x;   //Lê o primeiro valor
    while (x != 0){      //Enquanto o valor de entrada não for zero
        i = i + 1;          //conta mais um número lido
        y = y + x;        //acumula o valor de x em y, gerando o somatório dos números lidos e armazenados em x
        cout << "Digite um numero: ";
        cin >> x;   //Lê o proóximo número
    }
    y = y / i;         //Divide a soma dos números lidos não nulos por i  ( i é o total de números lidos não nulos)
    cout << "Numero: " << y << "\n";   //Imprime a média armazenada em y
Logo : O programa calcula a média dos números digitados (diferente de zero)
	
	
	
	 
		
	
		8.
		
Marque a opção correta.  Considere o trecho de programa feito abaixo em C++. O valor final de soma e o valor final de num, são respectivamente
 
int contador, num = 1, soma = 0;
for (contador = 1; contador <= 20; contador += 5) {
        soma = soma + num;
         num = num + 3;
   }
	
	
	
	22  e  13
	
	
	 
o valor de soma está indefinido e o valor de num é 10
	
	
	 
22 e 20
	
	
	 
12 e 10
 
	
	
	 
22  e 10
	
Explicação:
 
Analisando o trecho : 
int contador, num = 1, soma = 0;
for (contador = 1; contador <= 20; contador += 5) {
        soma = soma + num;
         num = num + 3;
   }
 
Fazendo teste de mesa :
	contador
	num
	soma
	contador <= 20
	1
	1
	0
	sim
	6
	4
	1
	sim
	11
	7
	5
	sim
	16
	10
	12
	sim
	21
	13
	22
	21 <= 20 ? Falso.
	 
	 
	 
	 
	 
	 
	 
	 
	 
	 
	 
	 
	 
	 
	 
	 
Os valores finais das variáveis estão em vermelho.
Logo, a resposta é 22  e  13
Aula9
		1.
		Um vetor é uma estrutura _____________ e _____________ para armazenamento de um _____________ que deve ser _____________.
	
	
	
	unidimensional - homogênea - conjunto de valores - do mesmo tipo
	
	
	bidimensional - heterogênea - conjunto de valores - do mesmo tipo
	
	
	unidimensional - homogênea - único valor - de tipos variados
	
	
	bidimensional - homogênea - único valor - do mesmo tipo
	
	
	unidimensional - heterogênea - único valor - de tipos variados
	
	
	
	 
		
	
		2.
		Em C++, se você precisasse escrever um programa que recebesse o sexo e a altura de 25 pessoas e armazenasse nos vetores Sexo e Altura, respectivamente, e, em seguida, calculasse e exibisse a média de altura das mulheres e a média de altura dos homens, que trecho utilizaria para recebimento de valores via teclado e para as somas necessárias na obtenção da média das alturas?
Atenção às variáveis utilizadas:
quantF - Quantidade de pessoas do sexo feminino;
somaAF - Soma das alturas do sexo feminino;
quantM - Quantidade de pessoas do sexo masculino;
somaAM - Soma das alturas do sexo masculino.
	
	
	
	for (ind=0;ind<=24;ind++)  {
  cout <<"Informe o sexo: ";
  cin >>Sexo;
  cout <<"Informe a altura: ";
  cin >>Altura;
  if (Sexo[ind]==F || Sexo[ind]==f)
  { quantF++; somaAF+=[ind]; }
  else if (Sexo[ind]==M || Sexo[ind]==m)
  { quantM++; somaAM+=[ind]; }
}
	
	
	for (ind=0;ind>=24;ind--)  {
  cout <<"Informe o sexo: ";
  cin >>Sexo[ind];
  cout <<"Informe a altura: ";
  cin >>Altura[ind];
  if (Sexo[ind]==F || Sexo[ind]==f)
  { quantF++; somaAF=Altura[ind]; }
  else if (Sexo[ind]==M || Sexo[ind]==m)
  { quantM++; somaAM=Altura[ind]; }
}
	
	
	for (ind=24;ind<=24;ind++)  {
  cout <<"Informe o sexo: ";
  cin >>Sexo[ind];
  cout <<"Informe a altura: ";
  cin >>Altura[ind];
  if (Sexo[ind]==F || Sexo[ind]==f)
  { quantF+=ind; somaAF+=Altura[ind]; }
  else if (Sexo[ind]==M || Sexo[ind]==m)
  { quantM+=ind; somaAM+=Altura[ind]; }
}
	
	
	for (ind=0;ind<=24;ind+=2)  {
  cout <<"Informe o sexo: ";
  cin >>Sexo[ind];
  cout <<"Informe a altura: ";
  cin >>Altura[ind];
  if (Sexo[ind]==F && Sexo[ind]==f)
  { quantF++; somaAF+=Altura[ind]; }
  else if (Sexo[ind]==M && Sexo[ind]==m)
  { quantM++; somaAM+=Altura[ind]; }
}
	
	
	for (ind=0;ind<=24;ind++)  {
  cout <<"Informe o sexo: ";
  cin >>Sexo[ind];
  cout <<"Informe a altura: ";
  cin >>Altura[ind];
  if (Sexo[ind]==F || Sexo[ind]==f)
  { quantF++; somaAF+=Altura[ind]; }
  else if (Sexo[ind]==M || Sexo[ind]==m)
  { quantM++; somaAM+=Altura[ind]; }
}
	
	
	
	 
		
	
		3.
		Considere que um casal de amigos está brincando de par ou ímpar. Você precisa escrever um algoritmoque, a cada uma das 10 jogadas que farão, armazene nos vetores jogadasA e jogadasB o número escolhido pelo jogador A (que é par) e o número escolhido pelo jogador B (que é ímpar), respectivamente. Precisa informar, também a cada jogada, o jogador vencedor. O trecho que avaliaria a soma dos números escolhidos por cada amigo e decidiria quem venceu a rodada seria:
	
	
	
	total=jogadasA[ind]+jogadasB[ind]
escolha (total%2==0)
{ escreva("Jogador A venceu!\n") }
outros casos
{ escreva("Jogador B venceu!\n") }
	
	
	total=jogadasA[ind]+jogadasB[ind]
se (total%2==0)
{ escreva("Jogador A venceu!\n") }
senao
{ escreva("Jogador B venceu!\n") }
	
	
	total++
se (total%2!=0)
{ escreva("Jogador A venceu!\n") }
senao
{ escreva("Jogador B venceu!\n") }
	
	
	total=[ind]+jogadasB
se (total%2>=0)
{ escreva("Jogador A venceu!\n") }
senao
{ escreva("Jogador B venceu!\n") }
	
	
	total=jogadasA+jogadasB
se (total%2==0)
{ escreva("Jogador A venceu!\n") }
senao
{ escreva("Jogador B venceu!\n") }
	
	
	
	 
		
	
		4.
		Imagine que um dado é lançado 20 vezes e, a cada lançamento, a face sorteada é lançada em um vetor denominado sorteios. Considerando que você precisa escrever um algoritmo conforme a sintaxe do Portugol Studio que, ao final dos sorteios, informe quantas vezes cada face ímpar foi sorteada, qual das estruturas repetitivas a seguir voce utilizaria para contar a quantidade de sorteios nos quais cada uma das faces ímpares saiu? 
	
	
	
	para (ind=10;ind<=20;ind++) {
  escolha (sorteios[ind])  {
    caso 1,3,5,7,9: cont1++
    pare
    default: pare
  }
}
	
	
	para (ind=0;ind<=19;ind--) {
  escolha (sorteios[ind])  {
    caso 1: cont1--
    pare
    caso 3: cont3--
    pare
    caso 5: cont5--
    pare
  }
}
	
	
	para (ind=0;ind<=19;ind++) {
  escolha (sorteios[ind])  {
    caso 1: cont1++
    pare
    caso 3: cont3++
    pare
    caso 5: cont5++
    pare
  }
}
	
	
	para (ind=0;ind<=19;ind++) {
  escolha (sorteios[ind,ind])  {
    caso 1: cont++
    pare
    caso 3: cont++
    pare
    caso 5: cont++
    pare
  }
}
	
	
	para (ind=0;ind<=20;ind++) {
  escolha (sorteios)  {
    caso 1: cont1++
    pare
    caso 3: cont3++
    pare
    caso 5: cont5++
    pare
  }
}
	
	
	
	 
		
	
		5.
		Você está escrevendo um programa no qual utiliza um vetor de 15 elementos do tipo caractere denominado LETRAS e precisa contar quantas posições do vetor armazenam a letra "A" ou a letra "E" e guardar o total na variável QuantAE. O trecho de código capaz de realizar essa contagem é:
	
	
	
	for (i=0;i=14;i++)
{
  if (LETRAS[i] == ¿A¿ !! LETRAS[i] == ¿E¿)
  { QuantAE+=1; }
}
	
	
	for (i=1;i<=15;i++)
{
  if (LETRAS[i] == "A" && LETRAS[i] == "E")
  { QuantAE+=1; }
}
	
	
	for (i=0;i<=14;i++)
{
  if (LETRAS[i] == "A" or LETRAS[i] == "E")
  { QuantAE=1; }
}
	
	
	for (i=1;i<=14;i++)
{
  if (LETRAS[i] == "A" || LETRAS[i] == "E")
  { QuantAE+=; }
}
	
	
	for (i=0;i<=14;i++)
{
  if (LETRAS[i] == "A" || LETRAS[i] == "E")
  { QuantAE+=1; }
}
	
	
	
	 
		
	
		6.
		Analise o código abaixo e assinale o item que corresponde aos valores finais do vetor v.
int a = 2;
int v[] = {2, 3, 1};
v[0] = v[a];
v[1] = v[0] + v[0];
v[2] = v[0] + v[1];
	
	
	
	1, 2, 3
	
	
	1, 3, 2
	
	
	2, 3, 1
	
	
	2, 1, 3
	
	
	3, 2, 1
	
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
 
	
	
	
	 
		
	
		7.
		Os chamados vetores e matrizes podem ser considerados como:
	
	
	
	Comandos de seleção
	
	
	Comandos de repetição
	
	
	Estruturas de dados homogêneas
	
	
	Estruturas de dados heterogêneas
	
	
	Comandos de seleção composta
	
Explicação:
	 Verdadeira
	Estruturas de dados homogêneas
	 
	FAlsa.  Em vetores e matrizes os dados são todos do mesmo tipo.
	Estruturas de dados heterogêneas
	 
	Falso.  Comandos de seleção são if, if/else e switch
	Comandos de seleção
	 
	Falso. Comandos de repetição são for, while e do/while
	Comandos de repetição
	 
	Falso.  Comando if/else e não vetor ou matriz.
	Comandos de seleção composta
	
	
	
	 
		
	
		8.
		Suponha que em um programa em C/C++ se deseje armazenar 15 valores decimais em um vetor LISTA. Assinale a declaração correta:
	
	
	
	int LISTA[16];
	
	
	float lista[15];
	
	
	float LISTA[15];
	
	
	int lista[15];
	
	
	float lista[16];
	
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];
	 
	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];
Aula 10
	 1a Questão
	
	
	
	Se você precisar escrever um programa em C++ que receba uma matriz de elementos inteiros dispostos em 3 linhas e 4 colunas e exiba a quantidade de números múltiplos de 5 armazenados na matriz vai precisar de
		
	
	Duas estruturas seletivas: uma controlando as linhas e variando de 1 a 5, e outra controlando as colunas e variando de 1 a 3.
	 
	Duas estruturas repetitivas: uma controlando as linhas e variando de 0 a 2, e outra controlando as colunas e variando de 0 a 3.
	
	Duas estruturas seletivas: uma controlando as linhas e variando de 0 a 2, e outra controlando os múltiplos de 5 e variando de 0 a 5 .
	
	Duas estruturas repetitivas: uma controlando as linhas e variando de 0 a 2, e outra controlando os múltiplos de 5 e variando de 0 a 5 .
	
	Duas estruturas seletivas: uma controlando as linhas e variando de 0 a 2, e outra controlando as colunas e variando de 0 a 3.
	Respondido em 28/05/2020 15:57:06
	
	
	 
	
	 2a Questão
	
	
	
	
	Considere as regras do Portugol Studio e imagine que você precisa escrever um algoritmo que receba uma matriz 3x2 e exiba a quantidade de elementos ímpares armazenados nas linhas pares. A estrutura de repetição capaz de realizar o recebimento dos elementos da matriz M1 e a contagem descrita é:
		
	
	para (lin=0;lin<=2;lin++) {
  para (col=0;col<=1;col++) {
    escreva("Informe a posição [",lin+1,",",col+1,"]: ")
    leia(M1[lin][col])
    se (lin%2==0){
      se (M1[lin][col]%2==0)
      { qtdeImpares++ }
    }
  }
}
	 
	para (lin=0;lin<=2;lin++) {
  para (col=0;col<=1;col++) {
    escreva("Informe a posição [",lin+1,",",col+1,"]: ")
    leia(M1[lin][col])
    se (lin%2==0){
      se (M1[lin][col]%2!=0)
      { qtdeImpares-- }
    }
  }
}
	 
	para (lin=0;lin<=2;lin++) {
  para (col=0;col<=1;col++) {
    escreva("Informe a posição [",lin+1,",",col+1,"]: ")
    leia(M1[lin][col])
    se (lin%2==0){
      se (M1[lin][col]%2!=0)
      { qtdeImpares++ }
    }
  }
}
	
	para (lin=0;lin<=2;lin++) {
  para (col=0;col<=1;col++) {
    escreva("Informe a posição [",lin+1,",",col+1,"]: ")
    leia(M1[lin][col])
    se (lin%2!=0){
      se (M1[lin][col]%2!=0)
      { qtdeImpares++ }
    }
  }
}
	
	para (lin=0;lin<=2;lin++) {
  para (col=0;col<=1;col++) {
    escreva("Informe a posição [",lin+1,",",col+1,"]: ")
    leia(M1)
    se (lin%2){
      se (M1%2!=0)
      { qtdeImpares++ }
    }
  }
}
	Respondido em 28/05/2020 16:00:22
	
	
	 
	
	 3a 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.
#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 4 5 6 7 8 9
	
	1 2 3
	
	1 3 5 7 9
	 
	1 5 9
	
	2 4 6 8
	Respondido em 28/05/2020 16:03:01
	
Explicação:
Considerandoa 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
	
	
	 
	
	 4a Questão
	
	
	
	
	Observe a matriz:
 
	A
	R
	E
	S
	 
	E
	U
	Q
	 
	 
	 
	E
	O
	T
	S
	I
 
Qual será o resultado obtido após ser executado o trecho do algoritmo a seguir:
 
for (i = 0; i < 4; i ++)
   for ( j = 0; j < 2; j++)
  {
      aux =  mat[i][j];
      mat[i][j]   = mat[i][3-j];
      mat[[i][3 - j] =  aux;
  }
 
 
 
		
	 
		S
	E
	R
	A
	Q
	U
	E
	 
	E
	
	
	 
	I
	S
	T
	O
	
		S
	E
	R
	A
	 
	Q
	U
	E
	
	 
	E
	
	I
	S
	T
	O
	
		S
	E
	R
	A
	Q
	U
	E
	
	
	E
	 
	
	I
	S
	T
	O
	
		S
	E
	R
	A
	 
	Q
	U
	E
	 
	E
	
	
	I
	S
	T
	O
	
		S
	E
	R
	A
	Q
	U
	E
	
	 
	
	E
	
	I
	S
	T
	O
	Respondido em 28/05/2020 16:11:15
	
Explicação:
Conforme gabarito e aula de matrizes, consciente que o índice da linha começa de zero e o da coluna também.  O papel da variavel aux é permitir a troca dos valores da matriz.
	
	
	 
	
	 5a Questão
	
	
	
	
	Imagine que você precisa escrever um algoritmo que receba uma matriz 4x4 de números inteiros, gere e exiba uma segunda matriz na qual as linhas são as colunas da matriz 1, e as colunas são as linhas da matriz 1. Qual das alternativas a seguir apresenta o código da estrutura de repetição que recebe os elementos da primeira matriz e gera a segunda?
		
	
	para (lin=0;lin<=3;lin++) {
  para (col=0;col<=3;col++) { 
    escreva(M2[lin][col]," ")
  }
}
	
	para (lin=0;lin<=3;lin++) {
  para (col=0;col<=3;col++) {
     escreva("Informe a posição [",lin+1,",",col+1,"]: ")
     leia(M1[lin][col])
     M2[lin][col]=M1[lin][col]
  }
}
	
	para (lin=0;lin<=3;lin++) {
    escreva("Informe a posição [",lin+1,",",col+1,"]: ")
    leia(M1[lin][lin])
    M2[lin][lin]=M1[lin][lin]
}
	
	enquanto (lin=0;lin<=3;lin++) {
  enquanto (col=0;col<=3;col++) {
     escreva("Informe a posição [",lin+1,",",col+1,"]: ")
     leia(M1[lin][col])
     M2[col][lin]=M1[lin][col]
  }
}
	 
	para (lin=0;lin<=3;lin++) {
  para (col=0;col<=3;col++) {
     escreva("Informe a posição [",lin+1,",",col+1,"]: ")
     leia(M1[lin][col])
     M2[col][lin]=M1[lin][col]
  }
}
	Respondido em 28/05/2020 16:14:14
	
	
	 
	
	 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][1];
	
	int edificio[40][5];
	
	int edificio[1][40];
	Respondido em 28/05/2020 16:16:41
	
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
	
	
	
	
	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á todos os números 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 maiores 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 í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.
	Respondido em 28/05/2020 16:20:31
	
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
 
	
	
	 
	
	 8a 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 linhas da coluna índice 0.
	
	Somar todas as linhas da coluna índice 1.
	
	Somar todas as linhas de todas as colunas.
	
	Somar todas as colunas da linha índice 0.
	 
	Somar todas as colunas da linha índice 1
	Respondido em 28/05/2020 16:22:59
	
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.
	 
	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.
AVALIAÇÃO – AV
		1a
          Questão
	Acerto: 1,0  / 1,0
	
	Em Informática, os algoritmos costumam ser escritos em Portugol. Sobre o mesmo, podemos afirmar que:
I. É uma linguagem intermediária entre a linguagem natural e a linguagem de programação;
II. Costuma adotar o inglês como língua padrão para redação dos algoritmos computacionais;
III. Adota algumas regras para fins de padronização e garantia de compreensão dos algoritmos;
IV. Pode ser executado diretamente pelo computador, sem auxílio de nenhum software específico.
São verdadeiras as assertivas:
		
	
	I, II, III e IV
	
	I, II e III
	
	III e IV
	
	I e II
	 
	I e III
	Respondido em 29/05/2020 09:05:07
	
		2a
          Questão
	Acerto: 1,0  / 1,0
	
	O computador não entende o conteúdo do arquivode texto contendo o seu programa. Ele precisa ser convertido em uma linguagem que o computador entende, para poder executar o programa. Este processo é chamado de:
		
	
	Depuração
	
	Tradução
	
	Programação
	 
	Compilação
	
	Execução
	Respondido em 29/05/2020 09:05:46
	
		3a
          Questão
	Acerto: 1,0  / 1,0
	
	Assinale a alternativa que apresenta APENAS operadores relacionais.
		
	
	&&, || e ~
	
	+, - e *
	
	=, > e ||
	
	&&, >= e ||
	 
	<, > e >=
	Respondido em 29/05/2020 09:08:33
	
		4a
          Questão
	Acerto: 1,0  / 1,0
	
	Imagine que você viajou para os Estados Unidos e está muito confuso com a forma como os americanos medem a temperatura, que é em Fahrenheit. Para ficar com menos dúvidas, você decide criar um algoritmo que, dada uma temperatura em Fahrenheit, exiba seu equivalente em graus Celsius. Com base na sintaxe do Portugol Studio, qual das alternativas a seguir apresenta o trecho da solução a ser escrito no lugar das interrogações a seguir?
programa {
  funcao inicio( ) {
    ????????
  }
}
		
	
	escreva("Temperatura em Fahrenheit: ")
leia(tempF)
tempC=(tempF-32)/1.8
escreva("Temperatura em graus Celsius: ", tempC)
	
	real tempF, tempC
escreva("Temperatura em Fahrenheit: ")
tempC=(tempF-32)/1.8
escreva("Temperatura em graus Celsius: ", tempC)
	 
	real tempF, tempC
escreva("Temperatura em Fahrenheit: ")
leia(tempF)
tempC=(tempF-32)/1.8
escreva("Temperatura em graus Celsius: ", tempC)
	
	real tempF, tempC
escreva("Temperatura em Fahrenheit: ")
leia(tempF)
tempC=(tempF-32)/1.8
	
	real tempF, tempC
escreva("Temperatura em Fahrenheit: ")
leia(tempF)
escreva("Temperatura em graus Celsius: ", tempC)
	Respondido em 29/05/2020 09:24:26
	
		5a
          Questão
	Acerto: 1,0  / 1,0
	
	Escolha a alternativa abaixo que completa o sentido da frase:
O uso das _________________ é obrigatório quando for usada mais de uma instrução dentro da estrutura de decisão, if (o comando "se" em Portugol), logo, usar sempre não ocasionará problemas.
		
	
	aspas duplas
	
	palavras reservadas
	
	aspas simples
	 
	chaves
	
	strings
	Respondido em 29/05/2020 09:26:23
	
		6a
          Questão
	Acerto: 0,0  / 1,0
	
	
A linguagem C++ possui estruturas de decisão, as quais podem mudar a sequência de execução dos comandos. Analise o trecho de programa abaixo e assinale a alternativa que corresponda a estrutura de decisão utilizada.
int main() {
int num;
cout<<"Digite um número: ";
cin>> num;
(num > 0)?cout<< num  : cout<<" Número negativo ";
return 0;
}
		
	 
	Estrutura condicional de comando simples
	
	aninhamento de if
	
	Estrutura condicional de comando composto
	 
	Operador ternário
	
	comando switch
	Respondido em 29/05/2020 09:35:42
	
		7a
          Questão
	Acerto: 1,0  / 1,0
	
	Assinale a alternativa correta em relação a quantidade de vezes que a palavra "PAZ" será impressa, no trecho de código abaixo:
x = 50;
do{
y = 8;
do{
cout<<"PAZ \n";
y++;
} while ( y <10);
x--;
}while ( x > 48);
		
	
	6 vezes
	
	8 vezes
	
	7 vezes
	
	5 vezes
	 
	4 vezes
	Respondido em 29/05/2020 10:22:42
	
		8a
          Questão
	Acerto: 1,0  / 1,0
	
	Imagine que você precisa criar um laço capaz de receber o nome e as notas bimestrais de um teste e uma prova de trinta alunos. Para cada um deles, é preciso calcular e mostrar a média do bimestre e informar se o aluno está na média (nota mínima 7) ou abaixo dela. Considerando que o código será escrito em C++, qual das opções a seguir apresenta as linhas de código do laço?
		
	
	while (cont=1;cont<=30;cont++) {
  cout <<"Informe as notas do aluno ";
  cout <<"Teste: "; cin >>Teste;
  cout <<"Prova: "; cin >>Prova;
  Media = (Teste+Prova)/2;
  cout <<"A média do aluno é " << Media;
  if (Media>=7)
  { cout <<"Você está na média!";  }
  else
  { cout <<"Você está abaixo da média!";  }
}
	 
	for (cont=1;cont<=30;cont++) {
  cout <<"Informe as notas do aluno ";
  cout <<"Teste: "; cin >>Teste;
  cout <<"Prova: "; cin >>Prova;
  Media = (Teste+Prova)/2;
  cout <<"A média do aluno é " << Media;
  if (Media>=7)
  { cout <<"Você está na média!";  }
  else
  { cout <<"Você está abaixo da média!";  }
}
	
	do (cont=1;cont<=30;cont++) {
  cout <<"Informe as notas do aluno ";
  cout <<"Teste: "; cin >>Teste;
  cout <<"Prova: "; cin >>Prova;
  Media = (Teste+Prova)/2;
  cout <<"A média do aluno é " << Media;
  if (Media>=7)
  { cout <<"Você está na média!";  }
  else
  { cout <<"Você está abaixo da média!";  }
}
	
	for (cont=1;cont<=30;cont+=2) {
  cout <<"Informe as notas do aluno ";
  cin <<"Teste: "; cout >>Teste;
  cin <<"Prova: "; cout >>Prova;
  Media = (Teste+Prova)/2;
  cout <<"A média do aluno é " << Media;
  if (Media>=7)
  { cin <<"Você está na média!";  }
  else
  { cin <<"Você está abaixo da média!";  }
}
	
	for (cont=30;cont<=0;cont++) {
  cout <<"Informe as notas do aluno ";
  cout <<"Teste: "; cin >>Teste;
  cout <<"Prova: "; cin >>Prova;
  Media = (Teste+Prova)/2;
  cout <<"A média do aluno é " << Media;
  if (Media<7)
  { cout <<"Você está na média!";  }
  else
  { cout <<"Você está abaixo da média!";  }
}
	Respondido em 29/05/2020 10:01:22
	
		9a
          Questão
	Acerto: 1,0  / 1,0
	
	Um vetor é uma estrutura _____________ e _____________ para armazenamento de um _____________ que deve ser _____________.
		
	 
	unidimensional - homogênea - conjunto de valores - do mesmo tipo
	
	unidimensional - homogênea - único valor - de tipos variados
	
	unidimensional - heterogênea - único valor - de tipos variados
	
	bidimensional - homogênea - único valor - do mesmo tipo
	
	bidimensional - heterogênea - conjunto de valores - do mesmo tipo
	Respondido em 29/05/2020 10:02:08
	
		10a
          Questão
	Acerto: 1,0  / 1,0
	
	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];
	
	char valores[30][2];
	 
	float valores[30][3];
	
	float valores[32];
	
	float valores[30][2];

Outros materiais