Buscar

QUESTÕES DE ALGORITMOS

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 35 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 35 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 35 páginas

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

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

ALGORITMOS 
Aula 1 – Introdução à Logica de Programação 
1a Questão 
 
Sobre algoritmo, marque a opção correta. 
 É a solução teórica, passo a passo, de um problema. 
 
2a Questão 
 
Verifique as afirmações abaixo e assinale a alternativa correta: 
 
I )Fluxograma é o esboço de um projeto em programação de computadores. 
II) Algoritmo serve para representar o raciocínio, independentemente de detalhes computacionais. 
III) Algoritmo é a representação gráfica da solução de um problema. 
 Somente a I e II estão corretas. 
 
3a Questão 
 
Assinale a opção que corretamente define o que é software. 
 É qualquer programa de computador. 
 
4a Questão 
 
Assinale a alternativa correta relacionada à característica de um algoritmo: 
 A execução de um algoritmo é feita sequencialmente. 
 
5a Questão 
 
Assinale a opção correta. 
 
 A Unidade de Aritmética e Lógica é a responsável pelos cálculos e seus controles. 
 
1a 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, II e III. 
 
2a Questão 
 
Observe o fluxograma a seguir e assinale a alternativa correta sobre o mesmo: 
 
 
 
 
 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 
6a 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 III são CORRETAS 
 
7a Questão 
 
A implementação concreta de um algoritmo, ou o conjunto de algoritmos a serem executados pela máquina é chamada de: 
 Programa 
 
 
 
 
 
 
1a Questão 
 
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 e III 
 
8a 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. 
 
 
 
 
 
1a Questão 
 
Sobre o FLUXOGRAMA abaixo podemos afirmar que : 
 
 
 Apresenta na sua lógica a estrutura básica DECISÃO 
 
2a Questão 
 
Com base nos conceitos de algoritmos, lógica de programação e linguagens de programação, é correto afirmar que: 
 As linguagens de programação possibilitam a codificação de um determinado algoritmo, de acordo com um conjunto de 
regras específico 
 
3a Questão 
 
Sobre fluxograma, assina a opção correta. 
 É uma forma de se representar graficamente algoritmos e que não dá margem à ambiguidade . 
 
4a Questão 
 
Sobre a ULA (unidade de aritmética e lógica), é correto afirmar que : 
 Responsável pelos cálculos e seus controles. 
 
5a Questão 
 
Assinale a opção que, corretamente, mostra exemplos de linguagens de programação. 
 
 C++, Java, C# 
 
 
6a Questão 
 
 Assinale a opção que mostra as formas possíveis e mais adequadas de se representar um algoritmo : 
 Linguagem gráfica e pseudolinguagem 
 
7a Questão 
 
Assinale a opção correta, considerando a arquitetura básica de um computador de acordo com o modelo de John Von 
Neuman. 
 Os dados são inseridos pelos dispositivos de entrada e são armazenados na memória. 
 
8a Questão 
 
Assinale a opção correta: 
 A forma mais comum de escrever um algoritmo é em portugol. 
 
8a 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. 
 GPN 
 
2a 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. 
 
 
 N1 e N2 
 
 
3a Questão 
 
Assinale a opção correta. 
 Um programa é um algoritmo codificado em uma linguagem de programação. 
 
4a Questão 
 
Qual dos símbolos abaixo representa a entrada de valores para as variáveis? 
 
 
 
5a Questão 
 
Segundo a forma de organizar o computador proposta por Von Neumann, a máquina possui quatro componentes. Assinale a 
alternativa correta: 
 Entrada e saída/ Unidade Aritmética e Lógica / Memória / Unidade de Controle 
 
7a Questão 
 
A representação gráfica dos algoritmos, em que cada símbolo apresentado representa uma operação a ser realizada é 
chamada de: 
 
 Fluxograma 
 
8a Questão 
 
O resultado do pensamento computacional pode ser denominado algoritmo. Um algoritmo pode ser definido como 
 
 uma série de procedimentos descritos passo a passo visando a solução de um problema 
 
Aula 2 – Nosso Primeiro Programa 
1a 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 
 
2a Questão 
 
 Assinale a opção correta. Considerando o conceito de programa é correto afirmar que ... 
 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. 
 
3a 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. 
 Variável 
 
4a Questão 
 
Assinale a opção correta. Sobre variáveis é correto afirmar que ... 
 uma variável ocupa um espaçoem memória e devemos usar, normalmente, um tipo de dados ao declará-la. 
 
5a Questão 
 
Em programação, como se chama o processo de converter um arquivo de texto, escrito em uma linguagem de programação, 
em códigos binários pertencentes a uma plataforma de execução? 
 Compilação 
 
6a Questão 
 
Necessita de espaço na memória e define o tipo de dado a ser armazenado 
 Variável 
 
7a Questão 
 
Precisamos ficar atentos a algumas exigências da linguagem C++. 
Leia com atenção as afirmativas abaixo e, depois, escolha a opção correta. 
I Devemos tomar cuidado para não declarar uma variável de nome Nota e não usar no programa nota. 
II Foram declaradas duas variáveis com os seguintes nomes: Idade e auto. O programa foi compilado sem problemas. 
III A declaração de variáveis globais é fora de todas as funções 
IV Existe somente o delimitador // para fazer comentários 
 Somente as afirmativas I e III estão corretas 
 
8a Questão 
 
Assinale a opção correta: 
 Os programas em C++ possuem palavras reservadas tais como main e int. 
 
1a Questão 
 
As palavras que fazem parte de um conjunto próprio da linguagem C++ são chamadas: 
 palavras reservadas 
 
2a Questão 
 
O computador não entende o conteúdo do arquivo de 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: 
 
 Compilação 
 
 
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. 
 
4a Questão 
 
Os comentários são recursos que podem ser utilizados pelos programadores para: 
 
 Inserir textos explicativos apenas para o programador 
 
5a Questão 
 
O linha de programa que representa a ação "processamento" em um algoritmo em pseudolinguagem é: 
 
 valor <- valor + 1; 
 
6a Questão 
 
Quando desejarmos exibir na tela títulos, conteúdo de variáveis, resultado de operações e tudo mais que precisarmos, muitas 
linguagens de programação, e até interpretadores algorítmicos, disponibilizam caracteres de controle que possibilitam deslocar 
o cursor horizontalmente e verticalmente. 
Qual das respostas abaixo representa, na mesma sequência do texto acima, esses caracteres? 
 \t , \n 
 
7a Questão 
 
Considerando a linguagem C++, assinale a opção correta : 
 A linguagem C++ diferencia maiúsculas de minúsculas 
 
8a Questão 
 
Para realizar o armazenamento de um determinado valor na memória do computador é necessária a declaração de: 
 Variável 
 
1a Questão 
 
Assinale a opção correta: 
 Os programas em C++ precisam ser traduzidos para uma linguagem que o computador entenda. 
 
2a Questão 
 
Assinale a opção correta. O que quer dizer main ? 
 principal 
 
4a Questão 
 
Assinale a opção correta : 
 Para entrada de dados usamos cin com >> e para saída de dados usamos cout com << 
 
6a Questão 
 
Assinale a opção que apresenta somente nomes válidos para variáveis em C++. 
 CONTA, TOTAL1, data 
 
7a Questão 
 
Assinale a opção correta: 
 Todas as instruções de um programa em C++ devem estar entre chaves 
 
3a Questão 
 
Assinale a opção correta. 
 Programa é um conjunto de instruções escritas em uma linguagem de programação e que dizem o que o computador 
deve fazer. 
 
1a Questão 
 
Uma variável pode ser entendida como sendo: 
 
 Um endereço na memória principal. 
 
 
Aula 3 – Conhecendo o DevC++ 
 
1. 
 
 
 Assinale a alternativa correta. 
 
 
 
Quando se compila um programa e ocorre erro na compilação, devemos acertá-lo para então, podermos executá-
lo. 
 
2. 
 
 
Normalmente um programa de computador é composto de muitas linhas de código o que dificulta, por vezes, a 
manutenção quando ocorre algum erro lógico. Desta forma, o programador, após identificar o possível trecho da 
ocorrência. Para isso, o Dev C++ dispõe de um dispositivo que interrompe a execução do programa, passando para o 
programador o controle da execução. A linha onde o programa é interrompido fica destacada em vermelho. 
Qual o nome deste dispositivo? 
 
 
Breakpoint 
 
3. 
 
 
Marque a opção correta quanto ao uso dos comandos de entrada e saída em C++ 
 
 
cout << "lendo a idade"; cin >> idade; 
 
4. 
 
 
Asssinale a opção correta. 
 
 
Uma IDE é um software que tem a função de colocar e integrar, em um mesmo ambiente, vários outros 
programas que ajudam um programador a criar seus programas. 
 
5. 
 
 
Uma IDE é um conjunto de programas úteis ao programador reunidos em um mesmo ambiente, a fim de facilitar o 
trabalho de desenvolvimento. Dentre suas funcionalidades temos a depuração. marque a alternativa que descreve este 
processo. 
 
 
é uma atividade que permite ao programador executar o programa passo a passo. Desta forma, ele pode verificar 
os valores das variáveis e descobrir qual é a execução natural de um programa. 
 
6. 
 
 
Para exibir o valor da variável x do tipo inteiro em C++ deve ser utilizado o comando: 
 
 
cout << x; 
 
7. 
 
 
Assinale a afirmativa incorreta. 
 
 
 
DEV-C++ não possui compilador. 
 
8. 
 
 
Assinale a alternativa incorreta. 
 
 
Quando um programa entra em execução, no mesmo instante ele é compilado. 
 
1. 
 
 
Assinale a alternativa incorreta. 
 
 
 
A depuração não permite o programador executar o programa passo a passo. 
 
2. 
 
 
Uma IDE (integrated development environment ou ambiente de desenvolvimento integrado) reúne várias facilidades 
para o programador. Assinale a opção onde está presente o programa que possibilita acompanhar a execução do 
programa e verificar erros. 
 
 
Depurador 
 
 
Aula 4 – Conhecendo Alguns Elementos de C++ 
 
1. 
 
 
Assinale a alternativa que apresenta APENAS operadores relacionais. 
 
 
 
<, > e >= 
 
2. 
 
 
Considerando a linguagem de programação C++....Quando definimos uma variável, na verdade estamos fazendo uma 
reserva estática de memória. Esta reserva de memória é dita estática por ser definida em tempo de compilação, diferente 
da reserva dinâmica de memória que é feita em tempo de execução. Portanto, toda declaração de variáveis é a reserva 
de uma certa quantidade de memória antes da execução do programa, sendo assim é necessário que seja estabelecida 
a quantidade de memória que está sendo reservada e também seu endereço. Isto é feito, respectivamente, pela 
definição do: 
 
 
tipo de dado e identificador da variável. 
 
3. 
 
 
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? 
 
 
4 
 
4. 
 
 
Fornecida a sequência de respostas abaixo, assinale a opção cujos nomes das variáveis estejam todos corretos para 
uso. 
 
 
d) HoraCerta, Inicio, Contador10 
 
5. 
 
 
Para a = 2, b = 5 e c = 4, determine qual das sentenças retornará verdadeiro em linguagem de programação C++. 
 
 
((b = 2) == a) 
 
6. 
 
 
Assinale a opção correta : 
 
 
 
Se precisamos de armazenar 1 caracter usamos o tipo char na declaração da variável 
 
7. 
 
 
Assinale a alternativa que apresenta APENAS os exemplos de operadores lógicos. 
 
 
&&, || e ! 
 
8. 
 
 
Assinale a opção correta. 
 
 
 
Os operadores matemáticos são : +, - , *, / e %. 
 
1.A declaração de variáveis permite reservar um espaço na memória para que possa armazenar os dados de um 
programa. Indique os nomes de variáveis que são válidos em C++. 
 
 
mumero2Casa, idade 
2. 
 
 
Qual dos fragmentos de código calcula um preço de um produto com desconto de 7,5% ? 
 
 
 
PRECO_DESC = PRECO - PRECO * 7.5 /100; 
 
3. 
 
 
Os operadores lógicos servem para combinar resultados de expressões, retornando se o resultado final é verdadeiro ou 
falso. Marque a alternativa que contém o operador lógico que deve ser utilizado quando as duas proposições lógicas 
necessitam ser verdadeiras para que o resultado da combinação seja verdadeiro. 
 
 
((pontos>=10) && (pontos <=20)) 
 
4. 
 
 
Seja o seguinte trecho de programa em C++ : 
 
int a, b, c; 
a = 2; 
b = a+3; 
c = a / b + b / a; 
 
Considerando as regras de atribuição de valores a variáveis e precedência existente nas operações aritméticas, marque 
a alternativa com o valor final da variável c. 
 
 
2 
 
5. 
 
 
Considere duas variáveis inteiras x e y. Assinale a opção correta. 
 
 
Fazer !(x == y) equivale a fazer x != y 
 
6. 
 
 
Assinale a opção correta. 
 
 
 
Para incluir uma biblioteca em um programa em C++ usamos a palavra reservada include. 
 
8. 
 
 
Assinale a opção correta : 
 
 
 
O operador % calcula o resto da divisão entre dois inteiros. 
 
5. 
 
 
Qual dos trechos abaixo solicita e admite corretamente a idade de um usuário? 
 
 
int idade; 
cout << "Idade: "; 
cin >> idade; 
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. 
 
 
cin >> celsius; 
 
7. 
 
 
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 = 3. 
 
8. 
 
 
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; 
 
1. 
 
 
Em C++ existem quatro tipos básicos, isto é , tipos básicos de dados que podem ser utilizados. Qual é o tipo definido da 
seguinte maneira: "Qualquer número real, negativo, nulo ou positivo." 
 
 
float 
 
4. 
 
 
Assinale a opção correta. 
 
 
As variáveis do tipo bool podem ser true ou false. 
 
 
Aula 5 – Estrutura de Decisão 
 
1. 
 
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: 
 
 
 
 
 
22 
 
2. 
 
 
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 4 13 
 
3. 
 
 
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 << " "; 
 
 
1 4 
 
4. 
 
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, 7 e 7 
 
5. 
 
 
 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 
 
 
6. 
 
 
O comando utilizado para representar uma estrutura de ____________ é o comando _____. Esse comando fará um 
teste na ____________ apresentada, determinando se a ________________ é _______________ ou não. 
 
 
decisão, se, condição, condição, verdadeira. 
 
7. 
 
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 
 
8. 
 
 
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 
 
 
Se (AV1 >= 4) ou (AV2 >= 4) 
 
1. 
 
 
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. 
 
2. 
 
 
Qual dos trechos de código em C++ representa a seguinte situação: 
Quero saber o salario líquido de um funcionário considerando que, dado o salário bruto, existe um desconto para o 
fundo de pensão de 1% caso o salário bruto seja maior que R$2000,00 e de 0,5% caso contrário. 
 
 
if (bruto > 2000.00) 
 liquido = bruto - (bruto/100); 
else 
 liquido = bruto - (0.5 * bruto /100); 
cout << "Liquido = " << liquido; 
 
3. 
 
 
Verifique o trecho de código abaixo e marque a alternativa que apresenta a melhor construção para as condições 
abaixo, utilizando uma estrutura de decisão composta. 
if(a > 0) cout < < "pertinente"; 
if(a < 5) cout < < "pertinente"; 
if(a > =5) cout < < " não pertinente"; 
 
 
if(a > 0 && a < 5) cout < < "pertinente"; 
else cout < < " não pertinente"; 
 
4. 
 
 
Qual das sentença em C++ a seguir verifica se o valor da variável x do tipo inteiro é diferente de 7 e maior que 10? 
 
 
if (x != 7 && x > 10) 
 
5. 
 
 
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"; 
 
 
x= 10 y = 12 z = 0 k = 2 
 
6. 
 
 
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; 
 
 
11 11 2 0 
 
7. 
 
 
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: 
 
 
Decisão 
 
8. 
 
 
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"); 
} 
 
 
8 
 
4. 
 
 
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 
 
5. 
 
 
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 235 138 
 
8. 
 
 
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 = 4, y = 14, t; 
float z; 
if( x < y ) { t=x; x=y; y=t;} 
z = (x % y) / y; 
cout << x << " " << y << " " << z ; 
 
 
14 4 0 
 
1. 
 
 
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 || N2 < 50 
 
5. 
 
 
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. 
 
 
chaves 
 
 
Aula 6 – Estrutura e Decisão 
 
1. 
 
 
De acordo com o trecho de código abaixo o que será exibido se o usuário digitar os valores 2 e 4, respectivamente? 
 
leia(n1,n2) 
se ((n1 < 2) e (n2 < 5 )) entao 
 escreva("O valor foi: ", n1) 
senao 
 se ((n1 > 1) e (n2 
 > 4) ) entao 
 escreva ("O valor foi: ", n1+2 ) 
 senao 
 se ((n1 > 3) ou (n2 < 10)) entao 
 escreva("O valor foi: ", n2+n1) 
 senao 
 escreva("O valor foi: ", 5) 
 fimse 
 fimse 
fimse 
 
 
O valor foi:6 
 
2. 
 
 
Qual o comando utilizado pelo C++ para implementação de algoritmos onde seja necessário que o usuário entre com 
um valor referente a uma opção a ser escolhida, quando é necessário consulta em uma tabela ou a um menu exibido 
na tela. 
 
 
switch/case 
 
3. 
 
 
Caso o valor inserido pelo usuário seja igual a 5, qual a mensagem exibida pelo código: 
 
int a; 
 
cin >> a; 
if (a<5) 
 cout << "valor esperado"; 
else 
 if (a>=5 && a<=10) 
 cout << "valor ainda aceitável"; 
 else 
 if (a>10 && a<20) 
 cout << "valor acima do esperado"; 
 else 
 if (a>=20) cout << "valor fora de faixa"; 
 
 
valor ainda aceitável 
 
4. 
 
 
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 ### 
 
5. 
 
 
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. 
 
 
switch / case 
 
6. 
 
 
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? 
 
 
switch/case 
 
7. 
 
 
 
 
 
 
11 10 50 10 2 
 
8. 
 
 
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; 
} 
 
 
50 90 15 25 15 
 
1. 
 
 
À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. 
 
 
As afirmativas I e IV são verdadeiras 
 
2. 
 
 
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? 
 
 
switch/case 
 
3. 
 
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 ### 
 
4. 
 
 
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 t ficará 3 
 
5. 
 
 
 
A linguagem C++ possui estruturas de decisão, as quais podem mudara 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; 
} 
 
 
Operador ternário 
 
