Advertisement
Guest User

Untitled

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