Você está na página 1de 8

Exercícios

3.11 Identifique e corrija os erros em cada um dos itens seguintes (Nota:


pode haver mais de um erro em cada conjunto de linhas de código):
a) if (idade >= 65);
printf("Idade e maior que ou igual a 65\n"); else
printf("Idade e menor que 65\n");
if (idade >= 65){
printf("Idade e maior que ou igual a 65\n");
}
else{
printf("Idade e menor que 65\n");
}

b) int x = 1, total;
while (x <= 10) {
total += x;
+ +x;

int x = 1;
total=0;
while (x <= 10) {
total += x;
x++;
}
c) While (x <= 100)
total += x;
+ +x;
Int x=1;
total=0;
While (x <= 100){
total += x;
x++;}
d) while (y > 0) {
printf("%d\n", y); ++y;
}
Int Y=10;
while (y > 0) {
printf("%d\n", y);
y--;
}
3.13 O que o seguinte programa imprime?
ttinclude <stdio.h>
main() {
int x = 1, total = 0, y;
while (x <= 10) {
y = x * x;
printf("%ã\n", y); total += y); ++x;
}
printf("O total e %d\n", total); return 0;
}
#include <stdio.h>//aqui eh c sharp
main() {
int x = 1;
total = 0, y;
while (x <= 10) {
y = x * x;//aqui faltou ponto e virgula vai da erro
printf("%d\n", y);//aqui vai da erro, na letra depois da
porcentagem.
total += y);
++x;
}
printf("O total e %d\n", total);
return 0;
}
3.15 Formule um algoritmo em pseudocódigo que faça o seguinte:
a) Obtenha dois números a partir do teclado, calcule a soma dos números e
exiba o resultado.
Inteiro: n1, n2, soma;
Leia (n1);
Leia(n2);
Soma=n1+n2;
Escreva (soma);

b) Obtenha dois números a partir do teclado, determine o maior (se houver)


e o exiba.
Inteiro: n1, n2;
Leia (n1);
Leia(n2);
Se(n1>n2) então{
Escreva (n1)};
Senão se(n2>n1) então{
Escreva(n2);}
Senão{escreva(“números iguais”;)}

c) Obtenha uma série de números positivos a partir do teclado, determine


sua soma e a exiba.
Admita que o usuário deve digitar o valor sentinela — 1 para indicar.o
"final da entrada de
dados".
Inteiro: soma=0, n,x=0;
While(x<>1) então
Leia(n);
Soma+=n;
Leia(x);
}
Escreva (soma)

3.16 Determine se cada uma das sentenças seguintes é verdadeira ou falsa.


Se a sentença for falsa, explique por quê.

a) A experiência demonstrou que a parte mais difícil de resolver um


problema em computador
é produzir um programa em C.

b) O valor sentinela deve ser tal que não possa ser confundido com um
valor válido de dados.
c) As linhas de fluxo indicam as ações a serem realizadas.

d) As condições escritas no interior dos símbolos de decisão sempre


contêm operadores
aritméticos (i.e., +, -, *, / e %).

e) No refinamento top-down em etapas, cada refinamento é uma


representação completa do
algoritmo.

Para os Exercícios 3.17 a 3.21, realize cada um dos seguintes passos:


1. Leia a definição do problema.
2. Formule o algoritmo usando o pseudocódigo e o refinamento top-down
em etapas.
3. Escreva um programa em C.
4. Teste, depure e execute o programa em C.

3.17 Tendo em vista o alto preço da gasolina, os motoristas estão


preocupados com a
quilometragem percorrida por seus automóveis. Um motorista fez o
controle recompletando
várias vezes o tanque e registrando os quilômetros percorridos e os litros de
gasolina
necessários para encher o tanque. Desenvolva um programa em C que
receba como dados a
quilometragem dirigida e os litros usados para recompletar o tanque. O
programa deve calcular
e exibir a quilometragem por litro obtida para cada recompletamento.
Depois de processar
todas as informações, o programa deve calcular e exibir a média de
quilômetros por litro
obtida para todos os recompletamentos.
Entre com os litros consumidos (-1 para finalizar): 12.8
Entre com os km percorridos: 287
A taxa km/litro para esse tanque foi 22.421875
Entre com os litros consumidos (-1 para finalizar): 10.3
Entre com os km percorridos: 200
A taxa km/litro para esse tanque foi 19.417475
Entre com os litros consumidos (-1 para finalizar): 5
Entre com os km percorridos: 120
A taxa km/litro para esse tanque foi 24.000000
Entre com os litros consumidos (-1 para finalizar): -1
A taxa total de km/litro foi 21.601423

3.18 Desenvolva um programa em C que determine se um cliente de uma


loja de departamentos
excedeu o limite de crédito de sua conta. Os seguintes dados de cada
cliente estão disponíveis:
1. Número da conta
2. Saldo devedor no início do mês
3. Total de itens cobrados do cliente no mês em questão
4. Total de créditos aplicados à conta do cliente no mês cm questão.
5. Limite de crédito permitido.
O programa deve receber esses dados, calcular o novo saldo (= saldo
devedor inicial +
cobranças — créditos) e determinar se o novo saldo supera o limite de
crédito do cliente. Para
os clientes cujo limite de crédito foi excedido, o programa deve exibir o
número da conta do
cliente, o limite de crédito e a mensagem "Limite de Crédito Excedido".
Entre com o numero da conta (-1 para finalizar): 100
Entre com o saldo inicial: 5394.78
Entre com o total de cobranças: 1000.00
Entre com o total de créditos: 500.00
Entre com o limite de credito: 5500.00
Conta: 100
Limite de credito: 5500.00
Saldo: 5894.78
Limite de Credito Excedido.
Entre com o numero da conta (-1 para finalizar): 200
Entre com o saldo inicial: 1000.00
Entre com o total de cobranças: 123.45
Entre com o total de créditos: 321.00
Entre com o limite de credito: 1500.00
Entre com o numero da conta (-1 para finalizar): 300
Entre com o saldo inicial: 500.00
Entre com o total de cobranças: 274.73
Entre com o total de créditos: 100.00
Entre com o limite de credito: 800.00
Entre com o numero da conta (-1 para finalizar): -1

3.19 Uma grande companhia química paga seus vendedores por comissão. Os
vendedores recebem
$200 por semana mais 9 por cento de suas vendas brutas naquela semana. Por exemplo,
um
vendedor que vender o equivalente a $5000 em produtos químicos em uma semana
recebe
$200 mais 9 por cento de $5000, ou um total de $650. Desenvolva um programa em C
que
receba as vendas brutas de cada vendedor na última semana, calcule seu salário e o
exiba.
Processe os dados de um vendedor de cada vez.
Entre com a venda em dólares (-1 para finalizar): 5000.00
Salário: $650.00
Entre com a venda em dólares (-1 para finalizar): 1234.56
Salário: $311.11
Entre com a venda em dólares (-1 para finalizar): 1088.89
Salário: $298.00
Entre com a venda em dólares (-1 para finalizar): -1

3.23 Escreva um programa em C que utilize um loop para imprimir os números de 1 a


10, lado a
lado na mesma linha e com 3 espaços entre eles.

Você também pode gostar