Aula 7 – Estrutura de Repetição (Parte 1) 
 
1. 
 
 
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; 
} 
 
 
O maior de todos os elementos digitados 
 
2. 
 
 
Analise o trecho de código em C++ abaixo : 
for (int x = 0; x < 10; x++) 
{ 
 if (valor[x] % 3 == 0 && valor[x] % 7 == 0) 
 cout << valor[x]; 
} 
 
 
Imprimirá na tela todos os valores de um vetor que são múltiplos de 3 e múltiplos de 7. 
 
3. 
 
 
O que o trecho de programa em C++ abaixo imprime na tela ? 
 int x; 
 for (x = 1; x <= 5; x++) 
 if (x % 3 == 0 && x % 5 == 0 ) 
 cout << x + 2 << " "; 
 else 
 cout << x + 1 << " "; 
 
 
 
2 3 4 5 6 
 
4. 
 
 
Considere a estrutura for ( ; ; ), e assinale a afirmação correta: 
 
 
É um laço infinito. 
 
5. 
 
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 ímpares entre 1 e 5 (inclusive) em ordem decrescente. 
 
6. 
 
 
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 = 24 num = 5 
 
7. 
 
 
O que será impresso, após a execução do código, a seguir? 
 
#include < iostream > 
using namespace std; 
int main() 
{ 
for(int i=25;i>0;i=i-6) cout << i << " "; 
system( "pause" ); 
} 
 
 
25 19 13 7 1 
 
8. 
 
 
A REPETIÇÃO é uma das estruturas básicas de programação, determine entre as atividades abaixo a que representa 
uma REPETIÇÃO : 
 
 
Para encher um copo com água, mantenha a torneira aberta enquanto o copo não esitver cheio. 
 
1. 
 
 
Qual dos comandos abaixo está escrito de forma errada? 
 
 
for (X < 10 ; X=0 ; X++) 
 
2. 
 
 
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 
 
3. 
 
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;<> 
 
 
55 
 
4. 
 
 
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++) 
5. 
 
 
Marque a opção correta. Considere o trecho de programa feito em C++. O valor final de s e o valor final de num, 
são respectivamente: 
int conta, num=1, s=0; 
for(conta = 10; conta < = 40; conta= conta+10){ 
 s= s+num; 
 num= num +2; 
} 
 
 
16 e 9 
 
6. 
 
 
O que o trecho de programa em C++ abaixo imprime na tela ? 
 
 int y; 
 for (y = 5; y > 0; y--) 
 if (y % 2 == 0) 
 cout << y - 1 << " "; 
 else 
 cout << y + 1 << " "; 
 
 
6 3 4 1 2 
 
7. 
 
 
 Marque a opção correta. O que é impresso na tela ? 
 int conta, x = 1, r = 1; 
 for (conta = 2; conta >= 0; conta--) { 
 r = r * x + 1; 
 x += 2; 
 cout << "r= " << r << " x = " << x << endl; 
 } 
 
 
 r = 2 x = 3 
r = 7 x = 5 
r = 36 x = 7 
 
8. 
 
 
 
 
 
16 e 9 
1. 
 
 
O que o trecho de programa em C++ abaixo imprime na tela ? 
 int x; 
 for (x = 5; x > 0; x--) 
 if (x % 3 == 0) 
 cout << x - 1 << " "; 
 else 
 cout << x + 1 << " "; 
 
 
6 5 2 3 2 
 
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; 
 if ((x % 2) == 1){ 
 y = y + x; 
 } 
 } 
 cout << "Numero: " << y << "\n"; 
 system("PAUSE"); 
 return 0; 
} 
 
 
A soma dos elementos ímpares 
 
3. 
 
 
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 soma de todos os elementos 
 
4. 
 
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) == 0){ 
 
 y = y + x; 
 } 
 } 
 cout << "Numero: " << y << "\n"; 
 system("PAUSE"); 
 return 0; 
} 
 
 
A soma dos elementos pares 
 
5. 
 
 
 
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 
 
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 
 
7. 
 
 
Laços de repetição são usados para que uma determinada sequência de comandos seja repetida um determinado 
número de vezes, sem a necessidade de reescrever tais comandos inúmeras vezes. Marque a alternativa que 
apresenta corretamente a representação de um laço de repetição codificado em C++. 
 
 
a) for(int i=0;i<10;i++) 
{ cout<< i;} 
 
 
Aula 8 – Estrutura de repetição (Parte 2) 
 
1. 
 
 
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. 
 
2. 
 
 
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 
 
3. 
 
 
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; 
} 
 
 
30 
 
4. 
 
 
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. 
 
 
int cont = 0; while (cont <=10){ cout << "exibindo o número " << cont; cont++; } 
 
5. 
 
 
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. 
 
 
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. 
 
6. 
 
 
O que está sendo executado pelo programa C++ a seguir? 
 
int main() 
{ 
 int CONT, SOMA; 
 CONT = 0; 
 SOMA = 0; 
 while (CONT < 50) 
 { 
 SOMA = SOMA + CONT; 
 CONT = CONT + 2; 
 } 
} 
 
 
Soma todos os números pares de 0 a 48 
 
7. 
 
 
Qual dos comandos abaixo permite que um bloco de comandos seja executado enquanto a variável num seja diferente 
de 0? 
 
 
while (num != 0) 
 
8. 
 
 
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: 
 
 
do/while 
 
1. 
 
 
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; 
 } 
 
2. 
 
 
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? 
 
 
do{ }while 
 
3. 
 
 
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 
 
4. 
 
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: 
 
 
III 
 
5. 
 
 
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; 
} 
 
 
while 
 
8. 
 
 
Leia atentamente o trecho de código abaixo e diga o que ele apresentará ao usuário no final : 
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: " << x << "\n"; 
 system("PAUSE"); 
 return 0; 
} 
 
 
O último número digitado, ou seja, zero 
 
4. 
 
 
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 < 10 
 
5. 
 
 
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: 
 
 
Os comandos subordinados poderão não ser executados. 
 
6. 
 
O professor de Algoritmos pediu aos alunos para que eles construíssem um programa, codificado na linguagem 
C++, e que exibisse os algarismos de um número, começando pelo algarismo da casa das unidades simples até o 
algarismo mais significativo. 
Assinale a opção que apresenta o trecho capaz de exibir o que foi pedido, considerando apenas os valores maiores do 
 
que zero. 
 
 
int num; 
cout << "Numero: "; 
cin >> num; 
while (num > 0) 
 { 
 cout << num % 10 << "\t" ; 
 num = num / 10; 
 } 
 
8. 
 
 
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 zero e os números exibidos são todos os pares de 10 até 2, nesta 
ordem 
 
1. 
 
 
A partir da comparação entre as estruturas while e do...while, é certo afirmar que: 
 
 
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. 
 
3. 
 
 
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); 
 
 
4 vezes 
 
5. 
 
 
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 
 
 
Aula 9 – Funções 
 
1. 
 
 
Analise as afirmativas abaixo sobre funções e assinale a resposta correta 
I Uma função poderá ser criada dentro de outra função. 
II Uma função que não seja a função main() poderá chamar outra função. 
III Uma variável local poderá ser acessada por outra função. 
IV Uma função poderá retornar dois valores 
 
 
Só a II está correta. 
 
2. 
 
 
Uma Função, em C++, é um programa à parte ou um subprograma que pode ser chamado de dentro do programa 
principal, sempre que necessário. Assinale abaixo a alternativa que NÃO representa uma vantagem de se utilizar 
função dentro de um programa. 
 
 
evita a sobrecarga de digitação. 
 
3. 
 
 
Assinale a opção correta, considerando a função calculaIMC definida abaixo : 
 
float calculaIMC(float peso, float altura) { 
return peso/(altura * altura); 
} 
 
 
A função calculaIMC tem 2 parâmetros e retorna um valor do tipo float. 
 
4. 
 
 
Uma função deve obrigatoriamente conter umtipificador, ou seja, deve retornar um valor ao término de sua execução. 
No entanto, para sua execução ser eficiente, é necessário enviar dados do bloco principal, que chama a função, para o 
interior da função. O espaço reservado para transportar esses dados de um lado para o outro é chamado de: 
 
 
Parâmetros. 
 
5. 
 
 
Analise as quatro sentenças abaixo sobre escopo das variáveis e, em seguida, assinale a alternativa correta: 
I. Trata-se do bloco de código onde a variável é válida; 
II. As variáveis que são definidas dentro de uma função são chamadas de variáveis globais; 
III. Os parâmetros formais de uma função valem dentro e também fora da função; 
IV. As variáveis são válidas nos blocos em que foram definidas. 
 
 
Apenas as sentenças I e IV estão corretas 
 
6. 
 
 
Considere a função misterio, parcialmente definida abaixo : 
float misterio(int x , char y, double z) { 
 //corpo da função 
} 
Qual é o tipo da função ? 
 
 
float 
 
7. 
 
 
Considere a função descobrir, parcialmente definida abaixo : 
void testar(char x , float y, double z) { 
 //corpo da função 
} 
Qual é o tipo da função ? 
 
 
void 
 
8. 
 
 
Assinale a opção incorreta. Uma função ... 
 
 
Pode retornar mais de um valor com o comando return 
 
