Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.util.Scanner;
- import java.util.Arrays;
- public class Question3
- {
- private static String[][] grid = new String[3][3];
- public static void main(String[] args)
- {
- Scanner sourceValues = new Scanner(System.in);
- String A1, B1, C1, A2, B2, C2, A3, B3, C3;
- A1 = sourceValues.next();
- B1 = sourceValues.next();
- C1 = sourceValues.next();
- A2 = sourceValues.next();
- B2 = sourceValues.next();
- C2 = sourceValues.next();
- A3 = sourceValues.next();
- B3 = sourceValues.next();
- C3 = sourceValues.next();
- grid[0] = new String[]{A1, B1, C1};
- grid[1] = new String[]{A2, B2, C2};
- grid[2] = new String[]{A3, B3, C3};
- for (int i=0; i<3; i++)
- {
- for (int j=0; j<3; j++)
- {
- if (grid[i][j].startsWith("="))
- {
- grid[i][j] = evaluate(grid[i][j]);
- }
- }
- }
- for (int i=0; i<3; i++)
- {
- for (int j=0; j<3; j++)
- {
- System.out.print(grid[i][j] + " ");
- }
- System.out.println();
- }
- }
- public static String evaluate(String value)
- {
- int total;
- if (value.length() > 3)
- {
- total = returnGridValue(value.substring(0,3));
- }
- else
- {
- total = returnGridValue(value.substring(0));
- }
- for (int t=3; t < value.length(); t += 3)
- {
- if (Character.toString(value.charAt(3)).equals("+"))
- total += returnGridValue(value.substring(t+1,t+3));
- else
- total -= returnGridValue(value.substring(t+1));
- }
- return String.valueOf(total);
- }
- public static int returnGridValue(String coords)
- {
- if (coords.startsWith("=")){
- coords = coords.substring(1);}
- String valueAtCoords;
- switch (coords) {
- case "A1":
- valueAtCoords = grid[0][0];
- break;
- case "B1":
- valueAtCoords = grid[0][1];
- break;
- case "C1":
- valueAtCoords = grid[0][2];
- break;
- case "A2":
- valueAtCoords = grid[1][0];
- break;
- case "B2":
- valueAtCoords = grid[1][1];
- break;
- case "C2":
- valueAtCoords = grid[1][2];
- break;
- case "A3":
- valueAtCoords = grid[2][0];
- break;
- case "B3":
- valueAtCoords = grid[2][1];
- break;
- default:
- valueAtCoords = grid[2][2];
- break;
- }
- int intValueAtCoords = Integer.parseInt(valueAtCoords);
- return intValueAtCoords;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement