簡體   English   中英

如何讓我的代碼編寫一個 python 三角形?

[英]How can I make my code write a python triangle?

我一直在嘗試制作一個三角形並使用 Turtle 將其繪制出來。 我希望人們能夠導入這些值,我的程序會說它是否是三角形。 如果它是一個三角形,那么我的程序就會把它寫出來。 如果沒有,它會給出錯誤。 當我測試我的代碼時,它說angle1 未定義。 在第 56 行,我嘗試將角度 1 和所有其他參數更改為數字並且它起作用了,但是我希望用戶輸入數字,而不是將它們輸入到程序中。 不要擔心數學。 我有我要添加的所有代碼。我只需要幫助讓第 56 行工作。

from turtle import *
canvas = Screen()
canvas.setup(400,200)

class Triangle(object):
    """Triangle"""
    sides = 3
    def __init__(self, angle1, angle2, angle3, length1, length2, length3):
        self.angle1 = angle1
        self.angle2 = angle2
        self.angle3 = angle3
        self.length1 = length1
        self.length2 = length2
        self.length3 = length3

    print "Enter the following inputs"
    angle1 = raw_input("Please enter Angle 1: ")
    print angle1
    angle2 = raw_input("Please enter Angle 2: ")
    print angle2
    angle3 = raw_input("Please enter Angle 3: ")
    print angle3
    length1 = raw_input("Please enter Length 1: ")
    print length1
    length2 = raw_input("Please enter Length 2: ")
    print length2
    length3 = raw_input("Please enter Length 3: ")
    print length3

    def description(self):
        print angle1
        print angle2
        print angle3
        print length1
        print length2
        print length3
        self.degrees()

    def check_Angles(self):
        "Lets Make sure the angles add up to 180"
        if self.angle1 + self.angle2 + self.angle3 == 180:
            print "That is a good Triangle"
            return True 
        else:
            print "That is not a good Triangle"
            return False

    def draw(self):
        if self.check_Angles():
            pen = Turtle()
            pen.forward(self.length1)
            pen.left(self.angle1)
            pen.forward(self.length2)
            pen.left(self.angle2)
            pen.forward(self.length3)

triangle2 = Triangle(angle1, angle2, angle3, length1, length2, length3)

triangle2.draw() 

canvas.exitonclick()

您的代碼的以下重新排列將使其運行,但不一定工作。 即它沒有繪制正確的三角形——但這是你可以在現在運行的代碼中使用的東西:

from turtle import *

canvas = Screen()
canvas.setup(400, 200)

class Triangle(object):
    """Triangle Class"""

    def __init__(self, angle1, angle2, angle3, length1, length2, length3):
        self.angle1 = angle1
        self.angle2 = angle2
        self.angle3 = angle3
        self.length1 = length1
        self.length2 = length2
        self.length3 = length3

    def description(self):
        print angle1
        print angle2
        print angle3
        print length1
        print length2
        print length3

    def check_Angles(self):
        """Lets Make sure the angles add up to 180"""

        if self.angle1 + self.angle2 + self.angle3 == 180:
            print "That is a good Triangle"
            return True 
        else:
            print "That is not a good Triangle"
            return False

    def draw(self):
        if self.check_Angles():
            pen = Turtle()
            pen.forward(self.length1)
            pen.left(self.angle1)
            pen.forward(self.length2)
            pen.left(self.angle2)
            pen.forward(self.length3)

print "Enter the following values:"

angle1 = int(raw_input("Please enter Angle 1: "))
angle2 = int(raw_input("Please enter Angle 2: "))
angle3 = int(raw_input("Please enter Angle 3: "))

length1 = int(raw_input("Please enter Length 1: "))
length2 = int(raw_input("Please enter Length 2: "))
length3 = int(raw_input("Please enter Length 3: "))

triangle = Triangle(angle1, angle2, angle3, length1, length2, length3)

triangle.draw() 

canvas.exitonclick()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM