O seguinte programa possui um ou mais erros/omissões. Identifique o(s) erro(s)/omissão(ões)relacionando-o(s) com o conceito de espaço de nomes do python.
def polar_to_cart_x(r, ang): x = r * math.cos(ang) return x if __name__ == “__main__": print(polar_to_cart_x (10, pi/4))Não é feita a importação do módulo math e devemos usar math.pi e não pi.
P2
Escreva um programa para contar o número de pontos que estão dentro de uma circunferência de raio r centrada em (0, 0). O programa deverá receber o número de pontos atestar (num) e o raio (r) como parâmetros. As coordenadas de cada ponto deverão ser pedidas interativamente ao utilizador. No final, o programa deverá indicar o número de pontos que estão dentro da circunferência.
import math def dentro(raio, x, y): len = math.sqrt(x ** 2 + y ** 2) if len <= raio: return True else: return False def conta_dentro_circulo(num, raio): num_dentro = 0 for i in range(num): x = eval(input("x: ")) y = eval(input("y: ")) if dentro(raio, x, y): num_dentro = num_dentro + 1 return num_dentro if __name__ == "__main__": print(conta_dentro_circulo(3, 20))P3
Usando o módulo turtle, escreva um programa que lhe permita desenhar formas do tipo da ilustrada na Figura. Cada forma é composta por um rectângulo com uma circunferência interna, centrados no mesmo ponto.O raio da circunferência dependerá das dimensões do rectângulo, de acordo com o ilustrado na figura. O programa deverá ser parametrizável de maneira a permitir escolher o número de formas, as dimensões mínima e máxima dos lados dos rectângulos, bem como as posições (x e y) dos mesmos. As coordenadas e dimensões do rectângulo envolvente de cada forma deverão ser geradas aleatoriamente.Soluções modulares serão valorizadas.
import turtle import random def rectangulo(xr, yr, lado1, lado2): #preparar turtle.penup() turtle.goto(xr,yr) turtle.pendown() #desenhar for i in range(4): if i%2 == 0: turtle.forward(lado1) else: turtle.forward(lado2) turtle.right(90) def circulo(xc, yc, raio): #preparar turtle.penup() turtle.goto(xc, yc) turtle.pendown() #desenhar turtle.circle(raio) def forma_rect_circulo(xf, yf, lado1, lado2): #rectangulo rectangulo(xf, yf, lado1, lado2) #circulo no interior raio = min(lado1, lado2) / 2 xc = xf + lado1/2 yc = yf - lado2/2 - raio circulo(xc, yc, raio) def desenha_formas(num, xmin, xmax, ymin, ymax, ladomin, ladomax): #sortear e desenhar for i in range(num): xf = random.randint(xmin, xmax) yf = random.randint(ymin, ymax) lado1 = random.randint(ladomin, ladomax) lado2 = random.randint(ladomin, ladomax) forma_rect_circulo(xf, yf, lado1, lado2) if __name__ == "__main__": turtle.hideturtle() desenha_formas(5, -300, 300, -300, 300, 50, 150) turtle.exitonclick()
Sem comentários:
Enviar um comentário