Guest User

Untitled

a guest
Jan 19th, 2018
73
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.02 KB | None | 0 0
  1. /**
  2. * Represents a polygon with a specified number of sides
  3. * lengths. The polygon is classified based on its number of sides.
  4. *
  5. * @author Ez
  6. */
  7. public class Polygon {
  8.  
  9. private double[] sideLengths;
  10.  
  11. public Polygon(double[] sidesIn) {
  12. setSides(sidesIn);
  13. }
  14.  
  15. public void setSides(double[] sidesIn) {
  16. sideLengths = sidesIn != null ? sidesIn : sideLengths;
  17. }
  18.  
  19. public double[] getSides() {
  20. return sideLengths;
  21. }
  22.  
  23. public String toString() {
  24. switch (sideLengths.length) {
  25. case 0:
  26. case 1:
  27. case 2:
  28. return "non-polygon";
  29. case 3:
  30. return "triangle";
  31. case 4:
  32. return "rectangle";
  33. case 5:
  34. return "pentagon";
  35. case 6:
  36. return "hexagon";
  37. case 7:
  38. return "heptagon";
  39. case 8:
  40. return "octagon";
  41. default:
  42. return "n-gon";
  43. }
  44. }
  45. public double calculatePerimeter() {
  46. double sum = 0;
  47.  
  48. for(int i = 0; i < sideLengths.length; i++)
  49. {
  50. sum += sideLengths[i];
  51. }
  52. return sum;
  53. }
  54.  
  55. public double[] getSidesGreaterThan(double userInput)
  56. {
  57.  
  58. int greater = 0;
  59.  
  60. for(int i = 0; i < sideLengths.length; i++)
  61. {
  62. if (sideLengths[i] > userInput)
  63. {
  64. greater++;
  65. }
  66. }
  67.  
  68. double[] sidesGreaterThan = new double[greater];
  69. int count = 0;
  70.  
  71. for(int i = 0; i < sideLengths.length; i++)
  72. {
  73. if (sideLengths[i] > userInput)
  74. {
  75. sidesGreaterThan[count] = sideLengths[i];
  76. count++;
  77. }
  78.  
  79.  
  80. }
  81. return sidesGreaterThan;
  82. }
  83. }
Add Comment
Please, Sign In to add comment