1. 
 
 
Para calcular o volume de um cilindro, precisamos saber o raio da base e a altura do cilindro. 
Um desenvolvedor iniciante escreveu alguns cabeçalhos da função que irá definir, mas, como está em dúvida, está 
pedindo a sua ajuda. 
Analise as opções abaixo e assinale a que corresponde ao cabeçalho de uma função que deverá receber valores 
necessários através dos seus parâmetros para que possa calcular e exibir dentro da função o volume do cilindro 
 
 
void V_Cilindro(float r, float h) 
 
2. 
 
 
No cabeçalho de uma função que não retornam valor utilizamos "void" logo no começo. Já em uma função que retorna 
valor, no lugar da palavra "void": 
 
 
temos que indicar o tipo do retorno, além de usar o comando "return" dentro da função 
 
3. 
 
 
Assinale a afirmativa incorreta. 
 
 
 
Algumas funções não precisam ter um tipo. 
 
4. 
 
 
Uma Função, em C++, quando criada pode prever a utilização de parâmetros. Assinale a alternativa abaixo que 
representa o nome dos parâmetros que são passados na chamada da função. 
 
 
argumentos. 
 
5. 
 
 
O escopo de uma variável é o bloco de código onde a variável é válida. Analise as afirmativas abaixo e assinale a 
alternativa correta: 
I) As variáveis que são definidas dentro de uma função são chamadas de variáveis locais. 
II) Os parâmetros formais de uma função valem somente dentro da função. 
III) Uma variável que foi definida dentro de uma função não é acessível em outras funções, mesmo se os nomes 
forem exatamente iguais. 
 
 
Todas estão corretas. 
 
6. 
 
 
Em alguns casos um programador se depara com rotinas que precisam ser repetidas constantemente durante o fluxo 
de seu programa, aumentando consideravelmente a quantidade de linhas do seu programa. Para resolver isto é 
necessário construir pequenos programas que devem ser chamados de dentro do bloco principal. Estes pequenos 
programas podem ser classificados de duas formas diferentes relacionados à sua utilização no código. Como são 
chamados estes programas? 
 
 
Função e procedimento 
 
7. 
 
 
Considere a função testar, parcialmente definida abaixo : 
int testar(char x , float y, double z) { 
 //corpo da função 
} 
Qual é o tipo da função ? 
 
 
int 
 
8. 
 
 
Considere a função eureka, parcialmente definida abaixo : 
char eureka(int x , float y, double z) { 
 //corpo da função 
} 
Qual é o tipo da função ? 
 
 
char 
 
 
Aula 10 – Matrizes e Vetores 
1. 
 
 
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 
 
 
2. 
 
 
Analise o código em C++ mostrado abaixo e assinale a alternativa que descreve corretamente a sua execução: 
#include < iostream > 
using namespace std; 
int main() 
{ 
 int p, num[50]; 
 
 for (p = 0; p <= 49; p++) 
 { 
 cout << "Digite um valor : "; 
 cin >> num[p]; 
 } 
 
 for (p = 0; p <= 49; p++) 
 { 
 if (num[p] % 2 == 0 && num[p] > 30) 
 cout << num[p] << "\t"; 
 } 
 
 system("pause"); 
 return 0; 
} 
 
 
O código armazenará em um vetor 50 números inteiros e imprimirá somente os números pares e que sejam 
maiores que 30. 
 
3. 
 
 
Uma professora possui uma turma de 40 alunos e precisa declarar uma matriz bidimensional, na linguagem C++, para 
armazenar as notas de AV1, AV2 e AV3 da turma. Considere que ela necessita dos dados organizados na matriz, de 
modo que cada linha deverá representar um aluno. Assinale a alternativa que apresenta a declaração desta matriz. 
 
 
float notas[40][3]; 
 
4. 
 
 
Sendo a matriz M bidimensional igual a: 
 
1 2 3 4 
5 -5 3 0 
Dimensionadas da seguinte maneira: 
int m[2][4]; 
Determine quais são os seguintes elementos: 
 m[0][3] 
 m[0][0] 
 m[1][1] 
 m[1][2] 
 
 
4 - 1 - -5 - 3 
 
5. 
 
 
<valor[x]; 
 
 
 
 
Todos os elementos que são maiores que cinco do vetor VALOR. 
 
6. 
 
 
Um estudante do curso Sistemas de Informação precisa declarar uma matriz bidimensional para armazenar o valor dos 
12 salários de 45 funcionários. 
Qual das opções abaixo o estudante deverá declarar? 
 
 
float funcionario[45][12]; 
 
7. 
 
 
Um iniciante em programação estava com problemas em um dos seus códigos. 
Ele precisava declarar uma variável para armazenar o nome completo de uma pessoa. Gostaria de ajudá-lo? Então, 
observe as opções e escolha aquela que resolve os problemas dele. 
 
 
char nome[30]; cin.getline(nome,30); 
 
