Académique Documents
Professionnel Documents
Culture Documents
2 Semestre
2013
Sumrio
1. Orientaes sobre a Apostila ....................................................................................................... 3
2. Planejamento ............................................................................................................................... 4
3. Referncia bibliogrfica .............................................................................................................. 5
Parte 1- Roteiros Prticos ................................................................................................................ 6
Roteiro 1 - Como iniciar uma aplicao de console no Dev-C++ .............................................. 7
Roteiro 2 Estrutura Sequencial em C++ ................................................................................. 11
Exemplo ................................................................................................................................ 14
Exerccios .............................................................................................................................. 15
Roteiro 3 Estrutura Condicional em C++............................................................................... 16
Exemplos ............................................................................................................................... 18
Exerccios .............................................................................................................................. 19
Roteiro 4 Estrutura de Repetio em C++ ............................................................................. 21
Exemplos ............................................................................................................................... 22
Exerccios .............................................................................................................................. 24
Roteiro 5 Vetor em C++ ......................................................................................................... 25
Exemplos ............................................................................................................................... 26
Exerccios .............................................................................................................................. 27
Roteiro 6 Matriz em C++ ....................................................................................................... 29
Exemplos ............................................................................................................................... 30
Exerccios .............................................................................................................................. 31
Parte 2 - Listas de Exerccios ........................................................................................................ 33
Lista 1 Estrutura Sequencial em C++ ..................................................................................... 34
Lista 2 Estrutura Condicional em C++ ................................................................................... 35
Lista 3 Estrutura de Repetio em C++ ................................................................................. 37
Lista 4 Vetor em C++ ............................................................................................................. 39
Lista 5 Matriz em C++ ........................................................................................................... 41
Lista Extra ................................................................................................................................. 42
Pgina 2
2. Planejamento
O planejamento a seguir apenas uma proposta de como usar a apostila para aprender Algoritmos e
Lgica de Programao e algumas referncias para buscar conceitos da linguagem C++.
Unidade de Ensino
/Roteiro
Aula
Roteiro
Roteiro 1
3
4
5
6
7
8
9
10
11
12
13
Lista 1
Estrutura Sequencial
Estrutura Condicional
Estrutura de Repetio
Roteiro 5 Vetor
Lista 4
Vetor
Roteiro 6 Matriz
Lista 5
Lista
extra
-
Referncia Bibliogrfica
Roteiro 1 (livro)
Roteiro 2 (livro), Cap. 3 [Ascencio], Cap. 2 [Mizrahi, 2006]
Lista 1 (livro), Cap. 3 [Ascencio], Cap. 2 [Mizrahi, 2006]
Roteiro 3 (livro), Cap. 4 [Ascencio], Cap. 3 [Mizrahi, 2006]
Lista 2 (livro), Cap. 4 [Ascencio], Cap. 3 [Mizrahi, 2006]
Roteiro 4 (livro), Cap. 5 [Ascencio], Cap. 4 [Mizrahi, 2006]
Lista 3 (livro), Cap. 5 [Ascencio], Cap. 4 [Mizrahi, 2006]
Roteiro 5 (livro), Cap. 6 [Ascencio], Cap. 6 [Mizrahi, 2006]
Lista 4 (livro), Cap. 6 [Ascencio], Cap. 6 [Mizrahi, 2006]
Roteiro 6 (livro), Cap. 7 [Ascencio], Cap. 6 [Mizrahi, 2006]
Matriz
Matria toda
Avaliao Prtica
Pgina 4
3. Referncia bibliogrfica
Referncia Bsica
[ASCENCIO] Ascencio, Ana Fernanda Gomes e Campos, Edilene Aparecida Veneruchi de. .
Fundamentos da programao de computadores: algoritmos, Pascal e C++ e Java. 2.ed. So Paulo:
Pearson Pascal e C++ e Java. 2.ed. So Paulo: Pearson Prentice Hall, 2008.
[MIZRAHI, 2006] Mizrahi, Victorine Viviane. Treinamento em Linguagem C++: Mdulo I. 2 Ed.
So Paulo. Editora Pearson, Prentice Hall, 2006.
Referncia Complementar
[CORMEN] Cormen, Thomas H. [et al.]. Algoritmos: teoria e prtica. Rio de Janeiro: Elsevier,
2002.
[DEITEL] Deitel, H.M; Deitel, P.J. Como Programar C++. Porto Alegre: Bookmen. 2006.
[FORBELLONE] Forbellone, Andr Luiz Villar e Eberspcher, Henri Frederico. Lgica de
programao : a construo de algoritmos e estruturas de dados. Editora Pearson, Prentice Hall. 3
Ed.
[MEDINA] Medina, Marco. Algoritmos e programao : teoria e prtica. . 2 Ed. So Paulo.
Novatec. 2006 . 2a. Ed. So Paulo. Novatec. 2006.
[SILVA] Silva, Osmar Quirino da. . Estrutura de dados e algoritmos usando c: fundamentos e
aplicaes. Rio de Janeiro: Cincia Moderna, 2007.
[SOUZA et. al.], A. Furlan; GOMES, Marcelo Marques; SOARES, Marcio Vieira e CONCILIO,
Ricardo. Algoritmos e Lgica de Programao. 2 ed. Ver. e ampl. So Paulo: Cengage Learning,
2011.
Pgina 5
Pgina 6
Fechar
2. Crie um novo arquivo fonte pressionando o boto Arquivo Novo Arquivo Fonte. Em
seguida aparecer a tela mostrada na Figura 2.
Pgina 7
3. Em seguida ser aberta uma tela no qual voc dever digitar o programa em C++ (figura 3).
5. Aps digitar o cdigo acima no Dev-C++, compile e execute o programa. Para compilar e
executar o programa, basta clicar no boto
ou (F9).
Pgina 8
6. Uma tela ser aberta para salvar o arquivo (d um nome para o arquivo principal do seu
programa em seguida salve). Use sempre nomes sugestivos para os seus programas, ou seja,
nomes que lhe remetem a ideia ou objetivo do programa. Para o nosso exemplo vamos dar o
seguinte nome exemplo1. No use acentos e caracteres especiais nos nomes dos programas
7. O seu programa executar em seguida mostrar uma mensagem na tela (figura 4)
Pgina 9
Como exerccio, digite os exemplos abaixo no Dev-C++ e tente entender o que est ocorrendo:
Exemplo 2:
/*
Programador :
Data :
Descrio:
*/
#include <iostream.h>
int main()
{
int num1;
cout << "\n Digite um numero: ";
cin >> num1;
cout << "\n Vai imprimir o numero digitado: ";
cout << num1;
system("PAUSE");
}
Exemplo 3:
/*
Programador :
Data :
Descrio:
*/
#include <iostream.h>
int main()
{
int x, y, soma;
cout<<"\n Digite um numero: ";
cin>>x;
cout<<"\n Digite outro numero: ";
cin>>y;
soma = x+ y;
cout<<"\n A soma de x com y e: "<<soma;
cout<<"\n\n";
system("PAUSE");
}
Pgina 10
Bibliotecas so arquivos contendo vrias funes que podem ser incorporadas aos
programas escritos em C++. A diretiva # include faz com que o texto contido dentro da
biblioteca especificada seja inserido no programa.
As bibliotecas iostream.h e conio.h permitem a utilizao de diversos comandos de entrada
e sada.
A linguagem C++ sensvel a letras maisculas e minsculas, ou seja, considera que letras
maisculas so diferentes de minsculas (por exemplo, a diferente de A)
Todos os comandos devem, obrigatoriamente, ser escritos com letras minsculas.
Declarao de variveis:
int main()
{
//Declarao de variveis
int Y;
float X;
char sexo, nome[40];
}
Comando de atribuio:
int main()
{
int y, x, soma;
//Atribuio de valores
y = 2;
x = 3;
soma = y + x;
}
Pgina 11
Utilizado para atribuir valores ou operaes a variveis, sendo representado por = (sinal de
igualdade).
Para entrada de dados em C++, o comando que ser utilizado o cin>>. Assim, com o
comando (cin>>num; ) o valor digitado pelo usurio ser armazenado na varivel num.
Para sada de dados em C++, o comando que ser utilizado o cout<<. Assim, com o
comando (cout<<"Digite um numero: ";)o texto Digite um nmero aparecer
na tela do computador para o usurio.
Operadores matemticos:
Operador
Exemplo
Comentrio
x+y
Soma o contedo de X e de Y.
xy
x*y
x/y
x%y
++
x ++
Pgina 12
--
x--
Exemplo
x+=y
x=y
x*=y
x/=y
x%=y
Comentrio
Equivale a X = X + Y.
Equivale a X = X - Y.
Equivale a X = X * Y.
Equivale a X = X / Y.
Equivale a X = X % Y.
Expresses aritmticas:
A linguagem C++ possui algumas funes matemticas prontas para serem usadas. Todas elas
podem ser observadas detalhadamente na documentao da biblioteca math.h. Para se utilizar as
funes dessa biblioteca deve-se adicionar a clusula: #include <math.h>. Algumas das funes
disponveis nessa biblioteca so:
Funo
abs(i)
Finalidade
Retorna o valor absoluto de i.
ceil(d)
cos(d)
Retorna o cosseno de d.
floor(d)
log(d)
pow(d1, d2)
rand()
sin(d)
Retorna o seno de d.
sqrt(d)
tan(d)
Retorna a tangente de d.
As funes acima que possuem retorno, devem ser usadas com cuidado, e precisam de uma
varivel para receber esse retorno conforme exemplo:
potencia = pow (b, 2);
Pgina 13
No exemplo a varivel potencia vai receber o retorno da funo pow. Essa funo vai
retorna o resultado de b elevado a dois.
Exemplo
O programa abaixo calcula a hipotenusa de um tringulo retngulo, dados os seus catetos, pelo
Teorema de Pitgoras.
Busque informaes sobre Teorema de Pitgoras!
/*
Programador:<Nome>
Descricao: Calcula a hipotenusa de um triangulo retngulo dados os
seus catetos.
Entrada: Lados b e c de um tringulo retngulo.
Saida: impressao da mensagem.
*/
#include <iostream.h>
#include <math.h>
int main()
{
float a , b , c;
cout<<"\n Digite o valor de b: ";
cin>>b;
cout<<"\n Digite o valor de c: ";
cin>>c;
a = sqrt ( pow(b , 2 ) + pow( c , 2 ) ) ;
cout << "\n O valor da hipotenusa e: "<< a;
cout<< "\n\n";
system("PAUSE");
}
Digite e compile o cdigo fonte do exemplo acima. Observe o uso das funes matemticas usadas
no exemplo. Use para o exemplo os seguintes valores b = 4 e c = 3.
Pgina 14
Exerccios
Busque informaes sobre equao do segundo grau e como encontrar suas razes!
Por exemplo:
x1: 1
x2: 0
Exerccio 2: Faa um programa em C++ para ler trs nmeros inteiros do teclado. A sada na tela
deve ser o primeiro nmero ao cubo, o triplo do segundo nmero e a raiz quadrada do terceiro
nmero.
Exerccio 3: Faa um programa em C++ para calcular a rea de um trapzio. O programa deve ler
do teclado o valor da base menor, base maior e a altura. Em seguida, imprimir na tela o valor da
rea do trapzio.
Busque informaes sobre o clculo da rea de trapzio!
Exerccio 4: Faa um programa em C++ que receba o preo de um produto, calcule e mostre o
novo preo, sabendo -se que:
a) o preo do produto sofreu um desconto de 10%
b) o preo do produto sofreu um aumento de 20%
Pgina 15
Observe que o bloco de comandos s ser executado se a condio for verdadeira, Uma
condio uma comparao que possui dois valores possveis, verdadeiro ou falso.
A condio deve estar entre parnteses ( ).
Em C++, torna-se obrigatria a utilizao de chaves quando houver mais de um comando a
ser executado. Os comandos entre as chaves { } s sero executados se a condio for
verdadeira.
Pgina 16
Operadores relacionais:
Operador
==
!=
<=
>=
<
>
Exemplo
x == y
x != y
x <= y
x >= y
x<y
x>y
Comentrio
O contedo de X igual ao contedo de Y
O contedo de X diferente do contedo de Y
O contedo de X menor ou igual ao contedo de Y
O contedo de X maior ou igual ao contedo de Y
O contedo de X menor que o contedo de Y
O contedo de X maior que o contedo de Y
Operadores lgicos:
Operador
&&
||
Exemplo
Comentrio
Significa que a condio verificada ser X >= 3 E X < 7, ou
if (x >= 3 && x < 7 )
seja, a condio ser verdadeira se X estiver entre 3 e 7
Significa que a condio verificada ser X >= 3 OU X <= 7,
if (x >= 3 || x >= 7 )
ou seja, tanto se X for maior que 3 como se X for maior que 7
a condio ser verdadeira
A ! (NO) a negao, ou seja, muda um valor lgico de
verdadeiro para falso e de falso para verdadeiro
!x
- Resulta 1 (verdadeiro) somente se x for falsa.
- Resulta 0 (falso) somente se x for verdadeiro.
Tabela verdade:
Tabela E ( && )
VeV=V
VeF=F
FeV=F
FeF=F
Tabela OU ( || )
V ou V = V
V ou F = V
F ou V = V
F ou F = F
Tabela NO ( ! )
No V = F
No F = V
Pgina 17
Exemplos
Exemplo 1 - Digite e compile o cdigo fonte abaixo:
//Lembre-se de colocar as bibliotecas
int main()
{
float valor;
cout<<"\n Digite um numero: ";
cin>> valor;
if(valor > 0)
{
cout<<"\n o numero digitado e maior que ZERO";
}
if(valor == 0)
{
cout<<"\n o numero digitado e igual a ZERO";
}
if(valor < 0)
{
cout<<"\n o numero digitado e menor que ZERO";
}
cout<<"\n\n";
system("PAUSE");
}
O que o programa faz? Coloque comentrios no programa para explicar o que cada comando faz.
Exemplo 2 - Digite e compile o cdigo fonte abaixo:
int main()
{
float valor;
cout<<"\n Digite um numero: ";
cin>> valor;
if(valor > 0)
{
cout<<"\n o numero digitado e maior que ZERO";
}
else if(valor == 0)
{
cout<<"\n o numero digitado e igual a ZERO";
}
else
{
cout<<"\n o numero digitado e menor que ZERO";
}
system("PAUSE");
}
Pgina 18
Exerccios
Exerccio 2 - Faa um fluxograma, em seguida, um programa em C++ que leia trs nmeros
inteiros e mostre na tela esses nmeros ordenados em ordem crescente.
Exerccio 3 - Criar um programa em C++ que solicite a entrada de um nmero, em seguida
imprime na tela se o nmero digitado positivo, negativo ou nulo.
Elaborao prof. Ivre Marjorie 10/08/2013
Mais informaes: www.professoresalgoritmos.com
Pgina 19
Exerccio 4 - Faa um programa em C++ que mostre o menu de opes a seguir, receba a opo do
usurio e os dados necessrios para executar cada operao.
Menu de opes:
1- Somar dois nmeros
2- Raiz quadrada de nmero
Observao: Para calcular a raiz, ser necessrio validar se o nmero digitado maior que Zero.
Exerccio 5 - Faa um programa em C++ que receba o cdigo correspondente ao cargo de um
funcionrio e seu salrio atual. O programa dever calcular o aumento e mostrar na tela o cargo, o
aumento e o novo salrio. Os cargos e o percentual de aumento esto na tabela a seguir:
Cdigo
Cargo
1
Escriturrio
Percentual de aumento
50%
Secretrio
35%
Caixa
20%
Gerente
20%
Diretor
No tem aumento
Pgina 20
Pgina 21
Exemplos
Exemplo 1 - Digite e compile o cdigo fonte abaixo:
//Lembre-se das bibliotecas
int main()
{
int quant=0, num, i;
for (i = 1; i <= 5; i++)
{
cout <<"\n Entre um valor inteiro: ";
cin >> num;
if(num>5)
{
quant = quant + 1;
}
}
cout<<"\n Foram digitados "<<quant<<" numeros maiores que 5";
cout<<"\n\n";
system("PAUSE");
}
O que o programa faz? Coloque comentrios no programa para explicar o que cada comando faz.
Exemplo 2 - Digite e compile o cdigo fonte abaixo:
//Bibliotecas...
int main()
{
int num, N, i=0, soma=0;
cout<<"\nQuantos numeros deseja digitar: ";
cin>>N;
while(i < N)
{
cout <<"\n Entre um valor inteiro: ";
cin >> num;
soma = soma + num;
i++;
}
cout<<"\n Foram digitados "<<N<<" numeros";
cout<<"\n A soma dos numeros digitados e: "<<soma;
cout<<"\n\n";
system("PAUSE");
}
O que o programa faz? Coloque comentrios no programa para explicar o que cada comando faz.
Elaborao prof. Ivre Marjorie 10/08/2013
Mais informaes: www.professoresalgoritmos.com
Pgina 22
O que o programa faz? Coloque comentrios no programa para explicar o que cada comando faz.
Exemplo 4 - Digite e compile o cdigo fonte abaixo:
//Bibliotecas...
int main()
{
int saida, numero, cont=0;
do
{
cout<<"\n Digite um numero inteiro: ";
cin>> numero;
cont++;
cout<<"\n Para sair digite -1 e para continuar outro numero ";
cin>>saida;
} while (saida != -1);
cout << "\n\n Foram digitados "<<cont<<" numeros";
system("PAUSE");
}
O que o programa faz? Coloque comentrios no programa para explicar o que cada comando faz.
Pgina 23
Exerccios
Busque informaes sobre porcentagens e mdia aritmtica.
Exerccio 1 - Faa um programa em C++ que receba dez nmeros, calcule e mostre a soma dos
nmeros pares e a quantidade de nmeros mpares digitados.
Exerccio 2 - Faa um programa que receba a idade de oito pessoas, calcule e mostre:
a) A quantidade de pessoas em cada faixa etria;
b) A porcentagem de pessoas na primeira faixa etria com relao ao total de pessoas;
c) A porcentagem de pessoas na ltima faixa etria com relao ao total de pessoas.
Use a tabela a seguir para as faixas etrias:
Faixa etria
1
2
3
4
5
Idade
At 15 anos
De 16 a 30 anos
De 31 a 45 anos
De 46 a 60 anos
Acima de 60 anos
Exerccio 3 - Faa um programa que receba uma sequncia de nmeros e retorne o maior nmero e
o menor nmero da sequncia digitada. A quantidade de nmeros n fornecida pelo usurio. Use a
estrutura WHILE.
Exerccio 4 - Faa um programa que leia nmeros inteiros, calcule e mostre a quantidade de
nmeros divisveis por 3 e a quantidade de nmeros divisveis por 7 dos nmeros informados. O
programa finalizado ao usurio informar um nmero negativo. Use a estrutura DO-WHILE.
Exerccio 5 - Em uma eleio presidencial existem quatro candidatos. Os votos so informados por
meio de cdigo. Os cdigos utilizados so:
1, 2, 3, 4
5
6
Faa um programa que calcule e mostre: o total de votos para cada candidato; o total de votos
nulos; a porcentagem de votos em branco sobre o total de votos.
Para finalizar o conjunto de votos digitados, tem-se o valor zero e, para cdigos invlidos, o
programa dever mostrar uma mensagem Voto invlido!.
Pgina 24
Para acessar os elementos do vetor, deve utilizar o valor do ndice desejado, juntamente com
o nome da varivel, por exemplo, peso[2] est associado ao terceiro elemento do vetor pois
o primeiro elemento est relacionado ao ndice 0
Declarao de um vetor:
Para declarar um vetor:
Tipo nome_Vetor [tamanho_do_vetor];
# include <nome da biblioteca>
int main()
{
int peso[10];
float nota[41];
char nome[80];
}
Preenchendo um vetor:
Preencher um vetor significa atribuir valores para todas as posies de um vetor.
for (int i = 0; i < tamanho do vetor; i++)
{
cin >> nome_vetor[i];
}
Pgina 25
Mostrando um vetor:
Para mostrar todas as posies de um vetor.
for (int i = 0; i < tamanho do vetor; i++)
{
cout << nome_vetor[i];
}
Exemplos
Exemplo 1 - Digite e compile o cdigo fonte abaixo:
#include <iostream.h>
int main()
{
float notas[5] = {10,5,8,2,8};
int i=0;
cout<< "\n Impressao dos elementos do vetor";
for(i=0; i < 5; i++)
{
cout<<"\nNota "<<(i+1)<<": "<<notas[i];
}
cout<<"\n\t\tFim do programa\n";
system("PAUSE");
}
O que o programa faz? Coloque comentrios no programa para explicar o que cada comando faz.
Exemplo 2 - Digite e compile o cdigo fonte abaixo:
//Bibliotecas
int main()
{
float notas[5];
float media=0, soma=0, menor=0;
int i=0;
for(i=0; i < 5; i++)
{
cout<<"\nDigite a nota " <<(i+1)<<": ";
cin>>notas[i];
}
Pgina 26
menor = notas[0];
for(i=0; i < 5; i++)
{
soma = soma + notas[i];
if (notas[i] < menor)
{
menor = notas[i];
}
}
media = soma / 5;
cout<<"\n Soma total = "<<soma;
cout<<"\n Mdia
= "<<media;
cout<<"\n Menor nota = "<<menor;
system("PAUSE");
}
O que o programa faz? Coloque comentrios no programa para explicar o que cada comando faz.
Exerccios
Exerccio 1 - Faa um programa em C++ que receba vinte nmeros, calcule e mostre a soma dos
nmeros positivos e a quantidade de nmeros negativos digitados. Lembre-se de usar vetor.
Exerccio 2 - Faa um programa em C++ que preencha dois vetores de cinco elementos numricos
cada um e mostre o vetor resultante da intercalao deles. Como no exemplo abaixo:
0
Vetor1 3
Vetor2 7
Vetor Resultante
15 20 0
18
5
15 4
20 2
18
Exerccio 3 - Faa um programa que preencha um vetor com 15 nmeros inteiros, calcule e mostre:
a) A quantidade de posies com elementos iguais a 2
b) Os elementos (nmeros) mltiplos de 3
c) As posies que possuem elementos (nmeros) mltiplos de 2
Pgina 27
Vetor Original
Vetor Invertido
18 2
15 4
4
20 2
18
15 5
20 4
Vetor incio
Vetor fim
15 4
20 2
18
20 18 15 7
Pgina 28
Pgina 29
Exemplos
Exemplo 1 - Digite e compile o cdigo fonte abaixo:
//Bibliotecas
int main ()
{
int preco[3][4],linha,coluna,cont=0, maior;
for (linha=0;linha<3;linha++)
{
for (coluna=0;coluna<4;coluna++)
{
cout<<"\n Digite o preco do produto "<<linha<<" da loja "<<coluna<<" : ";
cin>>preco[linha][coluna];
}
}
Pgina 30
maior = preco[0][0];
for (linha=0;linha<3;linha++)
{
for (coluna=0;coluna<4;coluna++)
{
if(preco[linha][coluna]>100)
{
cont++;
}
if(preco[linha][coluna]>maior)
{
maior = preco[linha][coluna];
}
}
}
cout<<"\nMaior preco: "<<maior;
cout<<"\nA quantidade de produtos com preco maior que 100 e: "<<cont;
system("PAUSE");
}
O que o programa faz? Coloque comentrios no programa para explicar o que cada comando faz.
Exerccios
Exerccio 1 - Faa um programa que carregue uma matriz 4 X 5, calcule e mostre um vetor com
cinco posies, onde cada posio contm a soma dos elementos de cada coluna da matriz. Em
seguida, mostre o vetor e a matriz na tela.
Exerccio 2 - Faa um programa C++ que preencha uma matriz de dimenses digitadas pelo usurio
e mostre o nmero de elementos maiores que 15 e menores que 25.
Exerccio 3 - Faa um programa C++ que preencha uma matriz 8 x 6 de inteiros, calcule e
mostre a mdia dos elementos das linhas pares da mesma.
Exerccio 4 - Faa um programa C++ que carregue uma matriz 5 X 5 com nmeros inteiros, calcule
e mostre a soma:
a) dos elementos da linha 4;
b) dos elementos da coluna 2;
c) de todos os elementos da matriz.
Pgina 31
Exerccio 5 - Faa um programa que receba o estoque atual de trs produtos, armazenados em
quatro armazns e coloque esses dados em uma matriz 4 x 3. Em seguida, o programa dever
calcular e mostrar:
a) a quantidade de itens armazenados em cada armazm
b) qual armazm possui maior estoque do produto 2
c) qual armazm possui menor estoque do produto 1
Produto 1
Produto 2
Produto 3
Armazm 1
Armazm 2
Armazm 3
Armazm 4
Pgina 32
Pgina 33
Antes de comear a fazer essa lista de exerccios, busque informaes sobre Raciocnio
Lgico.
1- Responda as perguntas a seguir:
a. O que um algoritmo?
b. Quais so os tipos mais utilizados de algoritmos? Apresente a vantagem e
desvantagem do uso de cada um.
c. O que uma varivel e qual o seu objetivo em um programa de computador?
4-
Pgina 34
5-
6- Faa um programa que receba a idade de um nadador e mostre a sua categoria usando as
regras da tabela abaixo:
Categoria
Idade
Infantil
5a7
Juvenil
8 a 10
Adolescente
11 a 15
Adulto
16 a 30
Snior
Acima de 30
Pgina 35
7- Faa um programa que receba o salrio de um funcionrio, calcule e mostre o novo salrio,
acrescido de bonificao e de auxlio escola conforme tabela abaixo:
Salrio
Bonificao
Salrio
Auxlio Escola
At R$ 500,00
5% do salrio
At R$ 600,00
R$ 150,00
R$ 100,00
Entre R$ 500,00 e R$
1200,00
Acima de R$ 1200,00
12% do salrio
Sem bonificao
Pgina 36
2- Faa um programa para imprimir na tela os 10 primeiros nmeros inteiros maiores que 100
utilizando as estruturas de repetio (for, while, do-while).
3- Faa um programa que receba um nmero inteiro maior que 1, verifique se o nmero
fornecido primo ou no e mostre a mensagem de nmero primo ou de nmero no primo.
Use estrutura de repetio. (obs. Um nmero primo quando divisvel apenas por 1 e por
ele mesmo).
4-
5- Dado o cdigo abaixo indique o resultado do mesmo para cada um dos valores de val.
int main()
{
int i, n = 3;
int val = ??;
for (i=0; i<=5; i++)
{
val = val + n;
}
n = 5;
cout<< val;
getch();
val = -1
Resposta =
b)
val = 0
Resposta =
c)
val = 2
Resposta =
d)
val = 3
Resposta =
Pgina 37
6- Faa um programa que receba vrios nmeros, finalize a entrada de nmeros no programa
com a digitao do nmero -1, calcule e mostre na tela:
7- Construa um programa que l uma opo conforme abaixo e o salrio atual do funcionrio,
calcula e exibe o novo salrio. Deve-se repetir o clculo para diversos funcionrios,
enquanto for informado um salrio vlido (maior do que zero).
A Para aumento de 8%
B Para aumento de 11%
C Para aumento fixo de R$ 450,00
8- Faa um programa para calcular a rea de um tringulo, que NO permita a entrada de
dados invlidos, ou seja, medidas menores ou iguais a zero.
9-
Mdia aritmtica
Mensagem
At 3
Reprovado
Entre 3 e 7
Exame
Acima de 7
Aprovado
Pgina 38
4-
Faa um programa que carregue um vetor com 10 nmeros inteiros digitados pelo
usurio. Em seguida, calcule e mostre o mesmo vetor ordenado de maneira crescente.
0
vetor
vetor
ordenado
3
0
5
1
4
2
2
3
1
4
6
5
8
6
7
7
11
8
9
9
11
Pgina 39
7- Uma academia tem 30 alunos. Faa um programa para ler o peso de todos os alunos e logo
em seguida imprimir:
Pgina 40
2-
Faa um programa que declare uma matriz de tamanho 10 x 10. Logo em seguida, o
programa deve em cada posio i, j armazena o valor (i * j). Logo em seguida imprima o
contedo da matriz.
3- Faa um programa que carregue uma matriz 3 x 5 com nmeros inteiros. Em seguida,
verifique a quantidade de elementos digitados entre 15 e 20. Mostre na tela essa quantidade.
4- Observe o cdigo abaixo. Quais so os valores da matriz que sero impressos na tela?
int main ()
{
int mtrx [3][4],i,j,cont=1;
for (i=0;i<3;i++)
{
for (j=0;j<4;j++)
{
mtrx[i][j]=cont+2;
cont++;
}
}
cout<<"\n"<<mtrx[0][1];
cout<<"\n"<<mtrx[1][2];
cout<<"\n"<<mtrx[2][3];
getch();
}
7-
Faa um programa que carregue uma matriz 2 X 2, calcule e mostre uma matriz
resultado que ser a matriz digitada multiplicada pelo maior elemento da matriz.
Pgina 41
Lista Extra
Exerccio 1- Faa um algoritmo (pseudocdigo e fluxograma), em seguida o programa em C++
que calcule a rea de um quadrado. O usurio dever digitar o valor do lado do quadrado. Em
seguida dever ser apresentado na tela o valor final da rea do quadrado.
rea do quadrado:
Exerccio 2 - Uma empresa contrata um encanador a R$ 50,00 por dia. Crie um programa que
solicite o nmero de dias trabalhados pelo encanador e imprima a quantia liquida que dever ser
paga, sabendo-se que so descontados 8% para imposto de renda.
Exerccio 3 - (Hemominas/2013 Analista de Sistemas) Se considerarmos que Isejam os dados
do tipo inteiro, Ros reais, Los literais e Bos lgicos, identifique a alternativa que preencha os
espaos dos seguintes dados:
( ) "JOSE"
( ) 0,2132
( ) +33
( ) sim/no
a) B - I - R - L
b) L - I - R - B
c) L - R - I - B
d) B - R - I L
Exerccio 4- Qual das seguintes opes representa a maneira correta de se declarar uma varivel
que armazenar um nmero real em C++?
a) int num;
b) Declare num NUMERICO
c) float num;
d) int num[10];
Exerccio 5 - Suponha que a e b sejam variveis inteiras, e os dados que as mesmas armazenaro
sero fornecidos por um usurio. Com base nestas informaes analise as afirmativas abaixo
colocando V (verdadeiro) ou F (falso) sobre o trecho de cdigo:
SE(a>b)
Ento ESCREVA "a"
SENO SE(b>a)
Ento ESCREVA "b"
SENO
ESCREVA "a, b"
Pgina 42
incio
a, b, c
sim
a == 0
No equao do
segundo grau
no
delta < 0
No existem
razes reais
sim
no
sim
delta == 0
X = - b / (2 * a)
no
X1 = (- b + sqrt(delta)) / (2*a)
X2 = (- b - sqrt(delta)) / (2*a)
X1, X2
fim
Pgina 43
Pgina 44
Exerccio 11 - Foi feita uma estatstica em cinco cidades brasileiras para coletar dados sobre
acidentes de trnsito. Foram obtidos os seguintes dados:
a) O cdigo da cidade (ex. 1, 2, 3, 4 e 5)
b) Nmero de veculos de passeio (em 2011)
c) Nmero de acidentes de trnsito com vtimas (em 2011)
Deseja-se saber:
a) Qual o maior e o menor ndice de acidentes de trnsito e a que cidade pertence;
b) Qual a mdia de veculos nas cinco cidades juntas;
c) Qual a mdia de acidentes de trnsito nas cidades com menos de 2000 veculos de
passeio.
Exerccio 13 - Faa um programa que preencha uma matriz 3 X 3 com nmeros inteiros, calcule e
mostre a mdia dos elementos da diagonal principal (linha=coluna).
Exerccio 14 - Faa um programa que preencha um matriz 4 x 4. Pea depois que o usurio informe
um valor numrico. O programa dever calcular e mostrar a matriz resultante da multiplicao do
nmero digitado por cada elemento da matriz.
Pgina 45
Dvidas ???
Entre em contato:
Email: ivre.marjorie@gmail.com
Site: www.professoresalgoritmos.com
Facebook: https://www.facebook.com/professoresalgoritmos
Pgina 46