Buscar

PROGRAMAÇÃO ESTRUTURADA EM C ++ SIMULADOS

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

PROGRAMAÇÃO ESTRUTURADA EM C – SIMULADOS 
AULA 1 – INTRODUÇÃO A PROGRAMAÇÃO ESTRUTURADA EM C 
 1a Questão 
 
 
 Assinale a opção que, corretamente, mostra exemplos de linguagens de programação. 
 
 
C++, C# e fluxograma 
 C++, Java, C# 
 
fluxograma, português estruturado, C 
 
português estruturado, C++, Java 
 
C++, Java, portugol 
Respondido em 12/04/2020 02:42:17 
 
 
Explicação: 
Exemplos dados na aula 1. 
 
 
 
 
 2a Questão 
 
 
 Sobre fluxograma, assina a opção correta. 
 
 
É uma forma de se representar o uso de hardware no programa. 
 
É uma representação gráfica de algoritmos que dá margem à dupla interpretação ou ambiguidades. 
 
É 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 . 
 
É usado na escrita de pseudolinguagens, como o Portugol. 
Respondido em 12/04/2020 02:42:35 
 
 
Explicação: 
É uma forma de se representar graficamente algoritmos e que não dá margem à ambiguidades, como 
ensinado na aula 1 online. 
 
 
 
 
 3a Questão 
 
 
 Sobre algoritmo, marque a opção correta. 
 
 
É uma linguagem de programação para computadores. 
 
É um hardware especifico para resolver problemas. 
 
É uma forma de ensinar o computador. 
 
É uma etapa posterior à programação da solução de um problema. 
 É a solução teórica, passo a passo, de um problema. 
Respondido em 12/04/2020 02:42:45 
 
 
 
 
 4a Questão 
 
 
 Observe as assertivas a seguir acerca dos fluxogramas: 
I. Os mesmos são a representação gráfica dos algoritmos. 
II. Para desenhá-los, é preciso adotar uma simbologia padrão pré-determinada. 
III. Existem programas que permitem que os mesmos sejam desenhados no computador. 
Assinale a seguir a alternativa que indica as afirmações corretas: 
 
 
I e II. 
 
II e III. 
 
I e III 
 I, II e III. 
 
Todas são falsas. 
Respondido em 12/04/2020 02:43:05 
 
 
 
 
 5a Questão 
 
 
 Imagine que você vai receber um aumento e deseja descobrir qual será seu novo salário a partir de seu 
salário atual e do percentual de aumento a ser concedido por sua empresa. É preciso somar o salário atual 
ao percentual de aumento, que deve ser calculado multiplicando-se esse percentual pelo salário atual e 
dividindo-se por 100. Que fórmula realiza esse cálculo? 
 
 novoSal <- salAtual + (salAtual*percAumento/100) 
 
novoSal <- salAtual + (salAtual*percAumento) 
 
novoSal <- salAtual + (percAumento/100) 
 
novoSal <- salAtual + (salAtual*100) 
 
novoSal <- (salAtual*percAumento/100) 
Respondido em 12/04/2020 02:47:45 
 
 
 
 
 6a 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. 
 
 N, G, P 
 N, P, G 
 G, N, P 
 P, N, G 
 G, P, N 
Respondido em 12/04/2020 02:49:13 
 
 
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 >>> 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 7a Questão 
 
 
 Observe o fluxograma a seguir e assinale a alternativa correta sobre o mesmo: 
 
 
 
 
 
No cálculo da idade, inverteram-se as posições dos anos e, por isso, a idade resultante será sempre 
negativa. 
 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. 
 
A simbologia empregada no recebimento de dados está equivocada e foi trocada por aquela que 
representa exibição de informações. 
 
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. 
Respondido em 12/04/2020 02:44:24 
 
 
 
 
 8a Questão 
 
 
 Assinale a alternativa correta relacionada à característica de um algoritmo: 
 
 
Variáveis do tipo real e inteiro aceitam, respectivamente, letras e números. 
 
Teste de Mesa serve para receber os comandos de entrada. 
 
Para cada variável pode ser definido mais de um tipo de dado. 
 A execução de um algoritmo é feita sequencialmente. 
 
Valores de entrada são recebidos através do monitor. 
Respondido em 12/04/2020 02:44:53 
 
 
 
 1a Questão 
 
 
 Sobre o FLUXOGRAMA abaixo podemos afirmar que : 
 
 
 
Apresenta na sua lógica a estrutura básica REPETIÇÃO 
 
Apresenta na sua lógica as estruturas básicas de SEQUÊNCIA e REPETIÇÃO 
 
Apresenta na sua lógica as três estruturas básicas de programação 
 
Apresenta na sua lógica as estruturas de DECISÃO e REPETIÇÃO 
 Apresenta na sua lógica a estrutura básica DECISÃO 
Respondido em 12/04/2020 02:50:10 
 
 
Explicação: 
Justificativas das opções : 
>> Apresenta na sua lógica as três estruturas básicas de programação . 
 Falso. Não apresenta repetição 
>> Apresenta na sua lógica a estrutura básica REPETIÇÃO 
Falso. Apresenta apenas entrada de dados, saída de dados, atribuição, condicional composto. 
>> Apresenta na sua lógica as estruturas básicas de SEQUÊNCIA e REPETIÇÃO 
Falso. Não apresenta repetição. 
>> Apresenta na sua lógica a estrutura básica DECISÃO. 
Verdadeiro. Veja o uso do losango. 
>> Apresenta na sua lógica as estruturas de DECISÃO e REPETIÇÃO 
Falso. Não apresenta repetição. 
 
 
 
 
 2a Questão 
 
 
 Assinale a opção correta. Considerando o conceito de programa é correto afirmar que ... 
 
 
Um programa é um algoritmo escrito em linguagem natural, mas sem ambiguidades. Ou seja, é um 
conjunto de comandos que representam tarefas que serão compreendidas por um computador. 
 Um programa é um algoritmo codificado em uma linguagem de programação, isto é, um conjunto de 
instruções/funções que representam tarefas que serão interpretadas e executadas por um computador. 
 
Um programa é um algoritmo codificado em uma pseudolinguagem, isto é, um conjunto de 
instruções/funções que representam tarefas que serão apenas executadas por um computador. 
 
Um programa é um algoritmo codificado em uma linguagem de gráfica (ex: fluxograma), isto é, um 
conjunto de instruções que representam tarefas que serão apenas interpretadas por um computador. 
 
Um programa é um algoritmo codificado em uma pseudolinguagem, isto é, um conjunto de 
instruções/funções que representam tarefas que serão interpretadas e executadas por um computador. 
Respondido em 12/04/2020 02:50:58 
 
 
 
 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. 
 
 
 
 
Média 
 
Fim 
 N1 e N2 
 
Aprovado 
 
Reprovado 
Respondido em 12/04/2020 02:51:26 
 
 
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. 
 
 
Programa e fluxograma são sinônimos. 
 
Um programa é um algoritmo codificado em uma pseudolinguagem. 
 
Para se escrever um programa não precisa se conhecer lógica de programação, pois o fundamental 
é a linguagem de programação. 
 Um programa é um algoritmo codificado em uma linguagem de programação. 
 
Um programa é um algoritmo codificado em linguagem natural. 
Respondido em 12/04/2020 02:51:43 
 
 
 
 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: 
 
 
Todas as alternativas são CORRETAS 
 
Apenas as alternativas II e III são INCORRETAS 
 Apenas as alternativas I e III são CORRETAS 
 
Apenas as alternativas I e II são CORRETAS 
 
Apenas a alternativa I é CORRETA 
Respondido em 12/04/2020 02:53: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 : 
 
 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 à linguagem de programação na língua portuguesa 
 
É igual ao fluxograma 
 
É igual a uma carta para um encarregado 
 
É igual à linguagem natural ou narrativa 
Respondido em 12/04/2020 02:52:39 
 
 
Explicação: 
Definição direta e objetiva dada na aula 1. 
 
AULA 2 – CONCEITOS BÁSICOS DE PROGRAMAÇÃO 
 1a Questão 
 
 
 
Assinale a opção correta. 
 
 Declarando e atribuindo um valor à uma variável booleana em 
C++ : 
 bool x = "true"; 
 Uma possível declaração de uma variável inteira em C++ : x 
int; 
 As variáveis do tipo bool podem ser true ou false. 
 Uma possível declaração de uma variável booleana em C++ 
: boolean x; 
 Declarando e atribuindo um valor à uma variável booleana em 
C++ : 
 boolean x = true ; 
Respondido em 13/04/2020 17:54:12 
 
 
Explicação: 
DE acordo com a sintaxe da linguagem C++ 
 
 
 
 
 2a Questão 
 
 
 
Assinale a opção correta: 
 
 Programas em C++ são interpretados e não compilados 
 Não se pode escrever programa em C++ que execute no 
Mac. 
 É o linker que traduz o todo programa feito em C++. 
 Os programas em C++ precisam ser traduzidos para 
uma linguagem que o computador entenda. 
 Um programa escrito em C++ que executa no Linux não 
vai executar no Windows. 
Respondido em 13/04/2020 17:54:27 
 
 
Explicação: 
Basta seguir a definição de programa dada na aula de conceitos introdutórios. 
 
 
 
 
 3a Questão 
 
 
 Assinale a opção correta. 
 
 Dizemos que uma linguagem é de alto nível quando conseguimos ler e escrever usando palavras 
conhecidas por nós. 
 
O C++ não é uma linguagem de alto nível, pois usa palavras em Inglês que nem todos entendem. 
 
O C++ é uma linguagem de alto nível na qual o uso de variáveis é opcional. 
 
Para programar em alto nível é preciso dominar a linguagem binária. 
 
Dizemos que uma linguagem é de alto nível quando usa linguagem binária. 
Respondido em 13/04/2020 17:53:46 
 
 
Explicação: 
 
 
 
 
 
 4a Questão 
 
 
 Selecione, entre as alternativas, a opção correta, tendo em vista a frase: Necessita de espaço na memória e 
define o tipo de dado a ser armazenado. 
 
 
Comando PARA 
 
Estrutura de Seleção 
 
atribuição 
 
Comando Enquanto-Faça 
 Variável 
Respondido em 13/04/2020 17:53:05 
 
 
 
 
 5a Questão 
 
 
 Assinale a opção correta. O que quer dizer main ? 
 
 
estruturado, de português estruturado 
 principal 
 
algoritmo 
 
programa 
 
portugol 
Respondido em 13/04/2020 17:52:50 
 
 
Explicação: 
Basta saber a tradução. 
 
 
 
 
 6a 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 dispositivo de memória auxiliar. 
 Um elemento da unidade lógica de controle. 
Respondido em 13/04/2020 17:52:39 
 
 
 
 
 7a Questão 
 
 
 Faz parte do desenvolvimento de uma algoritmo declarar as variáveis que armazenarão dados a ser 
manipulados pelo algoritmo. De acordo com as regras para criação dos nomes para as variáveis, assinale a 
alternativa que possui um exemplo de nome INCORRETO: 
 
 cad1- id 
 
salariofinal 
 
nome_aluno 
 
num1 
 
nota2 
Respondido em 13/04/2020 17:51:47 
 
 
 
 
 8a Questão 
 
 
 
Assinale a opção correta: 
 
 Os programas em C++ não possuem palavras reservadas. 
 Os programas em C++ possuem palavras reservadas tais 
como main e int. 
 Para terminar um programa em C++ devemos usar retorne 
0; 
 Não são palavras reservadas em C++ : for, while e do 
 São palavras reservadas no C++ : int, real, inteiro, float 
 
 1a Questão 
 
 
 As palavras que fazem parte de um conjunto próprio da linguagem C++ são chamadas: 
 
 
palavras código 
 
palavras próprias 
 
palavras especiais 
 
palavras únicas 
 palavras reservadas 
Respondido em 13/04/2020 17:57:26 
 
 
Explicação: 
Não tem outra possibilidade com margem à dúvida. Por definição, é palavra reservada. 
 
 
 1
a
 Questão 
 
 
 No C++, é possível declarar variáveis e constantes. Uma constante é um espaço da memória reservado a 
um valor que não se altera ao longo da execução de um programa. Imaginando que você precise de uma 
constante para armazenar o valor de PI (3,14), como seria feita sua declaração em C++? 
 
 
float PI=3.14; 
 
const int PI=3.14; 
 
const integer PI=3.14; 
 const float PI=3.14; 
 
const real PI=3.14; 
Respondido em 13/04/2020 17:59:13 
 
 
 
 
 2a Questão 
 
 
 
Considerando a linguagem C++, assinale a opção correta : 
 
 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. 
 Se declararmos uma variável inteira nota, podemos escrever 
NOTA, Nota, ou qualquer outra variação, pois é a mesma 
coisa. 
 Nem toda variável precisa ser declarada. 
 Alguns programas em C++ começam com float main e outros 
com int main 
 A linguagem C++ diferencia maiúsculas de minúsculas 
Respondido em 13/04/2020 17:59:36 
 
 
Explicação: 
BAsta seguir as descrições e características da linguagem C++ na aula sobre variáveis 
 
 
 
 
 3a Questão 
 
 
 Quanto à linguagem de programação, marque a opção que determina o processo que efetua integralmente 
a tradução de um programa fonte para o código de máquina, podendo assim ser executado diretamente.Compilação 
 
Evolução 
 
Determinação 
 
Linkedição 
 
Orientação 
Respondido em 13/04/2020 18:00:30 
 
 
Explicação: 
Compilação é o processo que efetua integralmente a tradução de um programa fonte para o código de 
máquina, podendo assim ser executado diretamente. 
 
 
 
 
 4a Questão 
 
 
 Um restaurante self-service vende comida por peso e cobra R$ 34,90 por quilo consumido. Sabendo que o 
preço a ser pago pelo cliente é calculado a partir do peso de seu prato multiplicado pelo valor do quilo, o 
trecho de declaração de variáveis em C++ que seria necessário em um programa capaz de informar ao 
cliente o valor a pagar é: 
 
 float quilo = 34.90; float prato = 0; float valor_pagar = 0; 
 
char quilo = 34.90; char prato = 0; char valor_pagar = 0; 
 
real quilo = 34.90; real prato = 0; real valor_pagar = 0; 
 
int quilo = 34.90; int prato = 0; int valor_pagar = 0; 
 
bool quilo = 34.90; bool prato = 0; bool valor_pagar = 0; 
Respondido em 13/04/2020 18:02:51 
 
 
 
 
 5a Questão 
 
 
 
O linha de programa que representa a ação "processamento" em um 
algoritmo em pseudolinguagem é: 
 
 
se 
 
leia 
 
programa 
 
enquanto 
 valor <- valor + 1; 
Respondido em 13/04/2020 18:02:41 
 
 
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: 
 
 Na linguagem C++ temos que não há distinção entre 
maiúsculas e minúsculas. 
 Para terminar um programa podemos escrever : return; 
 Sem endentação o programa não compila 
 Todas as instruções de um programa em C++ devem estar 
