fork download
  1. /* package whatever; // don't place package name! */
  2.  
  3. import java.util.ArrayList;
  4. import java.util.Comparator;
  5. import java.util.List;
  6.  
  7. // Класс сладостей
  8. class Sweet {
  9. private String name;
  10. private double ves;
  11. private double s; // Содержание сахара в граммах на 100 г
  12.  
  13. public Sweet(String name, double ves, double s) {
  14. this.name = name;
  15. this.ves = ves;
  16. this.s = s;
  17. }
  18.  
  19. public String getName() {
  20. return name;
  21. }
  22.  
  23. public double getVes() {
  24. return ves;
  25. }
  26.  
  27. public double getS() {
  28. return s;
  29. }
  30.  
  31. public String toString() {
  32. return name + " (Вес: " + ves + "г, Содержание сахара: " + s + "г/100г)";
  33. }
  34. }
  35.  
  36. // Класс подарка
  37. class Gift {
  38. private List<Sweet> sweets;
  39.  
  40. public Gift() {
  41. this.sweets = new ArrayList<>();
  42. }
  43.  
  44. public void addSweet(Sweet sweet) {
  45. sweets.add(sweet);
  46. }
  47.  
  48. public double getTotalWeight() {
  49. double totalVes = 0;
  50. for (Sweet sweet : sweets) {
  51. totalVes += sweet.getVes();
  52. }
  53. return totalVes;
  54. }
  55.  
  56. public void sortSweet() {
  57. sweets.sort(Comparator.comparingDouble(Sweet::getS));
  58. }
  59.  
  60. public Sweet findSweet(double minSugar, double maxSugar) {
  61. for (Sweet sweet : sweets) {
  62. if (sweet.getS() >= minSugar && sweet.getS() <= maxSugar) {
  63. return sweet;
  64. }
  65. }
  66. return null;
  67. }
  68.  
  69. public void showGift() {
  70. for (Sweet sweet : sweets) {
  71. System.out.println(sweet);
  72. }
  73. }
  74. }
  75.  
  76. public class Main {
  77. public static void main(String[] args) {
  78. Sweet candy1 = new Sweet("Шоколадка", 100, 50);
  79. Sweet candy2 = new Sweet("Карамелька", 50, 60);
  80. Sweet candy3 = new Sweet("Мармеладка", 80, 40);
  81.  
  82. Gift gift = new Gift();
  83. gift.addSweet(candy1);
  84. gift.addSweet(candy2);
  85. gift.addSweet(candy3);
  86.  
  87. System.out.println("Общий вес подарка: " + gift.getTotalWeight() + "г");
  88.  
  89. System.out.println("\nСортировка конфет по содержанию сахара:");
  90. gift.sortSweet();
  91. gift.showGift();
  92.  
  93. System.out.println("\nКонфета с содержанием сахара от 45г до 55г:");
  94. Sweet Range = gift.findSweet(45, 55);
  95. if (Range != null) {
  96. System.out.println("Найдена: " + Range);
  97. } else {
  98. System.out.println("Конфета с указанным содержанием сахара не найдена.");
  99. }
  100. }
  101. }
  102.  
  103.  
Success #stdin #stdout 0.24s 58748KB
stdin
Standard input is empty
stdout
Общий вес подарка: 230.0г

Сортировка конфет по содержанию сахара:
Мармеладка (Вес: 80.0г, Содержание сахара: 40.0г/100г)
Шоколадка (Вес: 100.0г, Содержание сахара: 50.0г/100г)
Карамелька (Вес: 50.0г, Содержание сахара: 60.0г/100г)

Конфета с содержанием сахара от 45г до 55г:
Найдена: Шоколадка (Вес: 100.0г, Содержание сахара: 50.0г/100г)