Ministério da Educação Instituto Federal de São Paulo CST em Análise e Desenvolvimento de Sistemas Disciplina: Projeto de Sistemas Prof.: Rogério Ferreira Primeira Lista de Exercícios (08/08/2014) Instruções: Deverá ser criado um projeto no Netbeans que conterá todos os exercícios, sendo um exercício em cada classe (Java). As classes devem ter o nome do respectivo exercício (Exercício01, Exercício02 e assim respectivamente). 1. Faça um programa que leia um valor N positivo e calcule a soma S (soma dos N primeiros termos da expressão): S = 1 + 1/2 + 1/3 + 1/4 + 1/5 + … + 1/N 2. Escreva uma classe em Java que receba o valor de uma temperatura em graus Celsius (°C) e um outro valor que pode ser “F” ou “K”. Se o valor for “F” faça a conversão e mostre a temperatura em graus Farenheit, caso contrário faça a conversão e mostre a temperatura em graus Kelvin. Faça a validação para garantir que o valor digitado seja igual a “F” ou “K”. Fórmulas de conversão: °F = (°C * 1.8) + 32 K = °C + 273.15 3. Escreva uma classe que solicite ao usuário as seguintes informações: Nome (tipo String) Idade (tipo int) Altura em metros (tipo double) Após ler estar informações, o programa deve exibir uma mensagem com as informações da pessoa em uma única linha, da seguinte forma: O nome da pessoa é Pedro Silva, sua idade é 28 anos, e sua altura é 1.82 metros. 4. Crie uma classe em Java que calcule as raízes reais de uma equação de segundo grau. O programa deve ler três valores inteiros (variáveis A, B, C) e efetuar o cálculo da equação do 2º Grau, apresentando: a mensagem “Não é equação do segundo grau”, se o valor de A for igual a zero; a mensagem “Não há raízes reais” se não for possível fazer o cálculo (delta negativo); as duas raízes reais, se para os valores informados for possível fazer o cálculo (delta positivo ou zero); Obs.: utilizar as seguintes funções matemáticas: ◦ Math.pow(a, b) = retorna o valor de ab . ◦ Math.sqrt(x) = calcula a raiz quadrada de x. 5. Leia duas notas de prova (P1 e P2) e duas notas de trabalho (T1 e T2) e posteriormente exiba a mensagem “Aprovado” ou “Não Aprovado” dependo dos valores obtidos, conforme as regras de cálculo definidas a seguir: Média de provas: MP = (P1+P2)/2 Média de trabalhos: MT = (T1+T2)/2 Média Final: MF = 0.7 * MP + 0.3 * MT Situação: Se MF ≥ 6,0 -> Aprovado Se MF < 6,0 -> Não Aprovado 6. Crie uma classe que leia a idade de um nadador e imprima a categoria do mesmo, de acordo com as regras a seguir: Infantil A Até 7 anos Infantil B Entre 8 e 12 anos Juvenil A Entre 13 e 16 anos Juvenil B Entre 17 e 21 anos Adulto Acima de 21 anos 7. Supondo que a população de um país A seja da ordem de 90.000.000 de habitantes com uma taxa anual de crescimento de 1,5% e que a população de um país B seja, aproximadamente, de 50.000.000 de habitantes com uma taxa anual de crescimento de 3%, criar uma classe que calcule e escreva o número de anos necessários para que a população do país B ultrapasse ou iguale a população do país A, mantidas essas taxas de crescimento. 8. Realizar uma simulação de pesquisa para um determinado número de pessoas, informado pelo usuário. Para cada pessoa, deve-se perguntar: o sexo (char), a idade (int) e a altura(double). Após fazer as perguntas para todas as pessoas do grupo, o programa deve informar: a) a altura da pessoa mais alta b) a altura da pessoa mais baixa c) a idade da mulher mais nova d) a idade do homem mais velho 9. Repare a seguinte característica do número 3025: 30 + 25 = 55 e 55 2 = 3025. Criar uma classe que possa ler vários números inteiros de 4 algarismos, um de cada vez, e diga se o número apresenta a mesma característica. O programa termina quando for lido um valor menor que 1000 ou maior que 9999. Obs.: Repare que 3025 / 100 = 30 com resto 25. 10.Escreva uma classe que leia um número N e informe se o número lido é primo ou não. 11.Crie uma classe que leia um número N (inteiro e positivo) e calcule a soma dos N primeiros termos da soma S: S = 1 – 1/2 + 1/4 – 1/8 + 1/16 - 1/32 + 1/64 - ... 12.Na matemática, (pi) é um número irracional, originado da divisão entre o perímetro de uma circunferência e seu diâmetro. Apesar de ter infinitas casas decimais, neste exercício, vamos assumir que pi é igual a 3.141592. É possível calcular o valor aproximado de pi por meio da soma dos primeiros termos da série Z: Z = 4 – 4/3 + 4/5 – 4/7 + 4/9 – 4/11 + … Com base nestas informações, crie uma classe em que o usuário informe a aproximação desejada (por exemplo: 0.0001) e o programa deve calcular e mostrar o valor do número pi e a quantidade de termos somados da série Z. A ideia é somar os termos da série Z, enquanto o valor absoluto da diferença entre pi e a soma da série seja maior que a aproximação informada. Em Java, o valor absoluto de um número é fornecido por Math.abs(), portanto, Math.abs(7 – 10) é igual a 3. Dicas: • Considere o valor de pi igual a 3.141592 • Supondo que foi informada uma precisão de 0.00001, você deve somar os termos da série Z enquanto Math.abs(Soma_Z – pi) > 0.00001 13.Escreva uma classe que leia uma frase e informe a quantidade de vogais existentes na frase. 14.Implemente uma classe que leia o nome completo de uma pessoa (nome e sobrenome) e a seguir mostre apenas o último sobrenome do nome informado. Por exemplo para o nome: Omero Francisco Bertol, o programa deverá mostrar: Bertol. 15.Escreva uma classe em Java que leia uma frase digitada pelo usuário. A classe deve mostrar cada palavra digitada na frase, uma em cada linha, entre colchetes. Por exemplo, se o usuário digitar a frase “Eu estudo no IFSP” a saída do programa deve ser: [Eu] [estudo] [no] [IFSP] Pesquise o funcionamento dos métodos da classe String (trim, indexOf e substring), para encontrar uma maneira de buscar cada palavra dentro da frase. Considere que cada palavra é separada por um caractere de espaço (“ “).