Sie sind auf Seite 1von 6

Introduo Programao e Resoluo de Problemas 2012/2013

Exerccios para as aulas (1)

Ernesto Costa Bernardete Ribeiro, Carlos Fonseca, Joo Vilela, Tiago Baptista

1
O nmero
1.1 Introduo
O nmero um nmero trancendental e dene-se como o quociente entre o permetro e o dimetro de uma circunferncia. Ao longo dos anos muitas foram as solues para se obter o valor aproximado deste nmero. Vamos usar Python para implementar algumas das frmulas e mtodos. Mas no se esquea: os computadores tm limitaes na representao dos nmeros reais, logo o resultado que obtiver nunca pode ter mais algarismos signicativos do que aqueles que o sistema permite. Caso pretenda saber quais os limites do Python no seu computador use os comandos que a listagem abaixo indica.
Python 2.6.1 (r261:67515, Jun 24 2010, 21:47:49) [GCC 4.2.1 (Apple Inc. build 5646)] Type "help", "copyright", "credits" or "license" for more information. >>> import sys >>> sys.float_info sys.floatinfo(max=1.7976931348623157e+308, max_exp=1024, max_10_exp=308, min=2.2250738585072014e-308, min_exp=-1021, min_10_exp=-307, dig=15, mant_dig=53, epsilon =2.2204460492503131e-16, radix=2, rounds=1) >>>

O valor de epsilon d-lhe uma ideia da preciso, logo do nmero de algarismos signicativos.

1.2

Agora a sua vez...

Problema 1.1 MF Algumas aproximaes de so dadas por fraces:


22 7 355 113 9801 2206 2

Teste estas expresses em Python . Problema 1.2 M Leibniz props um modo de calcular , baseado na frmula: 1 1 1 = 1 + + ... 4 3 5 7 Trata-se de uma srie innita. Escreva um programa para calcular o valor de baseado nesta ideia. A sua soluo permite controlar o valor da preciso? Problema 1.3 M Wallis props uma outra abordagem baseada no facto de que: 2 4 4 6 6 = 2 ... 2 3 3 5 5 7 Escreva um programa para calcular o valor de baseado nesta ideia. A sua soluo permite controlar o valor da preciso? Problema 1.4 M O mtodo de Monte Carlo para o clculo de um pouco mais sosticado. Admitamos que temos um quadrado de lado 2 unidades e dentro dele uma circunferncia de raio 1. Divida-se o quadrado em quatro partes iguais. bvio que rea de cada um dos quatro quadrados pequenos de 1 (ver gura 1.1). Por outro lado sabemos que a rea da circunferncia igual a r2 = 1
1

Pois o raio 1.

Figura 1.1: pi: mtodo de Monte Carlo

Logo, a rea da parte da circunferncia que cobre cada quadrado pequeno . O mtodo de Monte Carlo, consiste em simular o lanamento de vale 4 dardos na direco de um dos quadrados pequenos, contar a proporo dos que caiem dentro do quarto de circunferncia, e multiplicar esse valor por 4. Implemente este mtodo em Python. Qual o nmero de dardos que precisa lanar para obter um valor razovel?

1.3

Mais exerccios...

Problema 1.5 F Uma empresa dedica-se ao engarrafamento de gua em garrafas de 1,5L. Escreva um programa que dado o nmero de litros a engarrafar devolva o nmero de garrafas que possvel encher e os litros que sobram. Por exemplo:
>>> engarrafa(2000.75) (1333, 1.25) >>>

Problema 1.6 F Escreva um programa que, dado um nmero inteiro positivo, imprima todos os seus divisores.

Problema 1.7 M Sabendo que um nmero primo aquele que apenas tem como divisores ele prprio e a unidade, implemente um programa que, recebendo dois valores inteiros, imprime todos os nmeros entre esses dois valores (inclusive) que so nmeros primos.

Problema 1.8 F Escreva um programa que pea as coordenadas x e y de um ponto no plano e escreva no ecr Dentro! se esse ponto estiver dentro de um quadrado de lado 10 centrado na origem, Fora! se estiver fora, e Aiii! se estiver sobre a sua fronteira. Problema 1.9 F Escreva um programa que, dados os comprimentos de trs segmentos de reta por ordem no decrescente, indique se esses segmentos podem ou no formar um tringulo. Caso os dados de entrada no estejam devidamente ordenados, o programa deve escrever Erro. no ecr. Problema 1.10 M Escreva um programa que, dados dois inteiros n e p, calcule as combinaes de n p-a-p, de acordo com a seguinte expresso: n p = n (n 1) (n 2) (n p + 1) p (p 1) (p 2) 1

Problema 1.11 M Escreva um programa que, dado um nmero real, calcule um valor aproximado da exponencial desse nmero atravs dos 20 primeiros termos da srie: x2 x3 + + ex = 1 + x + 2! 3!

Das könnte Ihnen auch gefallen