Guest User

Untitled

a guest
Jan 19th, 2018
85
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.01 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 The Grifter
  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. int sum = 0;
  47. for(int i = 0; i < sideLengths.length; i++) {
  48. sum += sideLengths[i];
  49. }
  50. return sum;
  51. }
  52.  
  53. public double[] getSidesGreaterThan(double userInput)
  54. {
  55.  
  56. int greater = 0;
  57.  
  58. for(int i = 0; i < sideLengths.length; i++)
  59. {
  60. if (sideLengths[i] > userInput)
  61. {
  62. greater++;
  63. }
  64. }
  65.  
  66. double[] sidesGreaterThan = new double[greater];
  67. int count = 0;
  68.  
  69. for(int i = 0; i < sideLengths.length; i++)
  70. {
  71. if (sideLengths[i] > userInput)
  72. {
  73. sidesGreaterThan[count] = sideLengths[i];
  74. count++;
  75. }
  76.  
  77.  
  78. }
  79. return sidesGreaterThan;
  80. }
  81. }
Add Comment
Please, Sign In to add comment