Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- namespace task4
- {
- public class Figure
- {
- public string FigureType;
- private Point[] p;
- public Figure(Point p1, Point p2, Point p3)
- {
- p = new Point[3];
- p[0] = p1;
- p[1] = p2;
- p[2] = p3;
- FigureType = "Triangle";
- }
- public Figure(Point p1, Point p2, Point p3, Point p4)
- {
- p = new Point[4];
- p[0] = p1;
- p[1] = p2;
- p[2] = p3;
- p[3] = p4;
- FigureType = "Rectangle";
- }
- public Figure(Point p1, Point p2, Point p3, Point p4, Point p5)
- {
- p = new Point[5];
- p[0] = p1;
- p[1] = p2;
- p[2] = p3;
- p[3] = p4;
- p[4] = p5;
- FigureType = "Pentagon";
- }
- public double getPerimeter()
- {
- double P = 0;
- if (FigureType == "Triangle")
- {
- for(byte i=0; i < p.Length-1; i++)
- {
- P += Math.Sqrt(Math.Pow((p[i].X - p[i+1].X),2) + Math.Pow((p[i].Y - p[i+1].Y),2));
- }
- return P + Math.Sqrt(Math.Pow((p[0].X - p[p.Length - 1].X), 2) + Math.Pow((p[0].Y - p[p.Length - 1].Y), 2));
- }
- else if (FigureType == "Rectangle")
- {
- for (byte i = 0; i < p.Length-1; i++)
- {
- P += Math.Sqrt(Math.Pow((p[i].X - p[i + 1].X), 2) + Math.Pow((p[i].Y - p[i + 1].Y), 2));
- }
- return P + Math.Sqrt(Math.Pow((p[0].X - p[p.Length - 1].X), 2) + Math.Pow((p[0].Y - p[p.Length - 1].Y), 2));
- }
- else if (FigureType == "Pentagon")
- {
- for (byte i = 0; i < p.Length-1; i++)
- {
- P += Math.Sqrt(Math.Pow((p[i].X - p[i + 1].X), 2) + Math.Pow((p[i].Y - p[i + 1].Y), 2));
- }
- return P + Math.Sqrt(Math.Pow((p[0].X - p[p.Length - 1].X), 2) + Math.Pow((p[0].Y - p[p.Length - 1].Y), 2));
- }
- else
- return 0;
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement