Académique Documents
Professionnel Documents
Culture Documents
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
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:
A Estrutura de Seleo IF
O comando IF do pseudocdigo precedente pode ser escrito em C++ como:
27/02/2013
27/02/2013
27/02/2013
27/02/2013
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.
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
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
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
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
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
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
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
22
Exerccios
27/02/2013
23
Exerccios
16. Faa um programa que receba 4 valores e
27/02/2013
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
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
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
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
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
35
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
37
27/02/2013
38
27/02/2013
40
27/02/2013
41
27/02/2013
42
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
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
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.
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
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
27/02/2013
48
27/02/2013
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
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
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
Operadores de Atribuio
27/02/2013
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
27/02/2013
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
++ ++ --27/02/2013
pr-incremento
ps-incremento
pr-decremento
ps-decremento
57
Operadores de Incremento/Decremento
27/02/2013
58
Operadores de Incremento/Decremento
27/02/2013
59
27/02/2013
61
27/02/2013
62
27/02/2013
63
27/02/2013
64
27/02/2013
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
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
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
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
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
75