entre chaves 
 Para saída de dados usamos cin com o operador << 
Respondido em 13/04/2020 18:02:20 
 
 
Explicação: 
Basta considerar o que é descrito da linguagem na aula 2 
 
 
 
 
 7a Questão 
 
 
 
Assinale a opção correta : 
 
 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 
 O tipo int serve para variáveis inteiras ou reais, de pouca 
precisão 
 Não se pode usar o underscore ou sublinhado em nome de 
variável, mas apenas letras e dígitos. 
 Quando declaramos variáveis do mesmo tipo usamos o ponto 
e vírgula para separá-las. 
Respondido em 13/04/2020 18:02:03 
 
 
Explicação: 
De acordo com as descrições e características apresentadas na aula sobre variáveis. 
 
 
 
 
 8a Questão 
 
 
 Sobre a linguagem de programação C++, é correto afirmar que a mesma: 
I. Não permite a criação de variáveis do tipo lógico; 
II. É case sentive, ou seja, faz distinção entre letras maiúsculas e minúsculas; 
III. Permite que os identificadores de variáveis iniciem pelo caractere sublinhado ("_"); 
IV. É fracamente tipada; o que permite que uma variável seja declarada sem que seu tipo seja definido. 
 
 
I, II e III são verdadeiras. 
 II e III são verdadeiras. 
 
II, III e IV são verdadeiras. 
 
I e IV são verdadeiras. 
 
I e II são verdadeiras. 
 
 7a 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; 
 
bool qtde25, qtde50, qtde1, quantiaTotal; 
 float qtde25, qtde50, qtde1, quantiaTotal; 
 
string qtde25, qtde50, qtde1, quantiaTotal; 
 
char qtde25, qtde50, qtde1, quantiaTotal; 
 
AULA 3 – EXPRESSÕES E TABELA VERDADE 
 
 
 1a Questão 
 
 
 Assinale a alternativa que apresenta APENAS os exemplos de operadores relacionais. 
 
 
=, > e || 
 <, > e >= 
 
&&, || e ~ 
 
&&, >= e || 
 
+, - e * 
Respondido em 14/04/2020 12:34:40 
 
 
 
 
 
 
 
 2a Questão 
 
 
 
Monte a tabela da verdade para a expressão A || B && C && !A. 
A B C !A B && C B && C && !A A || B && C && !A 
V V V F V F 
V V F F F F 
V F V F F F 
V F F F F F 
F V V V V V 
F V F V F F 
F F V V F F 
F F F V F F 
A sequência de valores que preenche a última coluna, de cima para baixo, é: 
 
 
F, F, F, F, F, V, V, V 
 
V, V, F, F, V, V, F, F 
 
F, V, F, V, V, F, V, F 
 V, V, V, V, V, F, F, F 
 
V, F, V, F, V, F, V, F 
Respondido em 14/04/2020 12:37:43 
 
 
 
 
 3a Questão 
 
 
 Indique qual o tercho em C++ que calcula corretamente a média 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 14/04/2020 12:38:05 
 
 
Explicação: 
Conforme aula e gabarito. É importante primeiro somar as notas e depois dividir por 2. 
 
 
 
 
 4a 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 14/04/2020 12:38:29 
 
 
Explicação: 
MEDIA = (AV1 + AV2) / 2; - OK 
 
 
 
 
 5a 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 é VERDADEIRA, e o valor de X * X + Y = 5. 
 
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 é VERDADEIRA, e o valor de X * X + Y = 3. 
 
A expressão é FALSA, e o valor de X * X + Y = 4. 
Respondido em 14/04/2020 12:40:55 
 
 
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. 
 
 
 
 
 
 6a Questão 
 
 
 Assinale a alternativa que apresenta APENAS os exemplos de operadores lógicos. 
 
 
=, > e ? 
 
!, > e >= 
 
+, - e * 
 
&&, >= e <= 
 &&, || e ! 
Respondido em 14/04/2020 12:38:28 
 
 
 
 
 7a 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 14/04/2020 12:38:59 
 
 
Explicação: 
A || B && C && !D 
|| = OU 
&& = E 
! = não 
 
 
 
 
 8a Questão 
 
 
 Considerando os seguintes conteúdos para as variáveis: 
 a = 2, b = 5 e c = 4 
Determine qual das sentenças retornará verdadeiro. 
 
 
(b + 2) > (a * c) 
 
a == c 
 ((b = 2) == a) 
 
pow(c,a) > b * c 
 
(b % a) == 0 
Respondido em 14/04/2020 12:47:56 
 
 
Explicação: 
a == c --> falso, pois a é diferente c 
(b + 2) > (a * c) -> falso, pois 7 > 8 é falso 
((b = 2) == a) , verdade, pois a = 2 
 
 
Assinale a opção correta. 
 
 Os operadores matemáticos são : +, - , *, / e %. 
 
São operadores lógicos : &&, ||, != 
 
os operadores matemáticos não tem precedência de uso 
 
São operadores relacionais : = , > , < 
 
As expressões lógicas retornam valores inteiros 
Respondido em 14/04/2020 13:00: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 
 
 
 
 
 
 
 8a Questão 
 
 
 Considerando os seguintes conteúdos para as variáveis: 
 a = 2, b = 5 e c = 4 
Determine qual das sentenças retornará verdadeiro. 
 
 
(b % a) == 0 
 
a == c 
 ((b = 2) == a) 
 
pow(c,a) > b * c 
 
(b + 2) > (a * c) 
Respondido em 14/04/2020 12:59:44 
 
 
Explicação: 
a == c --> falso, pois a é diferente c 
(b + 2) > (a * c) -> falso, pois 7 > 8 é falso 
((b = 2) == a) , verdade, pois a = 2 
 
 
 
 
 
 
 
 
 
 
 7a Questão 
 
 
 Assinale a opção correta. 
 
 Os operadores matemáticos são : +, - , *, / e %. 
 
São operadores lógicos : &&, ||, != 
 
os operadores matemáticos não tem precedência de uso 
 
São operadores relacionais : = , > , < 
 
As expressões lógicas retornam valores inteiros 
Respondido em 14/04/2020 13:00: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 
 
5a Questão 
 
 
 Se você desejar escrever a expressão A|| B && C && !D em um algoritmo no Portugol Studio, como a 
mesma ficaria? 
 
 
A e B ou C nao D 
 A ou B e C e nao D 
 
A e B ou C ou nao D 
 
A ou B e C e D 
 
A ou nao B e nao C e nao D 
 
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 14/04/2020 13:06:19 
 
 
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 
 
 
Aula 4 – Entrada e Saída de Dados 
 
1a Questão 
 
 
 
Assinale a opção correta : 
 
 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 cin com >> e para saída de 
dados usamos cout com << 
 Para entrada de dados usamos cin com << e para saída de 
dados usamos cout com >> 
 Para entrada de dados usamos read e para saída de dados 
usamos write 
Respondido em 14/04/2020 19:09:20 
 
 
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? 
 
 
"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." 
 
"Com R$ qtdeDin você consegue abastecer mat.arredondar(qtdeLitros,2) litros de combustível." 
 
"Você consegue abastecer 51.28 litros de combustível." 
 "Com R$ 200.00 você consegue abastecer 51.28 litros de combustível." 
 
(Só apareceu duas questões) 
1- 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 _______________. 
R: locale - setlocale 
2- 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? 
 R: real tempF, tempC 
