Advertisement
lashrone1

Untitled

May 7th, 2019
152
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.45 KB | None | 0 0
  1. public class Main {
  2.  
  3. public static void main(String[] args) {
  4.  
  5. Bus ai = new Bus(15,10,20,30);
  6. System.out.println( ai.getPetrolAmount());
  7. System.out.println(ai.getMaxPeople());
  8. System.out.println(ai.getPeopleCount());
  9. ai.arrive();
  10. System.out.println(ai.leave());
  11.  
  12.  
  13.  
  14.  
  15. }
  16. }
  17.  
  18. public class Base {
  19. protected static int people_on_base;
  20. protected static int vechiles_on_base;
  21. protected static double petrol_on_base;
  22. protected static double goods_on_base;
  23. }
  24.  
  25. public class Vechile extends Base {
  26. protected double petrol_amount;
  27. protected double tank_volume;
  28.  
  29. Vechile(double petrol_amount, double tank_volume){
  30. this.petrol_amount = petrol_amount;
  31. this.tank_volume = tank_volume;
  32. };
  33.  
  34. public double getTankVolume(){
  35. return tank_volume;
  36. }
  37.  
  38. public double getPetrolAmount(){
  39. return petrol_amount;
  40. }
  41.  
  42. public void arrive(){
  43. super.vechiles_on_base++;
  44. super.people_on_base++;
  45. petrol_amount = petrol_amount - 10;
  46. }
  47.  
  48. public boolean leave(){
  49. if(super.people_on_base-- < 0 || super.petrol_on_base < tank_volume - petrol_amount){
  50. return false;
  51. }else{
  52. super.people_on_base--;
  53. super.petrol_on_base = super.petrol_on_base - (tank_volume - petrol_amount);
  54. petrol_amount = tank_volume;
  55. return true;
  56. }
  57. }
  58. }
  59.  
  60. public class Bus extends Vechile {
  61. private int people;
  62. private int max_people;
  63.  
  64. Bus(int people, int max_people, double petrol, double max_petrol) {
  65. super(petrol, max_petrol);
  66. this.max_people = max_people;
  67. this.people = people;
  68. }
  69.  
  70. ;
  71.  
  72. public int getPeopleCount() {
  73. return people;
  74. }
  75.  
  76. public int getMaxPeople() {
  77. return max_people;
  78. }
  79.  
  80. public void arrive() {
  81. super.arrive();
  82. super.people_on_base = people_on_base + people;
  83. people = 0;
  84. }
  85.  
  86. public boolean leave() {
  87. if (super.leave() == true) {
  88. if (super.people_on_base - (max_people - people) < 0) {
  89. people = super.people_on_base;
  90. return true;
  91. } else {
  92. super.people_on_base = super.people_on_base - (max_people - people);
  93. people = max_people;
  94. return true;
  95. }
  96. } else {
  97. return false;
  98. }
  99.  
  100. }
  101. }
  102.  
  103. public class Truck extends Vechile{
  104. private double load;
  105. private double max_load;
  106.  
  107. Truck(double load, double max_load, double petrol, double max_petrol){
  108. super(petrol, max_petrol);
  109. this.load = load;
  110. this.max_load = max_load;
  111. };
  112.  
  113. public double getCurrentLoad(){
  114. return load;
  115. }
  116.  
  117. public double getMaxLoad(){
  118. return max_load;
  119. }
  120.  
  121. public void arrive(){
  122. super.arrive();
  123. super.goods_on_base = goods_on_base + load;
  124. load = 0;
  125. }
  126.  
  127. public boolean leave(){
  128. if(super.leave() == true){
  129. if(super.goods_on_base - (max_load - load) < 0){
  130. load = super.goods_on_base;
  131. return true;
  132. }else{
  133. super.goods_on_base = super.goods_on_base - (max_load - load);
  134. load = max_load;
  135. return true;
  136. }
  137. }else{
  138. return false;
  139. }
  140. }
  141. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement