CI208 – Programação de Computadores
2o semestre 2012
Exercícios ♯01
Expressões



Os exercícios desta lista são compilações de materiais gerados por professores do DINF/UFPR para a disciplina de CI208 - Programação de Computadores.

Nos exercícios abaixo, os nomes entre parênteses no início do enunciado são sugestões para os nomes dos programas solicitados.

1.

Dadas as declarações e atribuições em linguagem C++ 

  • char s;         s = 30;
  • int i;         i = 65000;
  • float f;         f = 0.5;
  • double d;         d = 1.7;

Qual seria o valor e tipo de cada uma das expressões abaixo:

  1. i / s * f
  2. f + s * i - 1
  3. s / i
  4. i / f + s * d
  5. i / s
2.

(progarit)  Dados o primeiro termo e a razão de uma progressão aritmética, determinar a soma dos seus primeiros cinco termos.

  

As fórmulas que definem os termos e soma de uma progressão aritmética (PA) são:

an = a1 + (n − 1)×  r

     a1 +-an
S =    2    × n

3.

(casal)  Afrânio tem um peso de 80 kg e está engordando uma média de 2 kg por ano. Enquanto isto, Ermengarda, sua amada esposa, tem 45 kg e está engordando uma média de 3 kg por ano. Faça um programa que calcule e imprima quantos anos serão necessários para que Ermengarda ultrapasse o peso de Afrânio. O programa deve também imprimir qual será o peso de cada membro do casal ternura neste momento.

  

Observe que a evolução do peso de cada um dos pombinhos é uma PA. Tomando-se n como o número de anos que demora para os pesos serem iguais, use uma das fórmulas da A (exercício 2) para calcular n.

4.

(distpontos)  Construa um programa que, tendo como dados de entrada dois pontos quaisquer no plano, P(x1,y1) e P(x2,y2), escreva a distância entre eles. A fórmula que efetua tal cálculo é:
d = ∘ ----------------------
           2           2
  (x2 − x1)  + (y2 − y1)

5.

(calcfrac)  Escreva um programa que leia três números inteiros e positivos (A,B,C) e calcule a seguinte expressão:

D = R+S2- , onde R = (A + B)2
S = (B + C)2

  

Solução

6.

(iddias)  Faça um programa que leia a idade de uma pessoa expressa em anos, meses e dias e mostre-a expressa apenas em dias.

  

Solução

7.

(idanos)  Faça um programa que leia a idade de uma pessoa expressa em dias e mostre-a expressa em anos, meses e dias.

  

Solução

8.

(mediapond)  Faça um programa que leia as 3 notas de um aluno e calcule a média final deste aluno. Considerar que a média é ponderada e que o peso das notas é: 2, 3 e 5, respectivamente.

9.

(convtempo)  Faça um programa que leia o tempo de fabricação de um carro em uma fábrica de automóveis expressa em segundos e mostre-o expresso em horas, minutos e segundos.

  

Solução

10.

(custocarro)  O custo ao consumidor de um carro novo é a soma do custo de fábrica com a percentagem do distribuidor e dos impostos (aplicados ao custo de fábrica). Supondo que a percentagem do distribuidor seja de 28% e os impostos de 45%, escrever um programa que leia o custo de fábrica de um carro e escreva o custo ao consumidor.

11.

(siseqlinear)  Um sistema de equações lineares do tipo
ax + by = c
dx + ey = f
pode ser resolvido segundo mostrado abaixo :
x = ceae−−bbfd- , y = aafe−−cbdd
Escreva um programa que lê os coeficientes a,b,c,d,e,f e calcula e mostra os valores de x e y.

12.

(troco)  Escrever um programa que lê um valor em reais e calcula qual o menor número possível de notas de 100, 50, 10, 5 e 1 em que o valor lido pode ser decomposto. Escrever o valor lido e a relação de notas necessárias.

13.

(compra)  Uma fábrica produz dois tipos de peças de automóveis para venda no varejo. Escrever um programa que ajuda um cliente de loja de auto-peças a comprar estes tipos de peças. O programa deve ler:

  • a percentagem do IPI a ser acrescido no valor das peças
  • o código da peça 1, valor unitário da peça 1, quantidade de peças 1
  • o código da peça 2, valor unitário da peça 2, quantidade de peças 2

O programa deve calcular o valor total a ser pago e apresentar o resultado. 
Fórmula : (valor1 quant1 + valor2 quant2) (IPI∕100 + 1)

14.

(convsegs)  Dado um numero inteiro que representa uma quantidade de segundos, determinar o seu valor equivalente em horas, minutos e segundos. Se a quantidade de segundos for insuficiente para dar um valor em horas, o valor em horas deve ser 0 (zero). A mesma observação vale em relação aos minutos e segundos. Por exemplo: 3.600 segundos = 1 hora, 0 minutos, 0 segundos. ; 3.500 segundos = 0 horas, 58 minutos e 20 segundos.

15.

(trocadig)  Dado um número inteiro não nulo de três dígitos, imprimir este número ao contrario, isto e, se a entrada for 123 (cento e vinte e tres), imprimir 321 (trezentos e vinte e um). Usar operações sobre inteiros, por exemplo, divisões sucessivas por 10.

  

Solução

16.

(novonum)  Dado um número de três dígitos, construir outro número de quatro dígitos com a seguinte regra: a) os três primeiros dígitos, contados da esquerda para a direita, são iguais aos do número dado; b) o quarto dígito é um dígito de controle calculado da seguinte forma: primeiro dígito + 3*segundo dígito + 5*terceiro dígito; o dígito de controle é igual ao resto da divisão dessa soma por 7.

17.

(divint)  Dados dois números inteiros positivos determinar quantas vezes o primeiro divide exatamente o segundo. Se o primeiro não divide o segundo o número de vezes é zero.

18.

(divpot)  Dados dois números inteiros positivos determinar o valor da maior potência do primeiro que divide exatamente o segundo. Se o primeiro não divide o segundo, a maior potência é definida igual a 1.

19.

(divreal)  Dados dois números reais positivos determinar o quociente inteiro do primeiro pelo segundo usando apenas os operadores aritméticos reais.

20.

(intfrac)  Dado um número real positivo determinar sua parte inteira e sua parte fracionária usando apenas os operadores aritméticos reais.

21.

(calote)  João recebeu seu salário e precisa pagar duas contas atrasadas. Por causa do atraso, ele deverá pagar multa de 2% sobre cada conta. Faça um programa que calcule e mostre quanto restará do salário de João após pagar as contas. O programa deve ler o valor do salário recebido por João e do valor de cada conta que ele deveria ter pago.

22.

(ilumina)  Sabe-se que,para iluminar de maneira correta os cômodos de uma casa, para cada m2 deve-se usar 18W de potência. Faça um programa que recebe as duas dimensões de um cômodo (em metros), calcule e mostre a sua área (em m2) e a potência de iluminação que deverá ser usada.