Pontifícia Universidade Católica do Rio Grande do Sul Faculdade de Informática – Algoritmos e Programação I Profs. Márcia Moraes, Silvia Moraes, Marcelo Yamaguti e Marco Mangan Exercícios de Repetição 1. Implemente um trecho de código no método main que faz a leitura de 10 idades de nadadores, uma idade por vez, e a cada idade lida escreva na tela a categoria em que o nadador se encontra. As categorias existentes são: infantil A = 5 - 7 anos infantil B = 8-10 anos juvenil A = 11-13 anos juvenil B = 14-17 anos adulto = maiores de 18 anos 2. Um vendedor necessita de uma função que calcule o preço total de uma compra devido por 80 clientes. Neste estabelecimento um cliente somente executa a compara de um determinado produto. Para isto você deve implementar um trecho de código no método main que lê o código de um produto e a quantidade comprada para aquele produto e calcula e escreve o preço total, usando a tabela abaixo: Código do produto Preço unitário 1001 5,32 1324 6,45 6548 2,37 0987 5,32 7623 6,45 3. Implemente um trecho de código no método main que leia 20 valores para uma variável n e, para cada um deles, calcule a tabuada de 1 até n. Mostre a tabuada na forma: 1xn=n 2 x n = 2n 3 x n = 3n ....... n x n = n2 4. Implemente um trecho de código no método main que leia uma quantidade indeterminada de números inteiros e positivos e: a) encontre o maior valor par; b) encontre o menor valor ímpar; c) calcule a soma dos números lidos; d) calcule a média dos números lidos. e) o percentual de pares A repetição deve ser encerrada quando for digitado um número 0 ou negativo. 5. Implemente um trecho de código no método main que leia uma quantidade desconhecida de números e conte quantos deles estão nos seguintes intervalos: [0,25], [26,50], [51,75] e [76,100]. A entrada de dados deve terminar quando for lido um número negativo. Pontifícia Universidade Católica do Rio Grande do Sul Faculdade de Informática – Algoritmos e Programação I Profs. Márcia Moraes, Silvia Moraes, Marcelo Yamaguti e Marco Mangan 6. 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 trecho de código no método main que: a) a média de salário das mulheres; b) maior e menor idade dos homens; c) quantidade de mulheres com salário até R$ 2000,00. Encerre a entrada de dados quando for digitada uma idade negativa. 7. Implemente um trecho de código no método main que leia um conjunto de 50 informações contendo, cada uma delas, a altura e o sexo de uma pessoa (código=1, masculino código=2, feminino), calcule e mostre o seguinte: a) a maior e a menor altura do grupo; b) a média da altura das mulheres; c) a média da altura do grupo. 8. Foi feita uma estatística nas 200 principais cidades brasileiras para coletar dados sobre acidentes de trânsito. Foram obtidos os seguintes dados: - código da cidade - estado (RS, SC, PR, SP, RJ, ...) - número de veículos de passeio - número de acidentes de trânsito com vítimas Deseja-se saber: a) qual o maior e o menor índice de acidentes de trânsito e a que cidades pertencem b) qual a média de veículos nas cidades brasileiras c) qual a média de acidentes com vítimas entre as cidades do Rio Grande do Sul. Implemente um trecho de código no método main que calcule e informe os itens a, b e c. 9. Implemente para a classe Matemática um método de classe que receba dois valores X e N e calcule e retorne o valor de S: S = X2 + X2 /2! + X2 /3! + ...+ X2 /N! 10. Implemente para a classe Matemática um método de classe que recebe dois valores inteiros: a e b, e retorna a soma dos os pares no intervalo fechado de "a" a "b". 11. Implemente um trecho de código no método main que lê 5 pares de valores m, 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. 12. Ler um número inteiro n e desenhar um quadrado na tela de dimensão n. O valor varia de 0 a 10. 1 + 2 ++ ++ 3 +-+ | | +-+ Pontifícia Universidade Católica do Rio Grande do Sul Faculdade de Informática – Algoritmos e Programação I Profs. Márcia Moraes, Silvia Moraes, Marcelo Yamaguti e Marco Mangan 4 +--+ | | +--+ 13. Ler dois números inteiros a e b. O valor do maior número corresponde a 10 unidades o outro valor é proporcional ao maior valor. Escrever um histograma que represente a proporção entre os dois valores. Exemplo: 3 10 *** ********** 14. Ler uma seqüência de valores que termina com o valor -1. Imprimir a quantidade de valores lidos, a soma e a média dos valores. Exemplo: 1 2 3 -1 Quantidade: 3 Soma: 6 Média: 2 15. Ler um número inteiro n. Escrever a soma de todos os números de 1 até n. 16. Ler um número inteiro n. Escrever a soma de todos os números pares de 2 até n. 17. Ler um número inteiro n. Decidir se n é um número primo e apresente o resultado. 18. Ler dois números e um operador aritmético (+,-,/,*,%). Realize a operação indicada entre os dois números e apresente o resultado. 19. Escreva um programa que apresente quatro opções: (a) consulta saldo, (b) saque e (c) depósito e (d) sair. O saldo deve iniciar em R$ 0,00. A cada saque ou depósito o valor do saldo deve ser atualizado. Exemplo: Caixa Automático ---------------------Opções: (a) consulta saldo (b) saque (c) depósito (d) sair Opção desejada: a Saldo: R$ 0.00 Opções: (a) consulta saldo (b) saque (c) depósito (d) sair Opção desejada: c Valor para depósito R$: 20.00 Opções: (a) consulta saldo (b) saque Pontifícia Universidade Católica do Rio Grande do Sul Faculdade de Informática – Algoritmos e Programação I Profs. Márcia Moraes, Silvia Moraes, Marcelo Yamaguti e Marco Mangan (c) depósito (d) sair Opção desejada: a Saldo: R$ 20.00 Opções: (a) consulta saldo (b) saque (c) depósito (d) sair Opção desejada: d ** Fim ** 20. Implemente um trecho de código no método main que lê 8 pares de valores a e b e calcule e escreva a quantidade de números ímpares que existem no intervalo [a; b]. 21. Implemente para a classe MetodosString o método public String inverte() que inverte a String que é atributo de instância da classe MetodosString. Por exemplo, se no atributo da classe existir o valor “laranja”, deve ser gerada e retornada a String de conteúdo “ajnaral”. o método public int classe MetodosString que retorna a quantidade de caracteres que se repetem no atributo String da classe MetodosString. Importante: um mesmo caracter não pode ser contado mais de uma vez. Por exemplo, se a String tiver o valor “abobora” o método deverá informar que existem 3 caracteres que se repetem na String, a saber: a, b, o. 22. Implemente para a contaCaracterRepetido() 23. Implemente para a MetodosString o método public String letrasIguaisMesmasPosicoes(String s) que retorna uma String que contém somente as letras iguais e que estejam na mesma posição na String que é atributo de instância da classe MetodosString e na String s. Por exemplo, se o atributo tiver o valor “morango” e o argumento s tiver o valor “laranja”, a String resultante será “ran”. Atributo Argumento String gerada classe m o r a n g o 0 1 2 3 4 5 6 L a r a n j a 0 1 2 3 4 5 6 r 0 a 1 n 2 Pontifícia Universidade Católica do Rio Grande do Sul Faculdade de Informática – Algoritmos e Programação I Profs. Márcia Moraes, Silvia Moraes, Marcelo Yamaguti e Marco Mangan 24. Implemente para a MetodosString o método public String letrasIguaisQualquerPosicao(String s) que retorna uma String que contém as letras que aparecem tanto no atributo de instância da classe MetodosString quanto no argumento s em qualquer posição. A String gerada pode conter elementos repetidos. Por exemplo: Atributo Argumento classe a r 0 1 l String gerada a m 2 r a 3 a 0 1 2 3 a r a r 0 1 2 3 r i o 4 5 6 n j a 4 5 6 método public String que retorna uma String que contém as letras que aparecem tanto no atributo de instância da classe MetodosString quanto no argumento s em qualquer posição. Importante: a String gerada não pode conter elementos repetidos. 25. Implemente para a classe MetodosString o letrasIguaisQualquerPosicaoSemRepeticao(String s)