8. 
 
 
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. 
 
 
Análise de código abaixo e selecione entre as alternativas, o que será impresso, após a execução. 
int a = 3, b = 2; 
int v[] = { 6, 7, 8, 9}; 
a = (v[2] - v[0]) + a; 
int d = a * v[b]; 
std::cout << d << " " << v[1] << a + 2; 
 
 
40 77 
 
2. 
 
 
 
 
 
-1 0 1 2 3 4 4 3 2 1 
 
3. 
 
 
Observe as declarações abaixo e assinale a opção correta. 
 
I int idades[]={5,16,27,19}; 
II float CR[3]={6.1, 8.9, 9.3}; 
III char letras[]={"A", "E", "I", "O", "U"}; 
IV char letras[]={"ALGORITMOS"}; 
 
 
As declarações I , II e IV estão corretas 
 
4. 
 
 
Sabendo-se que a sintaxe do C e do C++ estabelece que a declaração de vetores bidimensionais deve se dar da 
seguinte forma: 
< tipo do dado > nome_da_matriz [nº de linhas][nº de colunas]; 
Na codificação de um programa, na linguagem C++, é necessário a declaração de uma matriz bidimensional para 
armazenar as notas de 6 disciplinas de uma turma com 30 alunos. Tomando-se como base que o algoritmo considera 
que os dados estarão organizados na matriz de modo que cada linha represente as notas de um único aluno, marque a 
alternativa que apresentade forma correta a declaração desta matriz, chamada notasAlunos. 
 
 
a) float notasAlunos[30][6]; 
 
5. 
 
 
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[8][5]; 
 
6. 
 
 
Análise a seguinte afirmação: 
"Um shopping possui 4 andares, cada andar possui 30 lojas". 
Se você for declarar uma matriz, na linguagem C++, para a afirmação acima, qual das opções abaixo você escolheria? 
 
 
int shopping[4][30]; 
 
7. 
 
 
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. 
 
8. 
 
Um lojista gostaria de desenvolver um programa para armazenar os códigos(valores inteiros), os valores de 
compra(valores reais), os valores de vendas(valores reais) e a quantidade(valores inteiros) de todos os mil produtos. 
 
 Pensou em declarar algumas matrizes unidimensionais para tornar isso possível. 
Qual das opções abaixo declara as matrizes necessárias para que o programa possa ser desenvolvido a partir delas e 
seguindo, rigorosamente, as sugestões do texto acima? 
 
 
int codigos[1000], qtdade[1000]; float valorC[1000], valorV[1000]; 
 
1. 
 
 
Em um programa, deseja-se armazenar as 3 notas , a média e a maior nota de cada um dos 50 alunos de uma turma, 
em uma matriz NOTA. Entendendo-se que todos os dados de um mesmo aluno ficarão armazenados em uma mesma 
linha, assinale a alternativa que indica a declaração correta na matriz descrita. 
 
 
float NOTA [50][5]; 
2. 
 
 
Um médico precisa armazenar o peso, a altura e o IMC de seus 1000 pacientes. Contratou um programador que disse 
que o programa teria algumas matrizes unidimensionais para o armazenamento. 
Assinale a opção abaixo que representa a declaração das referidas matrizes pelo programador, conforme as 
informações acima: 
 
 
float peso[1000], altura[1000], imc [1000]; 
 
3. 
 
 
Qual estrutura de repetição abaixo preenche corretamente um vetor de 30 posições com 0 (zero) em cada uma das 
posições? 
 
 
for(int i=0;i<30;i++){ vetor[i] = 0; } 
 
4. 
 
 
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 5 9 
 
6. 
 
 
Suponha que em um programa em C/C++ se deseje armazenar 15 valores decimais em um vetor LISTA. Assinale a 
declaração correta: 
 
 
float LISTA[15]; 
 
8. 
 
 
Os chamados vetores e matrizes podem ser considerados como: 
 
 
Estruturas de dados homogêneas 
 
1. 
 
 
Um lojista gostaria de desenvolver um programa para armazenar os códigos(valores inteiros), os valores de 
compra(valores reais), os valores de vendas(valores reais) e a quantidade(valores inteiros) de todos os mil produtos. 
 Pensou em declarar algumas matrizes unidimensionais para tornar isso possível. 
Qual das opções abaixo declara as matrizes necessárias para que o programa possa ser desenvolvido a partir delas e 
seguindo, rigorosamente, as sugestões do texto acima? 
 
 
 
 
int codigos[1000], qtdade[1000]; float valorC[1000], valorV[1000]; 
 
1. 
 
 
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: 
 
 
float valores[30][3]; 
 
1. 
 
 
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: 
 
 
float valores[30][3];

Continue navegando