Advertisement
Dimitar_Ivanov_16408

Zadacha5_1

May 5th, 2019
130
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.23 KB | None | 0 0
  1. import java.util.Scanner;
  2.  
  3. public class Zadacha5_1 {
  4.  
  5. public static void main(String[] args) {
  6. Scanner sc = new Scanner(System.in);
  7. String input = sc.nextLine();
  8. String[] stringArray = input.split(" ");
  9. int size1 = Integer.parseInt(stringArray[0]);
  10. int size2 = Integer.parseInt(stringArray[1]);
  11. int[][] array = new int[size1][size2];
  12. for (int i = 0; i < size1; i++) {
  13. for (int j = 0; j < size2; j++) {
  14. array[i][j] = 100;// populates with 100
  15. System.out.print(array[i][j] + " ");
  16. }
  17. System.out.println();
  18. }
  19. while (true) {
  20.  
  21. String coordinatesImput = sc.nextLine();
  22. if (coordinatesImput.equalsIgnoreCase("GAME OVER")) {
  23. break;
  24. }
  25. String[] coordinateArray = coordinatesImput.split(" ");
  26. int a = Integer.parseInt(coordinateArray[0]);
  27. int b = Integer.parseInt(coordinateArray[1]);// a and b are coordinates
  28. int dmg=0;
  29. if(coordinateArray.length >=3) {
  30. dmg = Integer.parseInt(coordinateArray[2]);
  31. }
  32. for (int i = 0; i < 3; i++) {
  33. int firstNum = (a - 1) + i;
  34. for (int j = 0; j < 3; j++) {
  35. int secondNum = (b - 1) + j;
  36.  
  37. if (dmg >= 1 && dmg < 30) {
  38. if (firstNum >= 0 && secondNum >= 0 && firstNum < size1 && secondNum < size2) {
  39. if (firstNum == a && secondNum == b) {
  40. array[firstNum][secondNum] = array[firstNum][secondNum] - dmg;
  41. if ((array[firstNum][secondNum]) - dmg < 0) {
  42. array[firstNum][secondNum] = 0;
  43. }
  44. } else if ((array[firstNum][secondNum]) - 5 >= 0) {
  45. array[firstNum][secondNum] = array[firstNum][secondNum] - 5;
  46. } else if ((array[firstNum][secondNum]) - 5 < 0) {
  47. array[firstNum][secondNum] = 0;
  48.  
  49. }
  50. }
  51. } else if (dmg >= 30 && dmg < 70) {
  52. if (firstNum >= 0 && secondNum >= 0 && firstNum < size1 && secondNum < size2) {
  53. if (firstNum == a && secondNum == b) {
  54. array[firstNum][secondNum] = array[firstNum][secondNum] - dmg;
  55. if ((array[firstNum][secondNum]) - dmg < 0) {
  56. array[firstNum][secondNum] = 0;
  57. }
  58. } else if ((array[firstNum][secondNum]) - 10 >= 0) {
  59. array[firstNum][secondNum] = array[firstNum][secondNum] - 10;
  60. } else if ((array[firstNum][secondNum]) - 10 < 0) {
  61. array[firstNum][secondNum] = 0;
  62.  
  63. }
  64. }
  65. } else if (dmg >= 70) {
  66. if (firstNum >= 0 && secondNum >= 0 && firstNum < size1 && secondNum < size2) {
  67. if (firstNum == a && secondNum == b) {
  68. array[firstNum][secondNum] = array[firstNum][secondNum] - dmg;
  69. if ((array[firstNum][secondNum]) - dmg < 0) {
  70. array[firstNum][secondNum] = 0;
  71. }
  72. } else if ((array[firstNum][secondNum]) - Math.round(0.2 * dmg) >= 0) {
  73. array[firstNum][secondNum] = (int) (array[firstNum][secondNum]
  74. - Math.round(0.2 * dmg));
  75. } else if ((array[firstNum][secondNum]) - 0.2 * dmg < 0) {
  76. array[firstNum][secondNum] = 0;
  77.  
  78. }
  79. }
  80. }
  81. }
  82. }
  83.  
  84. System.out.println();
  85. for (int g = 0; g < size1; g++) {
  86. for (int k = 0; k < size2; k++) {
  87. System.out.print(array[g][k] + " ");// prints the array after every round
  88. }
  89. System.out.println();
  90. }
  91. }
  92.  
  93. }
  94. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement