Escola de Ciências e Tecnologia – UFRN
Informática Fundamental
Prof.: Hugo Melo
Lista de exercícios
Laço condicional
Exercícios de fixação
1. Implemente um programa que recebe um número qualquer repetidas vezes
e só pára quando o número digitado é 22.
2. Escreva um programa que recebe e calcula o quadrado de vários números.
O programa se encerra quando o usuário digita 0.
3. Implemente um programa que recebe números reais positivos e calcula as
raízes quadradas dos números maiores que 15. O programa deve parar
quando for dado o número -4.
4. Implemente um programa que lê um número inteiro referente a um dia do
mês de setembro. O programa deve verificar se o valor é válido. Se não for,
deve apresentar a mensagem “Dia invalido. Tente novamente.” e então
receber outro número. O programa só pára quando for digitado um dia
válido.
5. Implemente um programa que recebe vários números inteiros e conta
quantos são múltiplos de 3 ou de 7. O programa deve encerrar quando
recebe o número 0.
6. Implemente um programa que recebe vários números inteiros e calcula a
porcentagem dos números ímpares maiores do que 15 dentre todos os
números. O programa deve encerrar quando for informado o número zero.
Exercícios complementares
7. Implemente um programa que recebe um número positivo e realiza
sucessivas multiplicações por 3 até que se tenha um valor maior do que
10000. A multiplicação deve ser feita sobre o último número calculado. Por
exemplo: dado o número 4, a saída seria: 4 12 36 108 324 972 2916 8748
26244.
8. Duas cidades, A e B, têm populações de 7000 e 20000 habitantes,
respectivamente. A cidade A tem um crescimento populacional de 3,5% ao
ano, enquanto a população da cidade B cresce 1% ao ano. Implemente um
programa que calcule em quantos anos a população da cidade A será maior
ou igual que a população da cidade B.
9. Implemente um programa que recebe dois números reais referentes a duas
notas de um aluno. O programa deve calcular a média dessas notas,
descartando válores inválidos. Ou seja, se o número dado em cada nota for
menor do que 0 ou maior do que 10, o programa deve imprimir a mensagem
“Nota invalida.” e pedir que o usuário informe a nota novamente.
10. Implemente um programa que recebe a massa M de uma material
radioativo, em gramas, e calcula o tempo necessário para este material
atingir 0,5 gramas, sabendo que sua meia-vida é de 50 segundos. O tempo
deve ser expresso em minutos e segundos.
11. Implemente um programa que imprime os termos de uma PG (progressão
geométrica) crescente que são menores que 200. O programa deve receber
o valor do primeiro termo e da razão, ambos números reais maiores que 1.
12. Implemente um programa que recebe um número inteiro positivo e
determina se ele é primo ou não. O programa deve imprimir uma única
mensagem para cada caso.
Exercícios avançados
13. Implemente um programa que recebe 2 números inteiros positivos e calcula
o Máximo Divisor Comum (MDC) desses números. Uma forma de calcular o
MDC é através de sucessivas divisões até que se tenha uma divisão exata.
O MDC de 48 e 30 é, por exemplo:
48 / 30 = 1 (com resto 18)
30 / 18 = 1 (com resto 12)
18 / 12 = 1 (com resto 6)
12 / 6 = 2 (divisão exata)
Logo, o MDC de 48 e 30 é 6. Perceba que o divisor do passo 1 (30) se torna
o dividendo do passo 2. E o resto da divisão do passo 1 (18) se torna o
divisor do passo 2. As iterações param quando há uma divisão exata.
14. Implemente um programa que imprime uma tabela de equivalência de
temperaturas em graus Celsius e Farenheit. A tabela deve começar em 0
graus Celsius e deve aumentar de acordo com um valor dado pelo usuário,
até ultrapassar 100 graus Celsius. A relação das temperaturas é a dada
pela seguinte fórmula: 9C=5( F − 32) .
15. Implemente um programa que recebe um número positivo N e escreve
todos os termos da sequência de fibonacci que são estritamente menores
do que N. A sequência de Fibonacci tem seus dois primeiros termos iguais
a 1. A partir do terceiro, cada termo é igual a soma dos dois termos
anteriores a ele. Ou seja: o quinto termo é igual a soma do quarto e terceiro
termos. Os 10 primeiros termos da sequência de Fibonacci são: 1 1 2 3 5 8
13 21 34 55.
16. Faça um programa para o “jogo de adivinhar um número”. O computador
deve sortear um número entre 0 e 100 e pedir para o usuário tentar
adivinhar este número. O usuário vai dizer o seu palpite, e o computador
deve responder, se ele é maior ou menor que o número que ele sorteou. O
programa termina somente quando o usuário acertar exatamente qual o
número que o computador tinha sorteado, escrevendo uma mensagem de
felicitações para o nosso usuário e indicando o número total de tentativas
feitas. Para gerar um número qualquer entre 0 e 100, use um comando
como o deste exemplo indicado logo a seguir. Exemplo:
#include <stdlib.h>
...
/* Rand: gera um número entra 0 e RAND_MAX, retorna um int */
numero_sorteado = rand () % 101; (sorteia um número entre 0 e 100)
17. Faça um programa para o “jogo de adivinhar um número”, mas invertendo
os papéis desta vez. O computador que vai tentar adivinhar um número
escolhido pelo usuário. O usuário deve escolher um número e para cada
número apresentado pelo computador, responder se ele acertou, ou se o
número apresentado é maior que o escolhido, ou se ele é menor que o
escolhido. O programa termina quando o usuário responder que o
computador acertou.
Download

Lista de exercícios - Laço condicional