Programação Primeiro trabalho prático Semestre de Inverno de 2011/2012 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é 24 de Outubro, no respectivo site da turma, um documento com o código em Java de cada exercício devidamente documentado com as opções tomadas. É valorizada a simplicidade das soluções que cumpram o enunciado. 1. Sem usar a classe Math, faça um programa que apresente a nota final de um aluno de Pg (arredondada às unidades), dadas as notas do teste, das 3 melhores fichas e da componente prática. Teste o programa redirecionando o input de um ficheiro. C:\ISEL\PG>java NotaPG Teste final ? 12 3 melhores fichas ? 16 12 8 Componente prática ? 14 Nota final = 13. 2. Faça um programa que lê duas letras e escreve a letra cuja ordem alfabética está no meio das duas. Apresente a letra imediatamente anterior se o número de letras entre as duas não for ímpar. 3. Implemente um programa que lê quatro valores inteiros e indique quantos são diferentes (1,2,3 ou 4), são pares e são ímpares. C:\ISEL\PG>java CharMeio Letra 1 ? C Letra 2 ? G Letra do meio = E . C:\ISEL\PG>java Conta4 Valores ? 32 -3 32 234 Diferentes=3, Pares=3, Impares=1. 4. Implemente um programa que lê as coordenadas de dois pontos e apresenta os valores de m e de b da equação reduzida da reta (y=mx+b) que passa pelos dois pontos, ou indica que a reta é vertical. C:\ISEL\PG> java Reduzida p1 (x y) ? 2.3 2 p2 (x y) ? 2.3 3.5 Vertical x=2.3 C:\ISEL\PG>java Reduzida p1 (x y) ? 3.0 1 p2 (x y) ? -1 -1 m=0.5 b=-0.5 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. 5. Implemente um programa que lê os valores de m e de b da equação reduzida de uma reta (y = m x + b) e escreve a equação apresentando apenas os sinais, os valores e os termos indispensáveis. C:\ISEL\PG>java MostraReduzida m?0 b ? -3.5 y = -3.5 C:\ISEL\PG>java MostraReduzida m ? -2.2 b ? -3.5 y = -2.2 x -3.5 C:\ISEL\PG>java MostraReduzida m ? 1.0 b ? 2.5 y = x + 2.5 C:\ISEL\PG>java MostraReduzida m ? 2.3 b?0 y = 2.3 x Programação Primeiro trabalho prático Semestre de Inverno de 2011/2012 6. Faça um programa que lê a hora de partida e de chegada de uma viagem e apresenta a duração. A hora de partida, de chegada e a duração são indicados em horas, minutos e segundos. O programa deve verificar se as horas de partida e de chegada são válidas e deve assinalar se a partida é superior à chegada. C:\ISEL\PG>java Viagem partida H M S ? 7 50 25 chegada H M S ? 14 25 12 Duração = 6:34:47 C:\ISEL\PG>java Viagem partida H M S ? 7 50 25 chegada H M S ? 4 25 12 Partida superior à chegada. C:\ISEL\PG>java Viagem partida H M S ? 7 50 25 chegada H M S ? 14 72 12 Hora de chegada inválida C:\ISEL\PG>java Viagem partida H M S ? 18 50 20 chegada H M S ? 19 20 20 Duração = 0:30:0 ISEL, 10 de Outubro de 2011