Advertisement
Guest User

Untitled

a guest
Jan 23rd, 2020
89
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 2.24 KB | None | 0 0
  1. using System;
  2. namespace task4
  3. {
  4.     public class Figure
  5.     {
  6.         public string FigureType;
  7.         private Point p1, p2, p3, p4, p5;
  8.  
  9.         private Point[] p;
  10.  
  11.         public Figure(Point p1, Point p2, Point p3)
  12.         {
  13.             p = new Point[3];
  14.             p[0] = p1;
  15.             p[1] = p2;
  16.             p[2] = p3;
  17.  
  18.             FigureType = "Triangle";
  19.         }
  20.         public Figure(Point p1, Point p2, Point p3, Point p4)
  21.         {
  22.             p = new Point[4];
  23.             p[0] = p1;
  24.             p[1] = p2;
  25.             p[2] = p3;
  26.             p[3] = p4;
  27.  
  28.             FigureType = "Rectangle";
  29.         }
  30.         public Figure(Point p1, Point p2, Point p3, Point p4, Point p5)
  31.         {
  32.             p = new Point[5];
  33.             p[0] = p1;
  34.             p[1] = p2;
  35.             p[2] = p3;
  36.             p[3] = p4;
  37.             p[4] = p5;
  38.  
  39.             FigureType = "Pentagon";
  40.         }
  41.  
  42.         public double getPerimeter()
  43.         {
  44.             double P = 0;
  45.  
  46.             if (FigureType == "Triangle")
  47.             {
  48.                 for(byte i=0; i < p.Length-1; i++)
  49.                 {
  50.                     P += Math.Sqrt(Math.Pow((p[i].X - p[i+1].X),2) + Math.Pow((p[i].Y - p[i+1].Y),2));
  51.                 }
  52.                 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));
  53.             }
  54.             else if (FigureType == "Rectangle")
  55.             {
  56.                 for (byte i = 0; i < p.Length-1; i++)
  57.                 {
  58.                     P += Math.Sqrt(Math.Pow((p[i].X - p[i + 1].X), 2) + Math.Pow((p[i].Y - p[i + 1].Y), 2));
  59.                 }
  60.                 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));
  61.             }
  62.             else if (FigureType == "Pentagon")
  63.             {
  64.                 for (byte i = 0; i < p.Length-1; i++)
  65.                 {
  66.                     P += Math.Sqrt(Math.Pow((p[i].X - p[i + 1].X), 2) + Math.Pow((p[i].Y - p[i + 1].Y), 2));
  67.                 }
  68.                 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));
  69.             }
  70.             else
  71.                 return 0;
  72.         }
  73.     }
  74. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement