Συζήτηση
Γεια χαρά, Επισκέπτης
Όνομα χρήστη: Κωδικός: Να με θυμάσαι

ΘΕΜΑ: Βοήθεια με ασκήσεις python (Απλες 1ου Ετους)

Βοήθεια με ασκήσεις python (Απλες 1ου Ετους) 9 Χρόνια 2 Μήνες πριν #2650

  • strack147
  • Το Άβαταρ του/της strack147
  • Αποσυνδεμένος
  • pyt___
  • Δημοσιεύσεις: 36
  • Ληφθείσες Ευχαριστίες 1
class Quadrilateral:
 
    def __init__(self,x1,y1,x2,y2,x3,y3,x4,y4):
        self.x1=x1
        self.x2=x2
        self.x3=x3
        self.x4=x4
        self.y1=y1
        self.y2=y2
        self.y3=y3
        self.y4=y4
 
class Trapezoid(Quadrilateral):
 
    def __init__(self,x1,y1,x2,y2,x3,y3,x4,y4):
        Quadrilateral.__init__(self,x1,y1,x2,y2,x3,y3,x4,y4)    
        emv=(self.x1*self.y2-self.y1*self.x2)+(self.x2*self.y3-self.y2*self.x3)+(self.x3*self.y4-self.y3*self.x4)+(self.x4*self.y1-self.y4*self.x1)
        print(emv)
 
 
 
 
class Parallelogram(Quadrilateral):
    def __init__(self,x1,y1,x2,y2,x3,y3,x4,y4):
        Quadrilateral.__init__(self,x1,y1,x2,y2,x3,y3,x4,y4)
        emv=(self.x1*self.y2-self.y1*self.x2)+(self.x2*self.y3-self.y2*self.x3)+(self.x3*self.y4-self.y3*self.x4)+(self.x4*self.y1-self.y4*self.x1)
        print(emv)
 
 
 
 
class Rectangle(Quadrilateral):
    def __init__(self,x1,y1,x2,y2,x3,y3,x4,y4):
        Quadrilateral.__init__(self,x1,y1,x2,y2,x3,y3,x4,y4)
        emv=(self.x1*self.y2-self.y1*self.x2)+(self.x2*self.y3-self.y2*self.x3)+(self.x3*self.y4-self.y3*self.x4)+(self.x4*self.y1-self.y4*self.x1)
        print(emv)
 
class Square(Quadrilateral):
    def __init__(self,x1,y1,x2,y2,x3,y3,x4,y4):
        Quadrilateral.__init__(self,x1,y1,x2,y2,x3,y3,x4,y4)
        emv=(self.x1*self.y2-self.y1*self.x2)+(self.x2*self.y3-self.y2*self.x3)+(self.x3*self.y4-self.y3*self.x4)+(self.x4*self.y1-self.y4*self.x1)
        print(emv)
 
 
tr=Trapezoid(-1,2,4,5,7,9,4,6)
pa=Parallelogram(4,6,8,9,4,5,6,7)
re=Rectangle(1,9,5,4,6,7,8,9)
sq=Square(1,2,7,3,-9,9,5,9)

αυτο ?
Πρέπει να είστε εγγεγραμμένο μέλος του Φόρουμ για να κάνετε μια δημοσίευση.

Βοήθεια με ασκήσεις python (Απλες 1ου Ετους) 9 Χρόνια 2 Μήνες πριν #2651

  • pmav99
  • Το Άβαταρ του/της pmav99
  • Αποσυνδεμένος
  • Author
  • Δημοσιεύσεις: 684
  • Ληφθείσες Ευχαριστίες 111
Διάβασε την ενότητα που λέει Limitations. Στο απαντάει.
Πρέπει να είστε εγγεγραμμένο μέλος του Φόρουμ για να κάνετε μια δημοσίευση.

Βοήθεια με ασκήσεις python (Απλες 1ου Ετους) 9 Χρόνια 2 Μήνες πριν #2652

  • pmav99
  • Το Άβαταρ του/της pmav99
  • Αποσυνδεμένος
  • Author
  • Δημοσιεύσεις: 684
  • Ληφθείσες Ευχαριστίες 111
Σχεδόν το έκανες. Τον υπολογισμό του εμβαδού, μπορείς να τον κάνεις κατευθείαν στην Quadrilateral, και οι υπόλοιπες κλάσεις θα τον κάνουν όταν καλείς την super().
class Quadrilateral:
    def __init__(self,x1,y1,x2,y2,x3,y3,x4,y4):
        self.x1=x1
        self.x2=x2
        self.x3=x3
        self.x4=x4
        self.y1=y1
        self.y2=y2
        self.y3=y3
        self.y4=y4
 
        # calculate area from coordinates
        # http://www.mathopenref.com/coordpolygonarea.html
        self.area = (x1 * y2 - y1 * x2) + (x2 * y3 - y2 * x3) + (x3 * y4 - y3 * x4) + (x4 * y1 - y4 * x1)
 
class Trapezoid(Quadrilateral):
    def __init__(self,x1,y1,x2,y2,x3,y3,x4,y4):
        super(Trapezoid, self).__init__(self,x1,y1,x2,y2,x3,y3,x4,y4)
 
 
class Parallelogram(Quadrilateral):
    def __init__(self,x1,y1,x2,y2,x3,y3,x4,y4):
        super(Parallelogram, self).__init__(self,x1,y1,x2,y2,x3,y3,x4,y4)
 
 
class Rectangle(Quadrilateral):
    def __init__(self,x1,y1,x2,y2,x3,y3,x4,y4):
        super(Rectangle, self).__init__(self,x1,y1,x2,y2,x3,y3,x4,y4)
 
class Square(Quadrilateral):
    def __init__(self,x1,y1,x2,y2,x3,y3,x4,y4):
        super(Square, self).__init__(self,x1,y1,x2,y2,x3,y3,x4,y4)
 
 
tr=Trapezoid(-1,2,4,5,7,9,4,6)
pa=Parallelogram(4,6,8,9,4,5,6,7)
re=Rectangle(1,9,5,4,6,7,8,9)
sq=Square(1,2,7,3,-9,9,5,9)
 
 
print("Trapezoid area: ", tr.area)
print("Parallelogram area: ", pa.area)
print("Rectangle area: ", re.area)
print("Square area: ", sq.area)

Το λάθος που έχεις είναι ότι δεν δίνεις τα σημεία με τη σωστή φορά.
Τελευταία διόρθωση: 9 Χρόνια 2 Μήνες πριν από pmav99.
Πρέπει να είστε εγγεγραμμένο μέλος του Φόρουμ για να κάνετε μια δημοσίευση.

Βοήθεια με ασκήσεις python (Απλες 1ου Ετους) 9 Χρόνια 2 Μήνες πριν #2653

  • strack147
  • Το Άβαταρ του/της strack147
  • Αποσυνδεμένος
  • pyt___
  • Δημοσιεύσεις: 36
  • Ληφθείσες Ευχαριστίες 1
Δηλαδη με την διορθωση και τις σημειωσεις που μου εκανες ειναι σωστο ?
Πρέπει να είστε εγγεγραμμένο μέλος του Φόρουμ για να κάνετε μια δημοσίευση.

Βοήθεια με ασκήσεις python (Απλες 1ου Ετους) 9 Χρόνια 2 Μήνες πριν #2654

  • pmav99
  • Το Άβαταρ του/της pmav99
  • Αποσυνδεμένος
  • Author
  • Δημοσιεύσεις: 684
  • Ληφθείσες Ευχαριστίες 111
Όπως σου είπα και την προηγούμενη φορά που ρώτησες
Όσον αφορά τη λογική θα έλεγα ότι μάλλον δεν έχεις κάνει αυτό που ζητάει. Λογικά θα πρέπει το τραπέζιο να κληρονομεί το quadrilateral, το παραλληλόγραμμο να κληρονομεί το τραπέζιο, το ορθογώνιο να κληρονομεί το παραλληλόγραμμο κτλ. Για αυτό σου λέει για ιεραρχία κληρονομικότητας.

Από εκεί και πέρα, εσένα πως σου φαίνεται αυτό που έχεις κάνει;
Πρέπει να είστε εγγεγραμμένο μέλος του Φόρουμ για να κάνετε μια δημοσίευση.

Βοήθεια με ασκήσεις python (Απλες 1ου Ετους) 9 Χρόνια 2 Μήνες πριν #2655

  • strack147
  • Το Άβαταρ του/της strack147
  • Αποσυνδεμένος
  • pyt___
  • Δημοσιεύσεις: 36
  • Ληφθείσες Ευχαριστίες 1
Για αυτό που μου είπες ρώτησα και μου είπε ότι όλες κληρονομούν την quadrilateral .. τώρα δεν ξέρω για αυτό το ποσταρα εδώ επειδή δεν είμαι σίγουρος .. εσείς τι λέτε .. είναι εντάξει ? αν ήταν κάτι άλλο δεν θα είχα πρόβλημα άλλα έχει γεωμετρία και τρελαίνομαι :Ρ δεν ξέρω την τύφλα μου !!
Πρέπει να είστε εγγεγραμμένο μέλος του Φόρουμ για να κάνετε μια δημοσίευση.
Συντονιστές: pmav99
Χρόνος δημιουργίας σελίδας: 0.568 δευτερόλεπτα

Μοιράσου το!

Powered by CoalaWeb

Λίστα Ταχυδρομείου