escreva("Temperatura em Fahrenheit: ") 
leia(tempF) 
tempC=(tempF-32)/1.8 
escreva("Temperatura em graus Celsius: ", tempC) 
3- Para exibir o valor da variável x do tipo inteiro em C++ deve ser utilizado o comando: 
R: cout << x; 
4- A sintaxe de uma linguagem de programação: R: define a forma como os comandos e 
as estruturas da linguagem devem ser utilizados. 
5- 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: 
R: V - V - F 
( ) Verificar erros de sintaxe no programa; ( ) Produzir 
um outro programa em linguagem de máquina; ( ) Executar o programa 
sem necessidade de conversão alguma. 
 
 
6- Sabemos que existem dois comandos (cin e cout), definidos na biblioteca iostream, que 
não são nativamente definidos pela linguagem e servem para fazer a entrada e saída de 
dados. Dessa forma, assinale a alternativa que corresponde ao comando que faz a 
leitura do valor digitado e o armazena na variável celsius. R: cin >> 
celsius; 
(Questões do colega) 
 
Aula 5 ESTRUTURAS DE REPETIÇÃO 
 
 
 1a 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; 
} 
 
 
0, 6 e 7 
 1, 7 e 7 
 
1, 6 e 7 
 
1, 6 e 16 
 
1, 7, 17 
Respondido em 15/04/2020 11:42:14 
 
 
 
 
 
 
 
 
 
 2a 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. 
 
 
Apenas a alternativa i está correta. 
 
Apenas a alternativa iii está correta. 
 
Todas as alternativas estão erradas. 
 
Apenas a alternativa ii está correta. 
 Todas as alternativas estão corretas. 
Respondido em 15/04/2020 11:42:51 
 
 
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ão simples. Portanto todas as afirmativas estão 
corretas. 
 
 
 
 
 3a Questão 
 
 
 Analise o trecho abaixo que um aluno desenvolveu na linguagem C++ e escolha a opção onde estãoos 
valores que aprecem na tela. 
int x = 4, y = 14, t; 
float z; 
if( x < y ) { t=x; x=y; y=t;} 
z = (x % y) / y; 
cout << x << " " << y << " " << z ; 
 
 
4 14 0.5 
 14 4 0 
 
14 4 0.5 
 
4 14 0 
 
0.5 4 14 
Respondido em 15/04/2020 11:47:51 
 
 
Explicação: O operador / quando ambos são inteiros resulta em um quociente inteiro 
 
 
 
 
 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 
 
x = 10 y = 12 z = 0 k = 0 
 11 11 2 0 
 
10 12 2 0 
 
x = 10 y = 12 z = 0.833 k = 0 
Respondido em 15/04/2020 11:56:24 
 
 
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 
 
 
 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 << "\n"; 
 
 
10 12 0.833 1.2 
 
x = 10 y = 12 z = 0.833 k = 1.2 
 
10 12 0 2 
 x= 10 y = 12 z = 0 k = 2 
 
Nada é impresso na tela, pois k é zero. 
Respondido em 15/04/2020 12:01:06 
 
 
Explicação: 
É preciso fazer um teste de mesa ou chinês e encontrar a resposta correta, como indicado. Para isso, o 
conteúdo da aula 5 é suficiente, junto com declaração de variáveis de aula anterior. 
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 << "\n"; 
 
Teste de mesa 
x y z k 
10 3 
 12 0 2 
 
y recebe 10+3-1, que é 12. Logo, y recebe 12 
z recebe x/y, que é 10/12 que dá zero. 
k recebe 12%10, que dá 2. 
Como k é diferente de 0 temos que será impresso : 
x = 10 y = 12 z = 0 k = 2 
 
 
 
 
 6a Questão 
 
 
 Para satisfazer a regra de que para fazer AV3 o aluno deve ter nota maior ou igual a 4 em pelo menos uma das 
outras duas Avaliacoes, qual seria a sentença correta 
 
 
Nenhuma outra alternativa satisfaz 
 
Se (AV1 > 4) ou (AV2 > 4) 
 
Se (AV1 > 4) e (AV2 > 4) 
 Se (AV1 >= 4) ou (AV2 >= 4) 
 
Se (AV1 >= 4) e (AV2 >= 4) 
Respondido em 15/04/2020 12:01:55 
 
 
 
 
 
 7
a
 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 é 10 e na 2ª. execução o valor de entrada é 0. Para isso, 
considere o seguinte trecho em C++. 
 int num; 
 cout << "Digite um numero: "; 
 cin >> num; 
 if (num > 0) 
 { 
 num++; 
 cout << num << " "; 
 } 
 cout << num + 1 << " "; 
 if (num < 0) 
 { 
 num--; 
 cout << num << " "; 
 } 
 else 
 cout << num * 10 ; 
 
 
 
 11 110 1 0 
 
 11 110 1 10 
 
 11 12 110 1 0 
 
 11 12 110 
 
 11 110 1 0 
 
Respondido em 15/04/2020 12:05:30 
 
 
 
 
 8a Questão 
 
 
 No C++, a estrutura seletiva if permite que sejam avaliadas condições para que, a partir do resultado 
dessa avaliação, o programa decida o trecho a ser executada. Imaginando que você precisa avaliar se um 
número armazenado na variável num é positivo, negativo, ou nulo, que alternativa apresenta o trecho da 
condição seletiva necessário para este teste? 
 
 if (num>0) 
{ cout <<"Este número é positivo!";} 
else if (num<0) 
{ cout <<"Este número é negativo!";} 
else 
{ cout <<"Este número é nulo!";} 
 
 
 
 
 
 
 1a 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 ; 
 
 
0 13 4 
 
0 4 13 
 
4 13 13 
 13 4 13 
 
13 13 4 
Respondido em 15/04/2020 12:11:34 
 
 
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 
 
 
 
 
 
 
 2a Questão 
 
 
 Sobre a estrutura seletiva "se", pode-se afirmar que ela 
( ) permite que novas estruturas seletivas sejam definidas dentro dela; 
( ) restringe a execução de um trecho do código à veracidade, ou não, de uma ou mais condições; 
( ) não permite o teste de condições que combinem, na mesma expressão, operadores de tipos distintos; 
 
 
F - F - F 
 
V - V - V 
 
F - V - F 
 
V - F - V 
 V - V - F 
Respondido em 15/04/2020 12:12:31 
 
 
 
 
 
 
 3a Questão 
 
 
 Considere um programa em C++ que recebe um número inteiro qualquer e informe se ele é par ou ímpar. 
a estrutura seletiva adequada para teste do número é: 
 
 if (resto==0) 
 {cout <<"Este número é par!";} 
else 
 {cout <<"Este número é ímpar!";} 
Respondido em 15/04/2020 12:13:06 
 
 
 
 
 4a 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 ; 
 
 
 8 10 40 
 
 9 8 10 9 
 
 9 40 
 
 9 6 10 9 
 
 9 8 10 40 
 
Respondido em 15/04/2020 12:20:27 
 
 
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 
 
 
 
 
 5a Questão 
 
 
 Em linguagem de programação, existe uma estrutura que é empregada em situações em que é preciso 
tomar uma decisão a respeito de determinado resultado que será obtido em duas situações diversas. 
Marque a opção que determina a estrutura de controle citada: 
 
 
Matricial 
 
Repetição 
 
Vetorial 
 
Recursiva 
 Decisão 
