Vous êtes sur la page 1sur 75

Programao C / C++

Prof. MSc. Daniel Menin Tortelli

e-mail: danielmenintortelli@gmail.com
MSN: danielmt_2003@hotmail.com Skype: daniel.menin.tortelli
Site: http://sites.google.com/site/danielmenintortelli/home

27/02/2013

Programao C++ - Prof. MSc.Daniel Menin Tortelli

A Estrutura de Seleo IF
Uma estrutura de seleo usada para se escolher cursos de ao alternativos.
Por exemplo, suponha que a nota para passar em um exame seja 60. O comando em pseudocdigo:

Se a nota do estudante maior que ou igual a 60 Imprima Aprovado


Se a condio true. ento impresso Aprovado e o prximo comando em pseudocdigo na seqncia executado (lembre que o pseudocdigo no uma linguagem de programao real). Se a condio false, o comando de impresso ignorado e o prximo comando em pseudocdigo na seqncia executado.
27/02/2013 Programao C++ - Prof. MSc.Daniel Menin Tortelli 2

A Estrutura de Seleo IF
O comando IF do pseudocdigo precedente pode ser escrito em C++ como:

if ( nota >= 60 ) cout << Aprovado! << endl;


Note que o cdigo em C++ corresponde de maneira prxima ao pseudocdigo.
Esta uma das propriedades do pseudocdigo que o torna uma ferramenta til para o desenvolvimento de programas. O pseudocdigo freqentemente usado para bolar um programa, durante o processo de projeto do mesmo. Aps isso, o programa convertido de pseudocdigo para C++.
27/02/2013 Programao C++ - Prof. MSc.Daniel Menin Tortelli 3

A Estrutura de Seleo IF/ELSE


A estrutura de seleo IF executa uma ao indicada s quando a condio true; caso contrrio, a ao saltada. A estrutura de seleo IF/ELSE permite ao programador especificar que uma ao deve ser executada quando a condio true e uma ao diferente quando a condio false. O comando em pseudocdigo: Se a nota do estudante maior que ou igual a 60 Imprima Aprovado Seno Imprima Reprovado

27/02/2013

Programao C++ - Prof. MSc.Daniel Menin Tortelli

A Estrutura de Seleo IF/ELSE


A estrutura se/seno precedente. em pseudocdigo, pode ser escrita em C++ como: if ( nota >= 60) cout << Aprovado! << endl; else cout << Reprovado! << endl;

27/02/2013

Programao C++ - Prof. MSc.Daniel Menin Tortelli

A Estrutura de Seleo IF/ELSE

27/02/2013

Programao C++ - Prof. MSc.Daniel Menin Tortelli

A Estrutura de Seleo IF/ELSE

27/02/2013

Programao C++ - Prof. MSc.Daniel Menin Tortelli

Exerccios
1 - Escreva um programa em C++ para ler o nmero de lados de um polgono regular. Calcular e imprimir o seguinte:
Se o nmero de lados for igual a 3 escrever TRINGULO e o valor do seu permetro. Se o nmero de lados for igual a 4 escrever QUADRADO e o valor da sua rea.

Se o nmero de lados for igual a 5 escrever PENTGONO.


Em qualquer outra situao escrever Polgono no identificado.
27/02/2013

Programao C++ - Prof. MSc.Daniel Menin Tortelli

Exerccios
2 - Escreva um programa em C++ que leia o valor de 3 ngulos de um tringulo (0 - 360) e escreva se o tringulo ACUTNGULO, RETNGULO ou OBTUSNGULO.

Observao:
Tringulo retngulo: possui um ngulo reto (90 graus). Tringulo obtusngulo: possui um ngulo obtuso (ngulo maior que 90 graus). Tringulo acutngulo: possui 3 ngulos agudos (ngulo menor que 90 graus).
27/02/2013 Programao C++ - Prof. MSc.Daniel Menin Tortelli 9

Exerccios
3 - Escreva um programa em C++ que leia as medidas dos lados de um tringulo e escreva se ele EQUILTERO, ISSCELES ou ESCALENO.
Observao: Tringulo equiltero: Possui os 3 lados iguais. Tringulo issceles: Possui 2 lados iguais. Tringulo escaleno: Possui 3 lados diferentes.
27/02/2013 Programao C++ - Prof. MSc.Daniel Menin Tortelli 10

Exerccios
4. Faa um programa que solicite a idade de um expectador de uma sala de cinema. Em seguida, analisando a idade do expectador, exiba sugestes de filmes em cartaz que ele pode assistir, de acordo com a sua faixa etria. Um exemplo pode ser visto no quadro a seguir:

Idade
Menor que 12 (livre) Maior igual a 12 e menor de 14 Maior igual a 14 e menos de 16 Maior igual a 16 e menor de 18 Maior de 18

Filmes
Era do gelo 3, Fora G, Kung Fu Panda... Tempos de Paz, Marido por acaso... Se beber no case, G.I. Joe A origem de cobra, A proposta... Vernica decide morrer, Arraste-me pro Inferno... Bruno, A teta assustada

27/02/2013

Programao C++ - Prof. MSc.Daniel Menin Tortelli

11

Exerccios
5 - Um ciclones tropical consiste em uma tempestade muito violenta que, sob determinadas condies, adquire um movimento de rotao em torno de uma regio de baixa presso atmosfrica. Um ciclone pode atingir um dimetro de at 500 km. Furaces so os mais violentos desses ciclones e chegam a produzir ventos de at 320 km/h. Na tabela abaixo, so apresentados alguns dados relativos classificao dos furaces segundo a escala SaffirSimpson:
classificao tempestade tropical furaco de categoria 1 furaco de categoria 2 furaco de categoria 3 furaco de categoria 4 furaco de categoria 5 velocidade dos ventos (km/h) 62 a 118 119 a 153 154 a 177 178 a 209 210 a 249 maior que 249

Escreva um programa que leia a velocidade do vento aferida durante uma tempestade e apresente ao usurio a classificao do furaco caso a tempestade possa ser classificada como tal.

27/02/2013

Programao C++ - Prof. MSc.Daniel Menin Tortelli

12

Exerccios
6. Escrever um algoritmo que l o nmero de um vendedor de uma empresa, seu salrio fixo e o total das vendas por ele efetuadas. Sabe-se que cada vendedor recebe um salrio fixo, mais uma comisso proporcional s vendas por ele efetuadas. A comisso de 3% sobre o total das vendas at R$ 10.000,00 e 5% sobre o que ultrapassa esse valor. Escrever o nmero do vendedor, o total de suas vendas, seu salrio fixo e seu salrio total.
27/02/2013 Programao C++ - Prof. MSc.Daniel Menin Tortelli 13

Exerccios
7. Escrever um algoritmo que l o nmero de identificao de um aluno e as 3 notas obtidas por este aluno nas 3 verificaes ao longo do semestre, bem como, a mdia dos exerccios que fazem parte da avaliao. Para cada aluno, calcular a mdia de aproveitamento, usando a frmula:

Continua...
27/02/2013 Programao C++ - Prof. MSc.Daniel Menin Tortelli 14

Exerccios
A atribuio de conceitos obedece a tabela ao lado:
Mdia de Aproveitamento >= 9.0 >= 7.5 e < 9.0 >= 6.0 e < 7.5 >= 4.0 e < 6.0 < 4.0 Conceito A B C D E

O algoritmo deve escrever o nmero do aluno, suas notas, a mdia dos exerccios, a mdia de aproveitamento, o conceito correspondente e a mensagem APROVADO se o conceito for A, B ou C e REPROVADO se o conceito for D ou E.
27/02/2013 Programao C++ - Prof. MSc.Daniel Menin Tortelli 15

Exerccios
8. A empresa XYZ decidiu conceder um aumento de salrios a seus funcionrios de acordo com a tabela ao lado:
SALRIO ATUAL 0 - 400 401 - 700 701 - 1000 NDICE DE AUMENTO 15% 12% 10%

1001 - 1800
1801 - 2500

7%
4%

Acima de 2500

Sem aumento

Escrever um algoritmo que l, o nmero do funcionrio, seu salrio atual. O programa deve escrever ao final, o numero do funcionrio, seu salrio atual, o percentual de seu aumento e o valor do salrio corrigido.
27/02/2013 Programao C++ - Prof. MSc.Daniel Menin Tortelli 16

Exerccios
9. Escrever um algoritmo que l um valor m.
Se m no inteiro, escrever uma mensagem O valor de m no inteiro!. Se m inteiro e negativo, escrever o valor de m e a mensagem m negativo! Caso contrrio, verificar se m par ou mpar e escrev-lo com a mensagem correspondente.
27/02/2013

Programao C++ - Prof. MSc.Daniel Menin Tortelli

17

Exerccios
10. Escrever um algoritmo que l uma data, subdividida em trs valores (dia, ms, ano) e escreva a data com a mensagem VLIDA ou INVLIDA. Em caso da data ser invlida, mostre qual parte da data (dia, ms, ano) est fora dos parmetros aceitveis. O formato de exibio da data deve ser:

Dia / Ms / Ano
27/02/2013 Programao C++ - Prof. MSc.Daniel Menin Tortelli 18

Exerccios
11. Escrever um algoritmo que l os nomes de 3 produtos, o preo unitrio de cada um e a quantidade de cada produto que foi solicitada. O algoritmo deve escrever:
O nome dos produtos cujo preo superior a R$ 50,00. O nome e o preo dos produtos que custam menos que R$ 30,00. O preo mdio dos 3 produtos. O nome e o preo dos produtos cujo valor superior ao preo mdio. O valor total a ser pago pelo pedido.
27/02/2013

Programao C++ - Prof. MSc.Daniel Menin Tortelli

19

Exerccios
12. Escrever um algoritmo que l o nome de uma pessoa, a sua data de nascimento e a data atual e verifica se a pessoa est apta a tirar a Carteira de Habilitao de condutor de veculo. Se estiver apta, escrever o nome da pessoa com a mensagem APTA PARA TIRAR CARTEIRA DE MOTORISTA!. Caso contrrio, escrever apenas a mensagem: FALTAM xx ANOS PARA PODER TIRAR A CARTEIRA DE MOTORISTA!.

27/02/2013

Programao C++ - Prof. MSc.Daniel Menin Tortelli

20

Exerccios
13. Dados uma sequencia com 5 nmeros inteiros,

determinar a soma dos inteiros positivos e a soma dos inteiros negativos da sequencia. Por exemplo, para a sequencia -2 7 0 -5 8 4 o seu programa deve escrever os nmeros Positivos: 19 e Negativos: -7.

27/02/2013

Programao C++ - Prof. MSc.Daniel Menin Tortelli

21

Exerccios
14. Dados uma seqncia com 3 nmeros inteiros, o programa deve orden-los e imprimi-los em ordem crescente e, logo aps, em ordem decrescente.

Exemplo:
Entrada: -3 10 -1 Sada: Ordem Crescente: -3 -1 10 Sada: Ordem Decrescente: 10 -1 -3

27/02/2013

Programao C++ - Prof. MSc.Daniel Menin Tortelli

22

Exerccios

27/02/2013

Programao C++ - Prof. MSc.Daniel Menin Tortelli

23

Exerccios
16. Faa um programa que receba 4 valores e

retorne o maior e o menor entre eles.

27/02/2013

Programao C++ - Prof. MSc.Daniel Menin Tortelli

24

Exerccios
17. Utilize a estrutura if para fazer um programa que retorne o nome de um produto a partir do cdigo do mesmo. Considere os seguintes cdigos: 1 - Parafuso; 2 - Porca; 3 - Prego; Para qualquer outro cdigo, mostrar Produto no encontrado!.
27/02/2013 Programao C++ - Prof. MSc.Daniel Menin Tortelli 25

Exerccios
18. Escreva um algoritmo que solicita ao usurio para digitar um nmero inteiro positivo, e mostre-o por extenso. Este nmero dever variar entre 1 e 10. Se o usurio introduzir um nmero que no pertena a este intervalo, mostre a frase Nmero Invlido.

27/02/2013

Programao C++ - Prof. MSc.Daniel Menin Tortelli

26

Exerccios
19. Calcular a quantidade dinheiro gasta por um fumante. Dados: o nmero de anos que ele fuma, o n de cigarros fumados por dia e o preo de uma carteira. 20. Leia 3 nmeros reais do teclado e verifique se o primeiro maior que a soma dos outros dois.

27/02/2013

Programao C++ - Prof. MSc.Daniel Menin Tortelli

27

Exerccios
21. Leia a velocidade mxima permitida em uma avenida e a velocidade com que o motorista estava dirigindo nela e calcule a multa que uma pessoa vai receber, sabendo que so pagos: a) 50 reais se o motorista estiver ultrapassar em at 10km/h a velocidade permitida (ex.: velocidade mxima: 50km/h; motorista a 60km/h ou a 56km/h); b) 100 reais, se o motorista ultrapassar de 11 a 30 km/h a velocidade permitida. c) 200 reais, se estiver acima de 31km/h da velocidade permitida.
27/02/2013 Programao C++ - Prof. MSc.Daniel Menin Tortelli 28

Exerccios
22. Ler 4 nmeros inteiros e calcular a soma dos que forem par.

23. Fazer um algoritmo que informe se um dado ano ou no bissexto. Obs: um ano bissexto se ele for divisvel por 400 ou se ele for divisvel por 4 e no por 100.
27/02/2013 Programao C++ - Prof. MSc.Daniel Menin Tortelli 29

Exerccios
24. Escreva um algoritmo que leia dois nmeros que devero ser colocados, respectivamente, nas variveis VA e VB. O algoritmo deve, ento, trocar os valores de VA por VB e vice-versa e mostrar o contedo destas variveis.

27/02/2013

Programao C++ - Prof. MSc.Daniel Menin Tortelli

30

Exerccios
25. Maria quer saber quantos litros de gasolina precisa colocar em seu carro e quanto vai gastar para fazer uma viagem at a casa de sua irm. Dados extras: - Distncia da casa de Maria at sua irm : 520 km - Seu carro consome 12 litros de gasolina por Km/rodado. - Ela abastece sempre no mesmo posto, onde o preo da gasolina R$ 2,75 o litro.
27/02/2013 Programao C++ - Prof. MSc.Daniel Menin Tortelli 31

Exerccios
26. Fazer um algoritmo para ajudar a bilheteria do metr. O operador deve informar o tipo do bilhete (unitrio, duplo ou 10 viagens) e o valor pago pelo passageiro. O sistema deve mostrar, ento, a quantidade de bilhetes possveis e o troco que o passageiro deve receber. Considere a seguinte tabela de preo: Bilhete unitrio .................................................................... 1,30 Bilhete duplo ....................................................................... 2,60 Bilhete de 10 viagens ........................................................ 12,00
27/02/2013 Programao C++ - Prof. MSc.Daniel Menin Tortelli 32

Exerccios
27. Escreva um algoritmo para ler o nome e a idade de uma pessoa, e exibir quantos dias de vida aproximados ela possui. Considere sempre anos completos, e que um ano possui 365 dias.

27/02/2013

Programao C++ - Prof. MSc.Daniel Menin Tortelli

33

Exerccios
28. Faa um programa que receba o peso de uma pessoa, calcule e mostre: a) o novo peso se a pessoa engordar 15% sobre o peso digitado; b) o novo peso se a pessoa emagrecer 20% sobre o peso digitado. 29. Faa um programa que receba o peso de uma pessoa em quilos, calcule e mostre esse peso em gramas.
27/02/2013 Programao C++ - Prof. MSc.Daniel Menin Tortelli 34

Exerccios
30. Faa um programa que solicite ao usurio se ele deseja realizar a converso de Dlar para Reais ou vice-versa. Em seguida, informe o valor a ser convertido, faa a converso e exiba o resultado apropriado.

27/02/2013

Programao C++ - Prof. MSc.Daniel Menin Tortelli

35

A Estrutura de Multi-Seleo SWITCH


A estrutura de seleo IF de seleo nica e a estrutura IF/ELSE de seleo dupla. Ocasionalmente, um algoritmo conter uma srie de decises em que uma varivel ou expresso ser separadamente testada para cada um dos valores integrais constantes que ela pode assumir e aes diferentes sero executadas. C++ oferece a estrutura de seleo mltipla SWITCH para tratar tais tomadas de decises. A estrutura SWITCH consiste em uma srie de rtulos CASE e um caso DEFAULT opcional.

A estrutura de seleo SWITCH executa uma de muitas aes diferentes, dependendo do valor de uma expresso inteira.
27/02/2013 Programao C++ - Prof. MSc.Daniel Menin Tortelli 36

27/02/2013

Programao C++ - Prof. MSc.Daniel Menin Tortelli

37

27/02/2013

Programao C++ - Prof. MSc.Daniel Menin Tortelli

38

A Estrutura de Multi-Seleo SWITCH


Erro comum de programao:
Esquecer um comando break, quando necessrio um, em uma estrutura switch, um erro de lgica.
Omitir o espao entre a palavra case e o valor inteiro que est sendo testado, em uma estrutura switch, pode causar um erro de lgica.

Boa prtica de programao:


Fornea um caso default em comandos switch. Os casos no-testados explicitamente em um comando switch sem um caso default so ignorados. considerada uma boa prtica de programao colocar a clusula default por ltimo. Em uma estrutura switch, quando a clusula default listada por ltimo, o comando break no necessrio. Alguns programadores incluem este break por clareza e simetria com outros casos.
27/02/2013 Programao C++ - Prof. MSc.Daniel Menin Tortelli 39

Utilizando Switch e a Biblioteca Matemtica (Math)

27/02/2013

Programao C++ - Prof. MSc.Daniel Menin Tortelli

40

27/02/2013

Programao C++ - Prof. MSc.Daniel Menin Tortelli

41

27/02/2013

Programao C++ - Prof. MSc. Daniel Menin Tortelli

42

Funes comumente usadas da biblioteca matemtica (MATH)


MTODO
ceil( x ) cos( x ) exp( x ) fabs( x ) floor( x ) fmod( x, y ) log( x ) log10( x ) pow( x, y ) sin( x ) sqrt( x ) tan( x )

DESCRIO
Arredonda x para o menor inteiro no menor que x Co-seno trigonomtrico de x (x em radianos) Funo exponencial e Valor absoluto de x Arredonda x para o maior inteiro no maior que x Resto de x/y como nmero de ponto flutuante Logaritmo natural de x (base e) Logaritmo de x (base 10) x elevado potncia de y (xy) Seno trigonomtrico de x (x em radianos) Raiz Quadrada de x Tangente trigonomtrica de x (x em radianos) ceil( 9.2 ) 10.0 cos( 0.0 ) 1.0 exp( 1.0 ) 2.71828 fabs( 5. 1 ) 5.1 floor( 9 .2 ) 9 .0

EXEMPLO
ceil( -9.8 ) -9.0

exp( 2.0 ) 7.38906 fabs( -8.76 ) 8.76

fabs( 0.0 ) 0.0

floor( -9.8 ) -10.0

fmod( 13.657, 2.333 ) 1.992 log( 2 . 718282 ) 1.0 log10 ( 10.0 ) 1.0 pow( 2, 7 ) 128 sin ( 0.0 ) 0 sqrt( 900.0 ) 30.0 tan ( 0.0 ) 0 sqrt( 9.0 ) 3.0 log( 7.389056 ) 2.0 log10( 100.0 ) 2.0 pow( 9, .5 ) 3

27/02/2013

Programao C++ - Prof. MSc.Daniel Menin Tortelli

43

Exerccios
31. Melhore o programa anterior para que ele possa tambm realizar as operaes de:
Arredondamento; Logaritmo natural; Seno trigonomtrico;

OBS: No tente reinventar a roda!!! Utilize funes prontas da biblioteca matemtica do C++.
27/02/2013 Programao C++ - Prof. MSc.Daniel Menin Tortelli 44

Exerccios
32. Escrever um algoritmo que l como dados de entrada o preo de um produto e seu cdigo de origem e escreva o preo do produto e sua procedncia.

As procedncias so dadas pela tabela abaixo.


Caso o cdigo no seja de nenhuma das procedncias da tabela, deve ser considerado como produto importado.
CDIGO 1 2 3 4
27/02/2013

PROCEDNCIA Regio Sul Regio Norte Regio Sudeste Regio Centro-Oeste


45

Programao C++ - Prof. MSc.Daniel Menin Tortelli

Exerccios
33. Escrever um algoritmo que solicite ao usurio a insero de 2 nmeros reais. Em seguida, o programa deve mostrar um menu de opes com as quatro operaes aritmticas bsicas. Dependendo da opo escolhida pelo usurio, o programa deve fazer o clculo e mostrar o resultado na tela.
OPO 1 2 3 4
27/02/2013

OPERAO ARITMETICA Soma Subtrao Multiplicao Diviso


46

Programao C++ - Prof. MSc.Daniel Menin Tortelli

Exerccio
Utilizando as outras funes da biblioteca matemtica, termine o programa anterior, adicionando as outras duas opes que no foram implementadas:
Cosseno Trigonomtrico; Tangente Trigonomtrica.
27/02/2013 Programao C++ - Prof. MSc.Daniel Menin Tortelli 47

A Estrutura de Repetio WHILE


Uma estrutura de repetio (tambm chamada estrutura de looping ou lao de repetio), permite ao programador especificar que uma ao deve ser repetida enquanto alguma condio for verdadeira.

27/02/2013

Programao C++ - Prof. MSc.Daniel Menin Tortelli

48

A Estrutura de Repetio WHILE


Erros comuns de programao: No fornecer no corpo de uma estrutura while, uma ao que faa com que a condio na estrutura while se torne false em algum momento normalmente resulta em um erro chamado lao infinito ou loop infinito, no qual a estrutura de repetio nunca termina de ser executada. Escrever a palavra-chave while com um W maisculo, como em While, um erro de sintaxe (lembre-se de que C++ uma linguagem sensvel a maisculas e minsculas). Todas as palavras-chave reservadas de C++, tais como while, if e else, contm somente letras minsculas.
27/02/2013 Programao C++ - Prof. MSc.Daniel Menin Tortelli 49

27/02/2013

Programao C++ - Prof. MSc.Daniel Menin Tortelli

50

Operadores de Atribuio
C++ oferece vrios operadores de atribuio para abreviar as expresses de atribuio.
Por exemplo, o comando: c = c + 3; pode ser abreviado com o operador atribuio com adio += como: c += 3;

27/02/2013

Programao C++ - Prof. MSc.Daniel Menin Tortelli

51

Operadores de Atribuio
O operador + soma o valor da expresso direita do operador ao valor da
varivel esquerda do operador e armazena o resultado na varivel esquerda do operador.
Qualquer comando da forma: varivel = varivel expresso operador; onde operador um dos operadores binrios +, -, *, /, ou % , pode ser escrito na forma: varivel operador = expresso;

27/02/2013

Programao C++ - Prof. MSc.Daniel Menin Tortelli

52

Operadores de Atribuio
Assumindo que: int

c = 3, d = 5, e = 4, f = 6, g = 12;
A expresso: Equivale a: Valor Final

Operador de Atribuio

+= -=

c += 7 d -= 4

c=c+7 d=d-4

c = 10 d=1

*=
/= %=
27/02/2013

e *= 5
f /= 3 g %= 9

e=e*5
f=f/3 g=g%9

e = 20
f=2 g=3
53

Programao C++ - Prof. MSc.Daniel Menin Tortelli

Operadores de Atribuio

27/02/2013

Programao C++ - Prof. MSc.Daniel Menin Tortelli

54

Operadores de Incremento/Decremento
C++ tambm fornece o operador unrio de incremento ++ e o operador unrio de decremento - Se uma varivel c incrementada por 1, o operador de incremento (++) pode ser usado em vez das expresses

c = c+1 ou c += 1

Se um operador de incremento ou decremento colocado antes de uma


varivel, chamado de operador de pr-incremento ou pr-decremento, respectivamente. Se um operador de incremento ou decremento colocado depois de uma varivel, chamado de operador de ps-incremento ou ps-decremento, respectivamente.

27/02/2013

Programao C++ - Prof. MSc.Daniel Menin Tortelli

55

Operadores de Incremento/Decremento
Pr-incrementar (ou pr-decrementar) uma varivel faz com que a varivel seja incrementada (ou decrementada) por 1, sendo o novo valor da varivel usado na expresso em que ela aparece. Ps-incrementar (ou ps-decrementar) uma varivel faz com que o valor atual da varivel seja primeiro usado na expresso em que ela aparece, sendo ento, aps, o valor da varivel incrementado (ou decrementado) por 1.
27/02/2013 Programao C++ - Prof. MSc.Daniel Menin Tortelli 56

Operadores de Incremento/Decremento
Operador Chamado
Exemplo de expresso

Explicao Incrementa a por 1 e ento usa o novo valor de a na

++ ++ --27/02/2013

pr-incremento

++a a++ --b b--

expresso em que a est. Usa o valor corrente de a na expresso em que a est e

ps-incremento

ento incrementa a por 1. Decrementa b por 1 e ento usa o novo valor de b na

pr-decremento

expresso em que b est. Usa o valor corrente de b na expresso em que b est e

ps-decremento

ento decrementa b por 1.

Programao C++ - Prof. MSc.Daniel Menin Tortelli

57

Operadores de Incremento/Decremento

27/02/2013

Programao C++ - Prof. MSc.Daniel Menin Tortelli

58

Operadores de Incremento/Decremento

27/02/2013

Programao C++ - Prof. MSc.Daniel Menin Tortelli

59

A Estrutura de Repetio FOR


A estrutura de repetio FOR controlada atravs de contadores, e de operadores de incremento e decremento. Assim, o trecho de cdigo dentro da estrutura executado at que o limite determinado para o contador da estrutura seja alcanado. A inicializao, condio de repetio e incremento esto todas incluidas no cabealho da estrutura FOR.
27/02/2013 Programao C++ - Prof. MSc.Daniel Menin Tortelli 60

A Estrutura de Repetio FOR

27/02/2013

Programao C++ - Prof. MSc.Daniel Menin Tortelli

61

A Estrutura de Repetio FOR

27/02/2013

Programao C++ - Prof. MSc.Daniel Menin Tortelli

62

A Estrutura de Repetio FOR


O programa anterior opera como segue:
1. Quando a estrutura FOR comea a ser executada, a varivel de controle i declarada e inicializada com 0 (zero). 2. Ento, verificada a condio de continuao do lao, i <= 10. Como o valor inicial de i 0, a condio satisfeita; assim, o comando do corpo imprime o valor de i, ou seja, 0. 3. A varivel de controle i ento incrementada na expresso i++ e o lao comea novamente com o teste de continuao do lao. Como a varivel de controle agora igual a 1, o valor final no excedido e assim o programa executa novamente o comando do corpo. 4. Este processo continua at que a varivel de controle i seja incrementada para 11. Isto faz com que o teste de continuao do lao no seja satisfeito e a repetio termine. 5. O programa continua, executando o primeiro comando depois da estrutura FOR (neste caso, imprime uma linha em branco e encerra a execuo do programa).

27/02/2013

Programao C++ - Prof. MSc.Daniel Menin Tortelli

63

A Estrutura de Repetio FOR

27/02/2013

Programao C++ - Prof. MSc.Daniel Menin Tortelli

64

A Estrutura de Repetio FOR

27/02/2013

Programao C++ - Prof. MSc.Daniel Menin Tortelli

65

Exerccios
34. Utilizando a estrutura WHILE, faa um programa que calcule e imprima os nmeros pares entre 0 e 1000; 35. Utilizando a estrutura WHILE, faa um programa que calcule e imprima os nmeros mpares entre 0 e 1001; 36. Escreva um programa que acha o menor e o maior nmero primo entre 0 e 100. 37. Escreva um programa que faa a mdia de todos os nmeros primos entre 0 e 100.
27/02/2013 Programao C++ - Prof. MSc.Daniel Menin Tortelli 66

Exerccios
38. Escreva um programa que calcule e mostre o produto dos inteiros mpares de 1 a 15. 39. Escreva um programa que localiza o menor de vrios nmeros inteiros. Assuma que o primeiro valor lido especifica o nmero de valores a serem inseridos pelo usurio.

27/02/2013

Programao C++ - Prof. MSc.Daniel Menin Tortelli

67

Exerccios
40. Desenvolva um programa em C++ que calcule o salrio bruto dos empregados de uma empresa. A empresa paga hora normal pelas primeiras 40 horas trabalhadas por cada funcionrio e 50% a mais para todas as horas trabalhadas alm de 40 horas. Voc recebe uma lista dos empregados da empresa, o nmero de horas trabalhadas por empregado na ltima semana e o salrio-hora de cada empregado. O programa deve aceitar a entrada dessas informaes e ento determinar e exibir o salrio bruto de cada funcionrio.
27/02/2013 Programao C++ - Prof. MSc.Daniel Menin Tortelli 68

Exerccios
41. Produza duas verses de um programa que escreva n>=0 asteriscos em uma linha sendo o valor n fornecido pelo usurio. A primeira verso deve utilizar o comando for. A segunda verso deve utilizar o comando while.

27/02/2013

Programao C++ - Prof. MSc.Daniel Menin Tortelli

69

Exerccios
42 - Escreva um programa em C++ para ler o nmero de lados de um polgono regular, e a medida do lado. Calcular e imprimir o seguinte: Se o nmero de lados for igual a 3 escrever TRINGULO e o valor do seu permetro. Se o nmero de lados for igual a 4 escrever QUADRADO e o valor da sua rea. Se o nmero de lados for igual a 5 escrever PENTGONO. Em qualquer outra situao escrever Polgono no identificado.
27/02/2013 Programao C++ - Prof. MSc.Daniel Menin Tortelli 70

Exerccios
43 - Fazer um programa em C++ para ler vrios nmeros inteiros e positivos e calcular e imprimir a mdia dos nmeros digitados. O programa inicia solicitando ao usurio a quantidade de valores que ele ir digitar posteriormente. Imprimir tambm o maior valor digitado.
27/02/2013 Programao C++ - Prof. MSc.Daniel Menin Tortelli 71

Exerccios
44 - Durante uma corrida de automveis com N voltas de durao foram anotados para um piloto, na ordem, os tempos registrados em cada volta. Fazer um programa em C++ para ler os tempos das N voltas, calcular e imprimir: melhor tempo; a volta em que o melhor tempo ocorreu; tempo mdio das N voltas;
27/02/2013 Programao C++ - Prof. MSc.Daniel Menin Tortelli 72

Exerccios
45 - Fazer um programa em C++ para ler uma quantidade N de alunos. Ler a nota de cada um dos N alunos e calcular a mdia aritmtica das notas. Contar quantos alunos esto com a nota acima de 5.0. Obs.: Se nenhum aluno tirou nota acima de 5.0, imprimir mensagem: No h nenhum aluno com nota acima de 5.
27/02/2013

Programao C++ - Prof. MSc.Daniel Menin Tortelli

73

Exerccios
46 - Ler 2 valores inteiros, calcular e escrever a soma dos inteiros existentes entre os 2 valores lidos (incluindo os valores lidos na soma). Considere que o primeiro pode ser menor que o segundo e vice-versa.

27/02/2013

Programao C++ - Prof. MSc.Daniel Menin Tortelli

74

Exerccios
47 - Escreva um programa em C++ para validar um lote de cheques. O programa dever inicialmente solicitar a soma do lote e o nmero de cheques. A seguir dever ler o valor de cada cheque calculando a soma total. Aps a digitao de todos os cheques o programa dever imprimir as seguintes mensagens:
LOTE Ok se a soma informada for igual a soma calculada. Diferena negativa se a soma calculada for menor que a informada. Diferena positiva se a soma calculada for maior que a informada. Observao: O valor da diferena deve ser impresso (caso exista).

27/02/2013

Programao C++ - Prof. MSc.Daniel Menin Tortelli

75

Vous aimerez peut-être aussi