Programação Primeiro trabalho prático Semestre de Verão de 2010/2011 Neste trabalho, os alunos adquirem prática de utilização de elementos essenciais da linguagem Java, nomeadamente variáveis, expressões, tipos primitivos, instruções de entrada e de saída de dados e decisão binária. Cada grupo terá que entregar até 28 de Março no respectivo site da turma um documento com o código em Java de cada exercício devidamente documentado com as opções tomadas. 1. Faça um programa em Java que apresente em horas, minutos e segundos o tempo introduzido em segundos. C:\ISEL\PG>java Tempo Tempo ? 9321 2 horas, 35 minutos e 21 segundos. 2. Faça um programa que escreve a letra maiúscula com o número de ordem do valor lido. Os números de ordem de 1 a 26 correspondem às letras de A a Z. O programa deve verificar os limites do valor introduzido. 3. Implemente um programa que escreve por ordem crescente os três valores inteiros lidos. C:\ISEL\PG>java Char ordem da letra ? 20 Letra ordem 20 = T . C:\ISEL\PG>java Ordem Valor 1 ? 32 Valor 2 ? -3 Valor 3 ? 127 -3 32 127 4. Implemente um programa que lê os três termos (valores reais) de uma equação de 2º grau na forma canónica (a x2 + b x + c = 0) e apresenta quantas soluções tem e quais os seus valores, usando a fórmula resolvente. C:\ISEL\PG>java Grau2 a b c ? 1 2 3,5 Equação sem solução. C:\ISEL\PG>java Grau2 a b c ? 1 -1 -2 Solução 1: x = 2,0 Solução 2: x = -1,0 C:\ISEL\PG>java Grau2 abc?121 Solução: x = -1,0 C:\ISEL\PG>java Grau2 a b c ? 1,25 -2,5 -4,75 Solução 1: x = 3,1908902300206643 Solução 2: x = -1,1908902300206645 Nota: Dependendo da língua configurada no sistema operativo, os valores podem ser lidos e escritos usando “.” em vez de “,” para separar as casas decimais. Programação Primeiro trabalho prático Semestre de Verão de 2010/2011 5. Implemente um programa que lê os três termos de uma equação de 2º grau na forma canónica e a escreve na forma (a x^2 + b x + c = 0) apresentando apenas os sinais, os valores e os termos indispensáveis. C:\ISEL\PG>java Canonica a b c ? 0 1 -2,5 forma canónica: x – 2,5 = 0 C:\ISEL\PG>java Canonica a b c ? 3,25 1 -2 forma canónica: 3,25 x^2 + x – 2,0 = 0 C:\ISEL\PG>java Canonica a b c ? 2 -1 0 forma canónica: 2,0 x^2 - x = 0 C:\ISEL\PG>java Canonica abc?101 forma canónica: x^2 + 1,0 = 0 Nota: Dependendo da língua configurada no sistema operativo, os valores podem ser lidos e escritos usando “.” em vez de “,” para separar as casas decimais. 6. Faça um programa que lê a data de nascimento de uma pessoa e a data corrente e apresenta a idade dessa pessoa. As datas são lidas no formato <dia> <mês> <ano>. O programa deve verificar se as datas introduzidas são válidas e deve assinalar se a data de nascimento é superior à data corrente. Caso a data corrente seja de aniversário devem ser dados os parabéns. Considere válidas as datas nas condições (1900 < ano < 2012) , (0 < mês < 13) e (0 < dia < 32), não sendo necessário verificar o dia para meses com menos que 31 dias. C:\ISEL\PG>java Idade data de nascimento ? 27 10 1972 data de hoje ? 9 3 2011 Tem 38 anos. C:\ISEL\PG>java Idade data de nascimento ? 2 2 2020 data de hoje ? 9 3 2011 Data de nascimento superior à corrente. C:\ISEL\PG>java Idade data de nascimento ? 9 3 1970 data de hoje ? 9 3 2011 Parabéns, faz 41 anos. C:\ISEL\PG>java Idade data de nascimento ? 3 27 1972 Mês 27 inválido. ISEL, 11 de Março de 2011