Respondido em 15/04/2020 12:21:28 
 
 
Explicação: 
A opção que determina a estrutura de controle citada é a Decisã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 é 10 e na 2ª. execução o valor de entrada é 0. Para isso, 
considere o seguinte trecho em C++. 
 int num; 
 cout << "Digite um numero: "; 
 cin >> num; 
 if (num > 0) 
 { 
 num++; 
 cout << num << " "; 
 } 
 cout << num + 1 << " "; 
 if (num < 0) 
 { 
 num--; 
 cout << num << " "; 
 } 
 else 
 cout << num * 10 ; 
 
 
 
 11 12 110 1 0 
 
 11 110 1 10 
 
 11 110 1 0 
 
 11 110 1 0 
 
 11 12 110 
 
Respondido em 15/04/2020 12:24:46 
 
 
 
 
 1a Questão 
 
 
 Analise o programa abaixo e selecione a alternativa que contenha a condição correta para que o número 27 seja mostrado 
na tela. 
 
#include 
using namespace std; 
int main() 
{ 
int N1, N2; 
N1= 27; 
N2= 54; 
if ( ______________ ) 
{ 
 cout<< N2; 
} 
else 
{ 
 cout<< N1; 
} 
return 0; 
} 
 
 
 
N1 < N2 && N1 < 50 
 N1 > N2 || N2 < 50 
 
N2 > N1 || N1 > 50 
 
N2 == N1 || N2 > 20 
 
N1 < N2 && N1 > 20 
 
No C++, a estrutura seletiva if permite que sejam avaliadas condições para que, a partir do resultado dessa 
avaliação, o programa decida o trecho a ser executada. Imaginando que você precisa avaliar se um número 
armazenado na variável num é positivo, negativo, ou nulo, que alternativa apresenta o trecho da condição 
seletiva necessário para este teste? 
 
CORRETA 
 
if (num>0) 
{ cout <<"Este número é positivo!";} 
else if (num<0) 
{ cout <<"Este número é negativo!";} 
else 
{ cout <<"Este número é nulo!";} 
 
 
 3a 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 erradas. 
 
Apenas a alternativa iii está correta. 
 
Apenas a alternativa i está correta. 
 
Apenas a alternativa ii está correta. 
 Todas as alternativas estão corretas. 
Respondido em 15/04/2020 12:32:34 
 
 
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ão simples. Portanto todas as afirmativas estão 
corretas. 
 
Considere um programa em C++ que leia os valores A, B, C e informe se a soma dos dois primeiros termos é 
maior do que o terceiro. A estrutura seletiva adequada para esse teste é: 
 if ((A+B)>C) 
{ cout << "A soma de A e B é maior do que C!"; } 
 
Quando estudamos sobre a estrutura do se ... entao...senao, sempre nos é dito que, quando 
tivermos duas possibilidades de respostas, devemos escolher a estrutura do se 
composto ao invés de usar duas estruturas do se simples. 
Observe as afirmativas abaixo e, depois, escolha a resposta que respalda o uso do se 
composto pelo que foi dito acima ao invés do se simples. 
I Maior clareza no código, mas não influência na eficiência do mesmo 
II Maior eficiência porque diminui o número de testes no código 
III Maior eficiência somente porque o código fica mais legível, visto que o resultado final é o 
mesmo 
IV Somente uma escolha do desenvolvedor, visto que o resultado o resultado final é o 
mesmo 
 
 Somente a II está correta 
 
 
 
 
 
Considere um programa em C++ que recebe um número inteiro qualquer e informe se ele é par ou ímpar. a 
estrutura seletiva adequada para teste do número é: 
 if (resto==0) 
 {cout <<"Este número é par!";} 
else 
 {cout <<"Este número é ímpar!";} 
 
 
 
 
 
 
 
Você deseja analisar se um número inteiro qualquer fornecido pelo usuário é par e positivo ou par e 
negativo. Com base na sintaxe do Portugol Studio, o trecho que realiza corretamente o teste para descobrir 
as características do número é: 
 
 escreva("Informe um número qualquer: ") 
leia(num) 
resto=num%2 
se (resto==0 e num>0) 
{ escreva("Este número é par e positivo!") } 
senao se (resto!=0 e num>0) 
{ escreva("Este número é ímpar e positivo!")} 
 
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"); 
} 
 
 
 
12 
 
-4 
 
2 
 8 
 
0 
 
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 
 22 
 
11 
 
-1 
 
2 
 
Considere o trecho de programa em C++ e assinale a opção que 
mostra o que é impresso na tela. 
int x, y, z; 
x = 10; 
y = 6; 
z = x/y; 
cout << z << " "; 
if (z > 0) 
 z = x % y; 
cout << z << " "; 
 
 
 Ocorrerá erro, pois o trecho não compila. 
 1 1 
 4 4 
 4 1 
 1 4 
 
Uma pessoa deseja verificar se o total gasto durante o mês ultrapassa o valor de seu salário. Imaginando 
que você tenha um algoritmo no qual o salário esteja armazenado na variável SAL e o total de gastos esteja 
armazenado na variável GASTOS, como deve ser escrita a estrutura seletiva responsável por testar o que 
você deseja descobrir? 
 
se (GASTOS>SAL) 
 escreva("Você gastou mais do que deveria!") 
 
 
 
 
 
 
 
 
 
 
 
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 ; 
 
 
177 235 138 
 
138 138 235 
 
177 138 235 
 138 235 138 
 
235 235 138 
Respondido em 15/04/2020 13:12:14 
 
 
Explicação: A variável m ficará com o menor valor 
 
Aula 6 - Estrutura de Seleção com múltiplas alternativas 
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 (lado1==lado2 ou lado2==lado3 ou 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!") } 
 
 
 11 50 10 
 11 10 50 10 
 11 10 50 10 2 
 11 50 10 2 
 10 50 10 2 
Respondido em 16/04/2020 17:34:29 
 
 
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 
 
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ívelpor 2"; 
 else 
 if (num % 3 == 0 && num % 5 == 0) 
 cout << num << " é divisível por 3 e por 5"; 
 else 
 cout << num << " ### " ; 
 
 7 ### 
 
 
7 não é divisível por 2. 
 
 
Apenas 7 
 
 
Nada aparece, pois o trecho de programa possui erro. 
 
 
7 é divisível por 3 e por 5. 
 
 
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 - caso, B - escolha, C - pare, D - outros casos 
 
A - se, B - caso, C - pare, D - default 
 
A - switch, B - case, C - break, D - default 
 
A - case, B - switch, C - default, D - break 
 A - escolha, B - caso, C - pare, D - outros casos 
 
Considerere um trecho de um programa em C++. Qual a variável que será alterada e para 
qual valor ela mudará ? 
int a = 2, b = 4, x = 12, y = 11, z = 3; 
 float t = 0; 
 if (x < y+z) 
 if (y != z*4 - 2) 
 t = y/z; 
 else 
 a = y % z; 
 else 
 b = z + y/x; 
 
 
 A variável b ficará 1 
 Nenhuma variável será alterada. 
 A variável b ficará 3 
 A variável t ficará 3 
 A variável a ficará 1 
 
Considere que o trecho de código em C++ foi executado 2 vezes, sendo que na 1ª. execução o valor de 
entrada foi 10 e na 2ª. execução, o valor de entrada foi 5. Ao final das duas execuções, respectivamente, o 
que foi impresso na tela ? 
 
cout << "Digite um valor : "; 
cin >> z; 
switch(z) { 
case 5 : cout << 3 * z << " "; 
case 10 : cout << 11 /2 * z << " "; 
case 20 : cout << z * z - 10 << endl; 
break; 
default : cout << "Entrada invalida. " << endl; 
} 
 
 
15 25 15 50 90 
 
15 27.5 15 55 90 
 50 90 15 25 15 
 
55 1 
 
55 90 15 27.5 15 
 
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; 
default: 
 cout <<"Código inválido!"; 
Que comando em C++ é mais indicado para ser usado em um programa que permita a escolha de uma 
opção do MENU ? Por exemplo : 1-Incluir, 2-Excluir, 3-Alterar e 9-Sair. 
 
 
do/while 
 switch / case 
 
cout / cin 
 
while 
 
for 
Respondido em 16/04/2020 17:54:59 
 
 
Explicação: 
Por definição dada em aula de comando de seleção 
 
 
 5a Questão 
 
 
 
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 composto 
 Operador ternário 
 
comando switch 
 
Estrutura condicional de comando simples 
 
aninhamento de if 
Respondido em 16/04/2020 18:04:56 
 
 
Explicação: 
Como dito no gabarito. O operador ? : equivale ao comando if ... else. 
 
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 
 
 
 
 
 
Imagine que você precisa escrever um programa que leia o nome, as 3 notas obtidas por um 
aluno nas 3 avaliações do semestre e a média dos exercícios que fazem parte da avaliação. O 
programa precisa calcular e exibir a média ponderada de aproveitamento e mostrar o conceito 
do aluno conforme as regras a seguir: 
Média de aproveitamento Conceito 
>= 9 A 
>= 7,5 e < 9 B 
>= 6 e < 7,5 C 
>= 4 e < 6 D 
< 4 E 
Qual das alternativas a seguir apresenta a estrutura seletiva que imprime o conceito do aluno? 
 if (Media>=9) (NA PERGUNTA É A RESPOSTA MAIS CLARA) 
{ cout << "A"; } 
else if (Media>=7.5 && Media<9) 
{ cout << "B"; } 
else if (Media>= 6 && Media<7.5) 
{ cout << "C"; } 
else if (Media>=4 && Media<6) 
{ cout << "D"; } 
else if (Media<4) 
{ cout << "E"; } 
 
 
 
 1a Questão 
 
 
 Às vezes me perguntam se existe alguma razão para existirem tantas formas de decisão nas linguagens 
de programação. 
Eu sempre digo: Claro que sim! 
Analise as afirmativas abaixo e escolha a opção certa. 
I Se tivermos que fazer um teste e só executar um bloco, que pode ter uma instrução ou mais instruções, 
o if simples deverá ser escolhido. 
II Se tivermos duas possibilidades de respostas, não poderemos usar dois if(s) simples, onde o teste de 
um é o complementa o do outro, porque poderão sair duas respostas. 
III Se tivermos três possibilidades de respostas, podemos usar um if simples e um if composto que não 
teremos problemas com as respostas. 
IV Quando temos 10 possibilidades de respostas, poderemos usar 10 if(s) simples, embora usar ifs 
encadeados seria mais eficiente. 
 
 
Somente a afirmativa I é verdadeira 
 
As afirmativas II, III e IV são verdadeiras 
 
Somente a afirmativa II é verdadeira 
 As afirmativas I e IV são verdadeiras 
 
Somente a afirmativa III é falsa 
Respondido em 16/04/2020 18:09:26 
 
 
Explicação: As respostas falsas são conclusivas 
 2a Questão 
 
 
 Um aluno de Introdução a Programação precisa escrever um programa que leia um caracter equivalente a 
uma estação do ano imprima o nome equivalente considerando que P- Primavera, V - Verão, O - Outono e I 
- Inverno. Qual a estrutura básica em C++ que deve ser utilizada para fazer esta seleção múltipla? 
 
 
break 
 switch/case 
 
for 
 
do/while 
 
while 
 
 
 4a 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: 
 caso 102: 
 item="Milkshake" 
 valor=qtde*7 
pareUma 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. 
Se você deseja escrever esse programa em C++ e optar pela estrutura SWITCH, como ficariam as linhas 
iniciais dessa seleção, até o caso de o item "hambúrguer" ser escolhido? 
 
 switch (codigo) { 
 case 100: item="Hambúrguer"; 
 valor= qtde * 5.50; 
 break; 
} 
 
8a 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 << " ### " ; 
 
 
 
9 não é divisível por 2. 
 
Nada aparece, pois o trecho de programa possui erro. 
 
Apenas 9 
 9 ### 
 
9 é divisível por 3 e por 5. 
 
 
Aula 7 – estrutura de repetição 1 
 
 
 1a Questão 
 
 
 Considerando a seguinte sequencia de instruções, marque a alternativa que indica o comando correspondente 
para preenchimento da lacuna. 
 
... 
cin>>matricula; 
 
______________ (matricula<99) 
 
{ 
 
cin>>matricula; 
} 
 
 
do case 
 while 
 
for 
 
loop 
 
repeat 
Respondido em 17/04/2020 15:02:49 
 
 
 
 
 2a Questão 
 
 
 
A fim de possibilitar a implementação de algoritmos estudamos 
algumas estruturas básicas, como estrutura de desvio de fluxo, 
estrutura de repetição etc. Entre as estrutura de repetição há uma 
na qual uma ação será executada pelo menos uma vez, antes da 
avaliação da condição. Esta estrutura é implementada em C++ pelo 
comando básico: 
 
 for/while 
 do/while 
 do/for 
 for 
 while 
Respondido em 17/04/2020 15:03:19 
 
 
Explicação: 
O comando do...while faz para depois testar. Então, o bloco a ser repetido será executado pelo menos uma 
vez antes de testarmos a condição. 
Os comando for ou while, temos que testar antes de fazer. 
 
 
 
 
 3a Questão 
 
 
 Considere o trecho abaixo sabendo que num é um variável inteira. 
 
num = 11; 
do { 
 if (num % 2 == 0) 
 cout << num << "\n"; 
 num = num -1 ; 
} while (num != 0); 
 
Assinale a opção correta : 
 
 O trecho fornecido pára quando num for diferente de zero e o único 
número exibido é o 10. 
 O trecho entra em loop. 
 O trecho fornecido pára quando num for zero e os números 
exibidos são todos os pares de 10 até 0, nesta ordem. 
 O trecho fornecido pára quando num for zero e os números 
exibidos são todos os pares de 10 até 2, nesta ordem. 
 o trecho fornecido pára quando num for diferente de zero e são 
exibidos os valores 10 e 8, pelo menos. 
Respondido em 17/04/2020 15:04:41 
 
 
 
 
 4a Questão 
 
 
 Considere o trecho de programa em C++ abaixo. Marque a opção que, corretamente, mostra o que é 
impresso na tela. 
 
int x, y, z; 
x = 5; 
y = 20; 
while (x <= y) { 
z = x + y; 
x = x + 5; 
} 
cout << z << endl; 
 
 40 
 
25 
 
35 
 
30 
 
20 
Respondido em 17/04/2020 15:06:49 
 
 
 
 
 
 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; 
 
 
 
V - F - F 
 
F - F - F 
 
F - V - V 
 F - F - V 
 
V - F - V 
Respondido em 17/04/2020 15:07:27 
 
 
 
 
 6a 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; 
} 
 
 A quantidade de elementos digitados diferentes de zero. 
 
O menor de todos os elementos digitados 
 
O maior de todos os elementos digitados 
 
A quantidade de elementos pares 
 
A média dos elementos digitados 
Respondido em 17/04/2020 15:09:08 
 
 
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. 
 
 
 
 
 7
a
 Questão 
 
 
 A linguagem de programação C++ dispõe de três estruturas de repetição: do..while, while e for. Pensando 
na maneira como cada uma delas funciona, observe o trecho de código a seguir: 
 
Qual das alternativas a seguir, escritas com a estrutura for, equivale à estrutura while anterior? 
 
 for (int cont=0; cont <= 10; cont++) 
{ cout << "Estamos na " << cont << "a. rodada..."; } 
Respondido em 17/04/2020 15:10:38 
 
 
 
 
 8a 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; 
} 
 
 
15 
 
31 
 
29 
 30 
 
Nenhuma das alternativas. 
 
Imagine que você precisa escrever um programa em C++ que receba uma sequência de números e, para cada 
número informado, diga se ele é par ou ímpar. Essa sequência se encerra quando o usuário digitar 0 e você 
precisa utilizar uma estrutura repetitiva com pré-teste. Qual dos trechos a seguir atenderia essa solicitação? 
} 
 while (num!=0) { 
 if (num%2==0) 
 { cout <<"Este número é par.\n"; } 
 else 
 { cout <<"Este número é ímpar.\n"; } 
 cout <<"Informe um número qualquer: "; 
 cin >>num; 
 
Considere 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 é: 
 
 
 while (num!=0) 
 
for (num<=0) 
 
if (num!=0) 
 
do (num!=0) 
 
while (num==0) 
 
Na execução do comando while o teste da condição que controla a 
execução, ou não, dos comandos subordinados, é feito, sempre, antes de 
cada iteração. Desta forma, é correto afirmar que: 
 
 Independentemente da condição de teste, os comandos 
subordinados sempre serão executados. 
 A condição de teste deverá ser sempre verdadeira antes do 
início da execução. 
 A condição de teste deverá ser sempre falsa antes do início da 
execução. 
 Os comandos subordinados poderão não ser executados. 
 Os comandos subordinados serão executados no mínimo uma 
vez 
 
 
 
 
 
A partir da comparação entre as estruturas while e do...while, é certo afirmar que: 
 
 
Dependendo da condição de teste, em ambos os casos o bloco de comandoscontrolado será sempre executado, pelo menos uma vez. 
 
Em termos de execução não há diferença. A diferença está, apenas, na sintaxe. 
 No while, o bloco de comandos controlado poderá não ser executado. Enquanto 
que no do...while o bloco de comandos controlado será sempre executado, pelo 
menos uma vez. 
 
No do...while, o bloco de comandos controlado poderá não ser executado. 
Enquanto que no while o bloco de comandos será sempre executado, pelo menos 
uma vez. 
 
Dependendo da condição de teste, em ambos os casos o bloco de comandos 
controlado poderá não ser executado. 
 
 
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) { 
 cout << i; 
 i=i+2; 
 
Assinale a opção que corresponde à condição da estrutura de repetição que faz com que o programa abaixo 
imprima 4 vezes a expressão Bom dia. 
int a = 8; 
while ( ____ ) 
 { 
 cout << "Bom dia\n"; 
 a = a -2; 
} 
 
 
a >= 0 
 
a == 0 
 
a < 0 
 
a <= 0 
 a > 0 
 
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. 
 
 
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. 
 
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. 
 
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. 
 
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. 
Respondido em 17/04/2020 15:23:50 
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 
 
sequencial 
 
de atribuição 
 de repetição 
 
Uma turma precisa escolher seu representante. Sabendo que existem apenas dois candidatos, identificados 
pelas letras A e B, imagine que você precisa escrever um programa em C++ que 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. Contabilize também os votos nulos, que são aqueles diferentes de A ou 
B. Ao final, é preciso exibir o candidato vencedor, os votos para o candidato A, os votos para o candidato B 
e os votos nulos. Qual das alternativas a seguir apresenta o trecho de código adequado à solução desse 
problema? 
 
 cout<< "Digite o número do aluno: "; cin>> num; 
while (num!=0) { 
 cout<< "Digite a letra de seu candidato: "; cin>> voto; 
 if (voto == A) 
 { contA++; } 
 else if (voto == B) 
 { contB++; } 
 else 
 { contN++; } 
 cout<< "Digite o número do aluno: "; 
 cin>> num; 
} 
 
 
 
 
 
 
 
Considere que uma refeição saudável envolve o consumo máximo de 550 calorias. Sabendo disso, você deseja 
escrever um programa que, a partir da quantidade de calorias consumidas em uma refeição, informe se você 
ultrapassou esse valor ou permaneceu dentro do limite. Para fazer o cálculo do consumo total, você precisará 
que seja digitado o valor calórico de cada elemento. Como não se sabe exatamente quantos alimentos 
diferentes foram consumidos, considere que será digitado 0 quando não houver mais consumo a ser informado. 
Ao final do programa, é necessário exibir o consumo total de calorias e informar se foi ultrapassado o valor 
sugerido por refeição, se o usuário permaneceu dentro do limite ou se consumiu exatamente a quantidade de 
calorias sugerida. Qual das alternativas a seguir apresenta a estrutura repetitiva adequada para este 
problema? 
 
 
 while (calAlimento!=0) { 
 cont++; totCalorias+=calAlimento; 
 cout<< "Informe as calorias do alimento " << cont <<": "; 
 cin>> calAlimento; 
} 
 
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); 
 
 
7 vezes 
 
5 vezes 
 
6 vezes 
 4 vezes 
 
8 vezes 
 
 
Qual a estrutura de repetição mais indicada para os casos em que é necessário que o bloco de código a ser 
repetido seja sempre repetido pelo menos uma vez? 
 
 
while{} 
 
repeat until 
 do{ }while 
 
for{} 
 
while do 
 
 
 
 
 
 
 
 
 
Para que a palavra "AMOR" seja escrita na tela 5 vezes, qual condição apropriada deve ser colocada no 
trecho de código abaixo? Marque a opção correta. 
 
x = 1; 
while ( _________ ) 
{ 
cout<<"AMOR \n"; 
x = x + 2; 
} 
 
 
x < 5 
 
x > 10 
 x < 10 
 
x <= 5 
 
x <= 11 
 
 
Respondido em 17/04/2020 15:34:44 
 
Comando de repetição é utilizado quando se deseja repetir determinados comandos. Marque a opção que 
representa o uso do comando while para implementar a estrutura de um contador corretamente. 
 
 
while () { cout << "exibindo o número"; } 
 int cont = 0; while (cont <=10){ cout << "exibindo o número " << cont; cont++; } 
 
while (repita 10 vezes) { } 
 
while (if cont =10){ } 
 
String cont = ""; { cont++; } while (cont!="") 
 
 
Aula 8 – ESTRUTURA DE CONTROLE PARA 
 
 1a Questão 
 
 
 Considere a estrutura for ( ; ; ), e assinale a afirmação correta: 
 
 É um laço infinito. 
 
Não é executada, pois não tem condição de teste. 
 
Não é executada, pois não tem variável. 
 
Não é executada pois não tem incremento. 
 
Tem a sintaxe incorreta. 
Respondido em 17/04/2020 18:46:14 
 
 
 
 2a Questão 
 
 
 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; 
} 
 
 
A quantidade de elementos digitados 
 
A soma dos elementos pares 
 A soma de todos os elementos 
 
O maior de todos os elementos digitados 
 
A média dos elementos digitados 
Respondido em 17/04/2020 18:46:44 
 
 
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. 
 
 
 
 
 3a Questão 
 
 
 Leia atentamente o trecho de código abaixo e diga o que ele retornaria ao usuário: 
int main ( ) { 
 int i; 
 double x, y; 
 cout << "Digite um numero: "; 
 cin >> x; 
 for (i=0; i<5; i++){ 
 cout << "Digite um numero: "; 
 cin >> y; 
 if (y > x){ 
 x = y; 
 } 
 } 
 cout << "Numero: " << x << "\n"; 
 system("PAUSE"); 
 return 0; 
} 
 
 
A média dos elementos digitados 
 
A quantidade de elementos pares 
 O maior de todos os elementos digitados 
 
O menor de todos os elementos digitados 
 
A quantidade de elementos digitados 
Respondido em 17/04/2020 18:47:18 
 
 
Explicação: 
Ao final do programa o valor de x será impresso e vemos que a cada rodada do loop (while), o valor de 
entrada armazenado em y é comparado com x. Se y for maior que x, guardamos em x o maior valor. 
 
 
 
 
 
 4a Questão 
 
 
 Após a execução do trechode 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 99 
 3 22 41 60 79 98 
 
3 23 40 60 79 98 
 
3 23 42 61 80 99 
 
3 22 41 59 79 98 
Respondido em 17/04/2020 18:48:10 
 
 
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 
 
 
 
 
 5a Questão 
 
 
 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;<> 
 
 
48 
 
60 
 
63 
 55 
 
39 
Respondido em 17/04/2020 18:49:55 
 
 
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 
 
 
 
 
 6a Questão 
 
 
 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; 
 if ((x % 2) == 1){ 
 y = y + x; 
 } 
 } 
 cout << "Numero: " << y << "\n"; 
 system("PAUSE"); 
 return 0; 
} 
 
 
A média dos elementos digitados 
 
A soma de todos os elementos 
 
O maior de todos os elementos digitados 
 A soma dos elementos ímpares 
 
A quantidade de elementos digitados 
Respondido em 17/04/2020 18:50:16 
 
 
Explicação: 
Comentando o programa : 
 
 double x, 
 y = 0; //inicializa o somatório 
 for (i = 0; i < 10; i++){ 
 cout << "Digite um numero: "; 
 cin >> x; //lê número e armazena em x 
 if ((x % 2) == 1){ //testa se x é ímpar. Se for então faz a acumulação em y, ou seja, gera um 
somatório com o valor de cada x 
 y = y + x; 
 } 
 } 
 cout << "Numero: " << y << "\n"; //imprime y que acumulou a soma dos valores armazenados em 
x, ou seja, os valores ímpares 
 
 
 
 
 
 50 e 16 
 16 e 9 
 o valor de s está indefinido e o valor de num é 7 
 9 e 9 
 50 e 9 
Respondido em 17/04/2020 18:51:53 
 
 
Explicação: 
 
conta num s conta <= 40 ? 
10 1 0 sim 
20 3 0 + 1 , que dá 1 sim 
30 5 1 + 3, que dá 4 sim 
40 7 4 + 5, que é 9 sim 
50 9 9 + 7, que é 16 Falso ! 
 
Valor final de s é 16 e o valor final de num é 9 
 
 
 
 
 8a Questão 
 
 
 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 (int i=0; i =< 200; i++) 
 
for (int i=0; i <= 200; i++) 
 
for (int i=0, i <= 200, i++) 
 
for ( i=0; i <= 200; i++) 
 for (int i=0; i < 200; i++) 
Respondido em 17/04/2020 18:50:50 
 
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 valores entre 1 e 5 (inclusive)em ordem crescente. 
 Os valores entre 1 e 5 (inclusive) em ordem decrescente. 
 Os números ímpares entre 1 e 5 em ordem decrescente. 
 Os números ímpares entre 1 e 5 (inclusive) em ordem decrescente. 
 
Imagine que você precisa escrever um programa em C++ que receba o sexo de 100 pessoas (F para 
Feminino ou M para Masculino). Ao final da leitura dos sexos, o programa precisa exibir as seguintes 
informações: quantidade de mulheres, quantidade de homens, percentual de mulheres e percentual de 
homens. 
Observações: 1. O programa deve funcionar com "F" e "M" maiúsculos ou minúsculos; 2. A estrutura de 
repetição a ser utilizada deve ser FOR. 
Sabendo disso, qual seria o trecho de repetição adequado para esse programa? 
 
 for (int cont=1;cont<=100;cont++) { 
 cout <<"Qual o sexo? "; 
 cin >>sexo; 
 if (sexo==F || sexo==f) 
 { qtdeF++; } 
 else if (sexo==M || sexo==m) 
 { qtdeM++; } 
} 
 
Qual dos comandos abaixo permite que um bloco de comandos seja executado enquanto a variável num 
seja diferente de 0? 
 
 
for (i = num; i > 0; i++) 
 
for ( i = 0; i == num; i++) 
 while (num != 0) 
 
while (num == 0) 
 
enquanto (num > 0) 
 
 
 
Observe o trecho de código a seguir: 
 
Sobre ele, podemos afirmar que: 
I. A estrutura de repetição escolhida costuma ser utilizada quando se sabe quantas repetições serão feitas; 
II. A cada passada pela estrutura repetitiva, o contador será incrementado em duas unidades; 
III. Para que o sexo seja contado, será necessário que o usuário digite tanto "F" quanto "f". 
 
 
As afirmativas I, II e III são verdadeiras. 
 Somente a afirmativa I é verdadeira. 
 
Somente a afirmativa III é verdadeira. 
 
As afirmativas I e II são verdadeiras. 
 
As afirmativas I e III são verdadeiras. 
 
 
Marque a opção correta. Considere o trecho de programa feito abaixo em C++. O que é impresso na tela ? 
 
 int conta, num = 1, prod = 1; 
 for (conta = 4; conta > 0; conta--) { 
 prod = prod *num; 
 num++; 
 } 
 cout << "Prod = " << prod << " num = " << num << endl; 
 
 
 Prod não pode ser calculado e num assumirá o valor final 5. 
 Prod = 24 num = 5 
 Prod = 6 num = 5 
 Prod = 6 num = 4 
 
 Prod = 1 num = 2 
Prod = 2 num = 3 
Prod = 6 num = 4 
Prod = 24 num = 5 
 
Respondido em 17/04/2020 19:19:04 
 
 
Explicação: 
Analisando o trecho e fazendo em seguida um teste de mesa : 
 int conta, num = 1, prod = 1; 
 for (conta = 4; conta > 0; conta--) { 
 prod = prod *num; 
 num++; 
 } 
 cout << "Prod = " << prod << " num = " << num << endl; 
 
TESTE de mesa : 
 
conta conta > 0 num prod 
4 4 > 0 ? sim 1 1 
3 3 > 0 ? sim 2 1 
2 2 > 0 ? sim 3 2 
1 1 > 0 ? sim 4 6 
0 0 > 0 ? FAlso 5 24 
Terminando o for, será impresso : 
Prod = 24 num = 5 
 
As estruturas de repetição permitem executar mais de uma vez um mesmo trecho de 
código. Trata-se de uma forma de executar blocos de comandos somente sob 
determinadas condições, mas com a opção de repetir o mesmo bloco quantas vezes forem 
necessárias. As estruturas de repetição são úteis, por exemplo, para repetir uma série de 
operações semelhantes que são executadas para todos os elementos de uma lista ou de 
uma tabela de dados, ou simplesmente para repetir um mesmo processamento até que 
uma certa condição seja satisfeita. Sejam as seguintes afirmativas: 
I - Toda estrutura de repetição apresenta um teste no início e um na saída. 
II - Toda estrutura de repetição pode ser substituída por um conjunto de estruturas de 
decisão, onde não haja testes ou condições. 
III - Toda estrutura de repetição apresenta um critério de parada. 
IV- Toda estrutura de repetição apresenta fluxo de execução invertido devido a diversas 
iterações. 
 
Marque a alternativa que representa apenas as afirmativas CORRETAS: 
 
 
I 
 
II, III e IV 
 
I e III 
 
I e IV 
 III 
 
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

Outros materiais