fork download
  1. public class Main
  2. {
  3. public static void main (String[] args) {
  4. System.out.println("Система расчёта штрафов");
  5.  
  6. check(-20, 0);
  7. check(0, 0);
  8. check(25, 0);
  9. check(50, 0);
  10. check(51, 15);
  11. check(55, 15);
  12. check(60, 15);
  13. check(61, 25);
  14. check(63, 25);
  15. check(65, 25);
  16. check(66, 35);
  17. check(68, 35);
  18. check(70, 35);
  19. check(71, 80);
  20. check(73, 80);
  21. check(75, 80);
  22. check(76, 100);
  23. check(78, 100);
  24. check(80, 100);
  25. check(81, 160);
  26. check(85, 160);
  27. check(90, 160);
  28. check(91, 200);
  29. check(95, 200);
  30. check(100, 200);
  31. check(101, 280);
  32. check(110, 280);
  33. check(111, 480);
  34. check(115, 480);
  35. check(120, 480);
  36. check(121, 680);
  37. check(135, 680);
  38. check(200, 680);
  39. }
  40.  
  41. public static void check(int carSpeed, int fine)
  42. {
  43. if(calculateFine(carSpeed) != fine) {
  44. System.out.println("Неверный штраф " + fine + " для скорости " + carSpeed);
  45. }
  46. else {
  47. System.out.println("Штраф " + fine + " для скорости " + carSpeed + " рассчитан верно");
  48. }
  49. }
  50.  
  51. public static int calculateFine(int carSpeed) {
  52. int fineFor1to10 = 15;
  53. int fineFor11to15 = 25;
  54. int fineFor16to20 = 35;
  55. int fineFor21to25 = 80;
  56. int fineFor26to30 = 100;
  57. int fineFor31to40 = 160;
  58. int fineFor41to50 = 200;
  59. int fineFor51to60 = 280;
  60. int fineFor61to70 = 480;
  61. int fineForMoreThan70 = 680;
  62.  
  63. int townSpeed = 50;
  64.  
  65. int overSpeed = carSpeed - townSpeed;
  66.  
  67. if(overSpeed <= 0) {
  68. return 0;
  69. }
  70. else if(overSpeed >= 1 && overSpeed <= 10) {
  71. return fineFor1to10;
  72. }
  73. else if(overSpeed >= 11 && overSpeed <= 15) {
  74. return fineFor11to15;
  75. }
  76. else if(overSpeed >= 16 && overSpeed <= 20) {
  77. return fineFor16to20;
  78. }
  79. else if(overSpeed >= 21 && overSpeed <= 25) {
  80. return fineFor21to25;
  81. }
  82. else if(overSpeed >= 26 && overSpeed <= 30) {
  83. return fineFor26to30;
  84. }
  85. else if(overSpeed >= 31 && overSpeed <= 40) {
  86. return fineFor31to40;
  87. }
  88. else if(overSpeed >= 41 && overSpeed <= 50) {
  89. return fineFor41to50;
  90. }
  91. else if(overSpeed >= 51 && overSpeed <= 60) {
  92. return fineFor51to60;
  93. }
  94. else if(overSpeed >= 61 && overSpeed <= 70) {
  95. return fineFor61to70;
  96. }
  97. return fineForMoreThan70;
  98. }
  99. }
  100.  
Success #stdin #stdout 0.21s 47420KB
stdin
Standard input is empty
stdout
Система расчёта штрафов
Штраф 0 для скорости -20 рассчитан верно
Штраф 0 для скорости 0 рассчитан верно
Штраф 0 для скорости 25 рассчитан верно
Штраф 0 для скорости 50 рассчитан верно
Штраф 15 для скорости 51 рассчитан верно
Штраф 15 для скорости 55 рассчитан верно
Штраф 15 для скорости 60 рассчитан верно
Штраф 25 для скорости 61 рассчитан верно
Штраф 25 для скорости 63 рассчитан верно
Штраф 25 для скорости 65 рассчитан верно
Штраф 35 для скорости 66 рассчитан верно
Штраф 35 для скорости 68 рассчитан верно
Штраф 35 для скорости 70 рассчитан верно
Штраф 80 для скорости 71 рассчитан верно
Штраф 80 для скорости 73 рассчитан верно
Штраф 80 для скорости 75 рассчитан верно
Штраф 100 для скорости 76 рассчитан верно
Штраф 100 для скорости 78 рассчитан верно
Штраф 100 для скорости 80 рассчитан верно
Штраф 160 для скорости 81 рассчитан верно
Штраф 160 для скорости 85 рассчитан верно
Штраф 160 для скорости 90 рассчитан верно
Штраф 200 для скорости 91 рассчитан верно
Штраф 200 для скорости 95 рассчитан верно
Штраф 200 для скорости 100 рассчитан верно
Штраф 280 для скорости 101 рассчитан верно
Штраф 280 для скорости 110 рассчитан верно
Штраф 480 для скорости 111 рассчитан верно
Штраф 480 для скорости 115 рассчитан верно
Штраф 480 для скорости 120 рассчитан верно
Штраф 680 для скорости 121 рассчитан верно
Штраф 680 для скорости 135 рассчитан верно
Штраф 680 для скорости 200 рассчитан верно