Baixe o app para aproveitar ainda mais
Prévia do material em texto
PUCRS - Faculdade de Informática Fundamentos de Programação - Prof. Silvia Moraes 2015/01 Lista de Exercícios III - Programas com Repetição 1. O trecho de código abaixo implementa uma validação (crítica ou ainda consistência) de dados. É esperado um número inteiro e positivo para a variável valor. Reimplemente esse código usando a instrução while. import java.util.Scanner; public class Exercicio{ public static void main(String args[]){ Scanner entrada = new Scanner(System.in); int valor; do{ System.out.println(�Informe um valor positivo: �); valor = entrada.nextInt(); }while(valor<=0); } } 2. Faça um programa que escreve todos os pares entre 1000 e 2000. 3. Implemente um programa que soma todos os impares entre 500 e 700. 4. Faça um programa que escreve os 100 primeiros quadrados perfeitos (números naturais): 0, 1, 4, 9, 16, ... 5. Implemente um programa que leia um valor n e escreva todos os quadrados perfeitos menores que n. Exemplo : n=100, escreve 1, 4, 9, 16, 25, 36, 49, 81 6. Faça um programa que gere o números de 1000 a 1999 e escreva aqueles que divididos por 11 dão resto igual a 5. 7. Elabore um programa que escreve 50 valores acima de 100 que são divi- siveis por 7. 8. Implemente um programa que lê 50 valores inteiros e positivos, calcule e escreva: (a) a média dos valores; (b) o maior deles; (c) o menor deles; (d) a quantidade de valores que estão no intervalo [0;10]. 9. Faça um programa que leia dois valores inteiros e positivos 'a' e 'b'. A seguir, o programa deve escrever a soma dos pares entre 'a' e 'b' (inclusive). 1 10. Implemente um programa que leia um valor inteiro, não negativo e escreva o seu fatorial e seu somatório. 11. Escreva um programa que leia 30 valores reais, calcule a média aritmética desses valores e o seu desvio padrão. desvioPadrao = √ n∑ i=1 (xi−media)2 n−1 12. Faça um programa que leia um valor inteiro e positivo e escreva os divisores desse valor. 13. Implemente um programa que lê um valor inteiro positivo qualquer, calcula e escreve a soma dos dígitos impares desse valor. Exemplo: valor = 32677, soma = 3+7+7=17. 14. Faça um programa que exibe a tabela de conversão de Celsius para Fahren- heit, como a apresentada a seguir: Celsius Fahrenheit 0 32 10 50 20 68 ... ... 100 212 15. Faça um programa que escreve o calendário do mês de abril de 2015. Seg Ter Qua Qui Sex Sab Dom 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 16. Faça um programa que leia o total em R$ arrecadado em apostas para um concurso da Mega Sena, esse total deve ser positivo (garanta isso). Do total arrecadado, 46% é usado para pagar os prêmios, sendo que: (a) 35% desse valor é usado para pagar os vencedores do prêmio principal (aqueles que acertaram os 6 números); (b) 19% desse valor é usado para pagar os vencedores da quina (aqueles que acertaram os 5 números); (c) 19% desse valor é usado para pagar os vencedores da quadra (aqueles que acertaram os 4 números); 2 (d) 27% desse valor é acumulado para outros concursos. A seguir, o programa deve ler os 6 números sorteados na Mega Sena (você pode usar, se quiser, a classe Random para sortear aleatoriamente os val- ores). Durante a entrada dados (ou geração randômica), garanta que os números sorteados sejam diferentes uns dos outros e que estejam dentro do intervalo válido para o concurso Mega Sena. A seguir, o programa deve ler os 6 números de 50 apostadores, calcular e escrever: (a) Quantidade de vencedores do prêmio (b) O valor do prêmio principal e quanto cada vencedor irá receber (c) Quantidade de apostadores que fizeram a quina (d) O valor da quina e quanto cada vencedor da quina irá receber (e) Quantidade de apostadores que fizeram a quadra (f) O valor da quadra e quanto cada vencedor da quadra irá receber 17. A prefeitura de uma cidade fez uma pesquisa entre seus habitantes, cole- tando dados sobre o salário e número de filhos. A prefeitura deseja saber: (a) média do salário da população; (b) média do número de filhos; (c) maior salário; (d) percentual de pessoas com salário até R$2000,00. Faça um programa que leia os dados necessários e escreva os itens men- cionados. O final da leitura de dados se dará com a entrada de um salário negativo. (Use while) 18. Escreva um programa que lê um valor n inteiro e positivo, calcula e exibe a seguinte soma: S = 1 + 12 + 1 3 ...+ 1 n . 19. Escreva um programa que lê um valor n inteiro e positivo, calcula e exibe a seguinte soma: S = 1 + 23 + 3 5 ... 20. Escreva um programa que lê um valor n inteiro e positivo e um valor real x. O programa deve calcular a seguinte soma: S = x+ x 2 5 + x3 9 ... 21. Escreva um programa que lê um valor n inteiro e positivo e um valor real x. O programa deve calcular a seguinte soma: S = x− x33 + x 5 5 − x 7 7 + ... 22. Faça um programa que escreve os n primeiros termos da série de fibonacci: 1, 1, 2, 3, 5, 8, 13, 21, ... 23. Faça um programa que gere todos os números inteiros de 4 digitos que possuem a mesma característica que o número 3025. 3 { 30 + 25 = 55 552 = 3025 24. Faça um programa que leia 2 valores inteiros e positivos: x e y. O pro- grama deve calcular e escrever a função potência xy(não use a função pow). 25. Chico tem 1,50 metro e cresce 2 centímetros por ano, enquanto Zé tem 1,10 metro e cresce 3 centímetros por ano. Construa um programa que calcule e exiba quantos anos serão necessários para que Zé seja maior que Chico. 26. Uma loja tem 150 clientes cadastrados e deseja mandar uma correspondên- cia eletrônica a cada um deles anunciando um bônus especial. Escreva um programa que leia o nome do cliente e o valor das suas compras no ano passado e calcule um bônus de 10% se o valor das compras for menor que R$ 500,00 e de 20 %, caso contrário. 27. Faça um programa que leia uma quantidade não determinada de números positivos. Calcule a quantidade de números pares e ímpares, a média de valores pares e a média geral dos números lidos. O número que encerrará a leitura será zero. 28. Em uma eleição presidencial existem quatro candidatos. Os votos são informados através de códigos. Os dados utilizados para a contagem dos votos obedecem a seguinte codificação: • 1,2,3,4 = voto para os respectivos candidatos; • 5 = voto nulo; • 6 = voto em branco; Elabore um programa que leia o código do candidado em um voto. Calcule e escreva: • total de votos para cada candidato; • total de votos nulos; • total de votos em branco; Como finalizador do conjunto de votos, tem-se o valor 0. 29. Foi feita uma pesquisa entre os habitantes de uma região. Foram coletados os dados de idade, sexo (M/F) e salário. Faça um programa que leia os dados necessário e informe: (a) a média de salário do grupo; (b) maior e menor idade do grupo; (c) quantidade de mulheres com salário até R$3500,00. 4 Encerre a entrada de dados quando for digitada uma idade negativa. 30. Faça um programa que calcule e escreva a combinação e o arranjo de um conjunto de tamanho n em subconjuntos de p elementos. 31. Faça um programa que leia um valor inteiro n maior que 50 (garanta isso). A seguir, o programa deve escrever para cada valor inteiro entre 1 e n: o valor, seu quadrado, seu cubo, sua raiz quadrada e sua raiz cúbica. 32. Escreva um programa que calcule a média aritmética das 3 notas dos alunos de uma classe. O programa deverá ler, além das notas, a matricula do aluno e deverá ser encerrado quando o código for igual a zero. O programa deve escrever, ainda, a matricula e a média do melhor aluno. 33. Escreva um programa que leia uma quantidade desconhecida de números. A seguir, o programa deve contar e escrevera quantidade de valores per- tencentes aos seguintes intervalos: [0;25], [26;50], [51;75] e [76;100]. A entrada de dados deve terminar quando for lido um número negativo. Ao final o programa deve exibir ainda a quantidade de valores lidos. 34. Implemente um programa que lê um número não determinado de pares de valores m e n, todos inteiros e positivos, um par de cada vez, e calcula e escreve a soma dos n inteiros consecutivos a partir de m (inclusive). 35. Escreva um programa que leia um número n que indica quantos valores devem ser lidos a seguir. Para cada número lido, mostre o valor lido e o fatorial deste valor. 36. Faça um programa que lê um número não determinado de valores para m, todos inteiros e positivos, um de cada vez. Se m for par, verificar quantos divisores possui e escrever esta informação. Se m for ímpar e menor do que 10 calcular e escrever o fatorial de m. Se m for ímpar e maior ou igual a 10 calcular e escrever a soma dos inteiros de 1 até m. 37. Escreva os 100 primeiros números primos. Um número primo é aquele que só tem 2 divisores: 2, 3, 5, 7, 11, ... 38. Escreva um programa que gera e escreve os 5 primeiros números perfeitos. Um número perfeito é aquele que é igual a soma dos seus divisores, ex- cluindo a si próprio como divisor. (Ex.: 6 = 1+2+3; 28= 1+2+4+7+14 etc). 39. A conjectura de goldbach diz que �todo número par maior ou igual a 4 é a soma de dois primos.�. Faça um programa que leia um valor n, inteiro e positivo, e escreva os n primeiros pares acima de 4 juntamente com os primos em que cada par pode ser decomposto. Exemplo: • 4 pode ser decomposto em 2 e 2 • 6 pode ser decomposto em 3 e 3 5 • 8 pode ser decomposto em 3 e 5 • 10 pode ser decomposto em 5 e 5 (ou 3 e 7 ) • ... 40. O método de Herão permite calcular a raiz quadrada aproximada de um número inteiro n que não seja um quadrado perfeito. Quanto mais iter- ações, mais preciso torna-se o resultado. Considerando que o programa foi construído para k iterações, a raiz quadrada aproximada de n é dada por: ak = ak−1+ n ak−1 2 , onde a0 é uma aproximação inicial. Essa aproximação é definida pela média aritmética dos dois quadrados perfeitos mais próximos a n. Por exemplo, se o objetivo é calcular √ 3, sabemos que essa raiz está entre os quadrados perfeitos 1 e 2, logo a0 = 1+2 2 = 1, 5. Na iteração 1, ter- emos a1 = 1,5+ 31,5 2 = 1, 75. Na iteração 2, a2 = 1,75+ 31,75 2 = 1, 732142857, e assim por diante. Implemente o programa que calcula a raiz quadrada segundo o método de Herão. 6
Compartilhar