Programação Segundo trabalho prático Semestre de Inverno de 2011/2012 Neste trabalho, os alunos adquirem prática de utilização de ciclos repetitivos e arrays. Cada grupo terá que entregar até 14 de Novembro no respectivo site da turma o relatório que descreva as opções tomadas em cada exercício e o código em Java com a solução de cada exercício. Em todos os exercícios não é permitida a utilização de métodos das classes Arrays e Math do package java.lang. 1. Faça um programa que lê um valor positivo e escreve a decomposição desse valor em somas de potências de 2, por ordem decrescente. 31 Considere que o valor lido é inferior a 2 . 2. Sem usar arrays, faça um programa que lê uma sequência de valores reais e no final apresenta os dois maiores deles. O número de valores da sequência é lido antes da sequência dos valores reais. C:\ISEL\PG>java Maiores2 Número de valores a ler ? 12 6,7 3 4,5 12 7 8 1 5,2 7,3 -2 13,1 1 Maior: 13.1 Segundo maior: 12.0 3. Faça um programa que escreve por ordem crescente os N maiores valores da sequência de valores inteiros lidos. O programa só pode usar um array com dimensão N, sendo N o primeiro valor lido. A sequência de valores termina quando for introduzido um elemento que não é um valor inteiro e pode ter menos do que N elementos. C:\ISEL\PG> java Power2 Valor ? 45 45 = 2^5 + 2^3 + 2^2 + 2^0 C:\ISEL\PG>java Maiores N?5 Sequência terminada com uma letra. 20 -13 0 5 15 -4 -27 0 a Maiores 5 por ordem crescente: 0; 0; 5; 15; 20; 4. Faça um programa que escreve o numeral cardinal dos valores inteiros (entre 0 e 999) lidos. O programa termina quando for introduzido um valor negativo. C:\ISEL\PG>java Cardinal Introduza um valor (0..999) ? 318 trezentos e dezoito Introduza um valor (0..999) ? 521 quinhentos e vinte e um Introduza um valor (0..999) ? -1 C:\ISEL\PG>java GraphText Letras ? aPoi Texto : Este trabalho de programacao parece facil 5. Faça um programa que apresenta um gráfico, de barras horizontais com legendas à direita, das ocorrências de algumas letras num texto. A primeira linha de texto introduzida indica as tetras a contabilizar. As restantes linhas introduzidas, até ser introduzida uma linha vazia, têm o texto a considerar. O programa não deve distinguir maiúsculas e minúsculas. *******A **P ***O *I 6. Faça um programa para escrever uma grelha com o número de linhas e de colunas indicado. Os números mínimos e máximos de linhas e colunas são, 2 até 10 para as linhas e 2 até 20 para as colunas. A grelha deve ter o aspeto apresentado no exemplo. C:\ISEL\PG>java Grelha Linhas (2..10) ? 3 Colunas (2..20)? 5 | | | | ---+---+---+---+--| | | | ---+---+---+---+--| | | | ISEL, 31 de Outubro de 2011