Udfordring: Konstruktører
Følgende program har to structs, hvoraf den ene kaldes Point
, som definerer en koordinat, da den har et x
- og et y
-attribut/felt. Den anden struct kaldes Triangle
og består af 3 point-objekter. I konstruktøren videregives tre point-objekter for korrekt at initialisere en trekant.
Udfyld de tomme felter for at fuldføre konstruktørerne for begge structs.
Det er også en god øvelse i kodeforståelse at læse hele koden og forsøge at forstå den, men det er ikke nødvendigt for at løse denne opgave.
index.cs
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354using System; class Program { struct Point { public double x; public double y; ___ { ___ = x; ___ = y; } } struct Triangle { public Point[] vertices; ___ { ___ = new Point[] { a, b, c }; } // Calculates and returns the area of the triangle based on the vertices. public double getArea() { // Storing the values in shorter variables for ease of use and code readability. double x1 = this.vertices[0].x; double x2 = this.vertices[1].x; double x3 = this.vertices[2].x; double y1 = this.vertices[0].y; double y2 = this.vertices[1].y; double y3 = this.vertices[2].y; // Calculating and returning the area of the triangle. // This formula is easy available on the internet, you don't need to understand it. return (0.5) * ( x1 * (y2 - y3) + x2 * (y3 - y1) + x3 * (y1 - y2) ); } } static void Main(string[] args) { Point p1 = new Point(47, 17); Point p2 = new Point(9, 50); Point p3 = new Point(7, 14); Triangle tri = new Triangle(p1, p2, p3); Console.WriteLine(tri.getArea()); } }
En konstruktør ligner en metode, men den har ingen returværdi, og derudover anvendes nøgleordet public
før dens definition.
index.cs
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354using System; class Program { struct Point { public double x; public double y; public Point(double x, double y) { this.x = x; this.y = y; } } struct Triangle { public Point[] vertices; public Triangle(Point a, Point b, Point c) { this.vertices = new Point[] { a, b, c }; } // Calculates and returns the area of the triangle based on the vertices. public double getArea() { // Storing the values in shorter variables for ease of use and code readability. double x1 = this.vertices[0].x; double x2 = this.vertices[1].x; double x3 = this.vertices[2].x; double y1 = this.vertices[0].y; double y2 = this.vertices[1].y; double y3 = this.vertices[2].y; // Calculating and returning the area of the triangle. // This formula is easy available on the internet, you don't need to understand it. return (0.5) * ( x1 * (y2 - y3) + x2 * (y3 - y1) + x3 * (y1 - y2) ); } } static void Main(string[] args) { Point p1 = new Point(47, 17); Point p2 = new Point(9, 50); Point p3 = new Point(7, 14); Triangle tri = new Triangle(p1, p2, p3); Console.WriteLine(tri.getArea()); } }
Tak for dine kommentarer!
Spørg AI
Spørg AI
Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat
Awesome!
Completion rate improved to 2.04
Udfordring: Konstruktører
Stryg for at vise menuen
Følgende program har to structs, hvoraf den ene kaldes Point
, som definerer en koordinat, da den har et x
- og et y
-attribut/felt. Den anden struct kaldes Triangle
og består af 3 point-objekter. I konstruktøren videregives tre point-objekter for korrekt at initialisere en trekant.
Udfyld de tomme felter for at fuldføre konstruktørerne for begge structs.
Det er også en god øvelse i kodeforståelse at læse hele koden og forsøge at forstå den, men det er ikke nødvendigt for at løse denne opgave.
index.cs
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354using System; class Program { struct Point { public double x; public double y; ___ { ___ = x; ___ = y; } } struct Triangle { public Point[] vertices; ___ { ___ = new Point[] { a, b, c }; } // Calculates and returns the area of the triangle based on the vertices. public double getArea() { // Storing the values in shorter variables for ease of use and code readability. double x1 = this.vertices[0].x; double x2 = this.vertices[1].x; double x3 = this.vertices[2].x; double y1 = this.vertices[0].y; double y2 = this.vertices[1].y; double y3 = this.vertices[2].y; // Calculating and returning the area of the triangle. // This formula is easy available on the internet, you don't need to understand it. return (0.5) * ( x1 * (y2 - y3) + x2 * (y3 - y1) + x3 * (y1 - y2) ); } } static void Main(string[] args) { Point p1 = new Point(47, 17); Point p2 = new Point(9, 50); Point p3 = new Point(7, 14); Triangle tri = new Triangle(p1, p2, p3); Console.WriteLine(tri.getArea()); } }
En konstruktør ligner en metode, men den har ingen returværdi, og derudover anvendes nøgleordet public
før dens definition.
index.cs
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354using System; class Program { struct Point { public double x; public double y; public Point(double x, double y) { this.x = x; this.y = y; } } struct Triangle { public Point[] vertices; public Triangle(Point a, Point b, Point c) { this.vertices = new Point[] { a, b, c }; } // Calculates and returns the area of the triangle based on the vertices. public double getArea() { // Storing the values in shorter variables for ease of use and code readability. double x1 = this.vertices[0].x; double x2 = this.vertices[1].x; double x3 = this.vertices[2].x; double y1 = this.vertices[0].y; double y2 = this.vertices[1].y; double y3 = this.vertices[2].y; // Calculating and returning the area of the triangle. // This formula is easy available on the internet, you don't need to understand it. return (0.5) * ( x1 * (y2 - y3) + x2 * (y3 - y1) + x3 * (y1 - y2) ); } } static void Main(string[] args) { Point p1 = new Point(47, 17); Point p2 = new Point(9, 50); Point p3 = new Point(7, 14); Triangle tri = new Triangle(p1, p2, p3); Console.WriteLine(tri.getArea()); } }
Tak for dine kommentarer!