INSTITUTO POLITÉCNICO DE BRAGANÇA ESCOLA SUPERIOR AGRÁRIA DE BRAGANÇA I NFORM ÁTI C A E COMPUT AÇ ÃO – Ficha de Trabalho nº8 Objectivos: y y y • Algoritmos; Simbologia de fluxogramas; Desenvolvimento de fluxogramas; Optimização de algoritmos. Considere que tem de efectuar pagamentos recorrendo apenas a moedas de Euros. Assim, dispõe de moedas dos seguintes valores: 2, 1, 0.5, 0.2, 0.1, 0.05 e 0.01 Euros. O objectivo é usar sempre o menor número de moedas. Crie um algoritmo com aplicação computacional para solucionar o problema e apresente-o em forma de fluxograma. Exemplo Pagamento a efectuar : 7.43 Euros O pagamento será feito com: 3 moeda(s) de 2 Euros; 1 moeda(s) de 1 Euro; 2 moeda(s) de 0.20 Euros; Sequência linear 1 moeda(s) de 0.02 Euros; 1 moeda(s) de 0.01 Euros; Crie um algoritmo com aplicação computacional para ordenar três números inteiros lidos do teclado. Os três números, a,b e c, que constituem a entrada de dados, deverão ser escritos (saída) pelo computador por ordem crescente. Apresente o fluxograma que representa o algoritmo desenvolvido. Exemplo Entradas : a=2; b=5 e c=1 Saída : 1;2;5 Decisão/Selecção Uma série de Fibonnaci consiste numa série de números tais que, cada número é a soma dos dois termos anteriores. O valor do primeiro e segundo termo é igual a 1. Elabore um fluxograma, que represente um algoritmo com aplicação computacional, que permita calcular uma série de Fibonacci até um número de termos (n_termos) que é lido do teclado. t(0)=1 t(1)=1 t(2)=2 t(3)=3 t(4)=5 t(5)=8 ....... t(n)=t(n-1)+t(n-2) Exemplo Número de termos: 8 Ciclo/Repetição Série de Fibonacci: 1,1,2,3,5,8,13,21 Considere que um determinado operador de telecomunicações móveis, disponibiliza aos seus clientes o seguinte plano tarifário: y preço por minuto = 0.3 Euros, para chamadas de duração até 10 minutos. y 11º minuto e seguintes cobrados a 0.05 Euros por minuto. y cobrança mínima por chamada = 0.3 Euros. y cobrança ao segundo a partir do 1º minuto. Entrada: Duração da chamada em segundos Saída : Preço a pagar pela chamada As fases da lua são 4, a saber, Lua Nova, Quarto Crescente, Lua Cheia e Quarto Minguante e sucedem-se por essa ordem. Admita-se que tais fases, duram 7 dias exactos e que no dia 1 de Janeiro foi o primeiro dia de Lua Nova. Pretende-se calcular a fase da lua, para qualquer dia do ano, referindo os dias pelo seu ordinal, do 1º ao 365º. Elabore um fluxograma, com aplicação computacional, que solucione o problema apresentado. Exemplo Entrada >Dia do ano : 75 Saída < Fase da lua : Lua Cheia Crie um algoritmo que permita verificar se um determinado número inteiro que é lido do teclado é ou não primo. Apresente o fluxograma correspondente e aponte possíveis optimizações. Grupo de Informática da ESAB – 2004/2005