Advertisement
Guest User

Programming Merit Badge 5b - Java - (C) 2017 Wilson Gramer

a guest
Feb 24th, 2017
68
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 3.18 KB | None | 0 0
  1. /*
  2.  * Main.java
  3.  * Programming Merit Badge - 5b
  4.  *
  5.  * Copyright (C) 2017 Wilson Gramer.
  6.  * All rights reserved.
  7.  */
  8. package co.neef.java.bsa.prgmb.five.b;
  9.  
  10. import static java.lang.System.exit;
  11.  
  12. public class Main {
  13.  
  14.     /**
  15.      * Usage: 'java Main [first number] [operator] [second number] Operators
  16.      * include '+', '-', 'x', and '/'; for ADDITION, SUBTRACTION,
  17.      * MULTIPLICATION, and DIVISION.
  18.      *
  19.      * @param args
  20.      */
  21.     public static void main(String[] args) {
  22.         try { //ADDDED AFTER DEBUG
  23.             switch (args[1]) {
  24.                 case "+":
  25.                     System.out.println(args[0] + " " + args[1] + " " + args[2] + " = " + add(args[0], args[2]));
  26.                     break;
  27.                 case "-":
  28.                     System.out.println(args[0] + " " + args[1] + " " + args[2] + " = " + sub(args[0], args[2]));
  29.                     break;
  30.                 case "x":
  31.                     System.out.println(args[0] + " " + args[1] + " " + args[2] + " = " + mul(args[0], args[2]));
  32.                     break;
  33.                 case "/":
  34.                     System.out.println(args[0] + " " + args[1] + " " + args[2] + " = " + div(args[0], args[2]));
  35.                     break;
  36.                 default:
  37.                     System.err.println("Usage: 'java Main [first number] [operator] [second number]");
  38.                     System.err.println("Operators include '+', '-', 'x', and '/'; for ADDITION, SUBTRACTION, MULTIPLICATION, and DIVISION.");
  39.             }
  40.         } catch (java.lang.IndexOutOfBoundsException err) { //ADDDED AFTER DEBUG
  41.             System.err.println("Please provide all arguments."); //ADDDED AFTER DEBUG
  42.             System.err.println(); //ADDDED AFTER DEBUG
  43.             System.err.println("Usage: 'java Main [first number] [operator] [second number]"); //ADDDED AFTER DEBUG
  44.             System.err.println("Operators include '+', '-', '*', and '/'; for ADDITION, SUBTRACTION, MULTIPLICATION, and DIVISION."); //ADDDED AFTER DEBUG
  45.             System.err.println(); //ADDDED AFTER DEBUG
  46.             exit(0); //ADDDED AFTER DEBUG
  47.         } //ADDDED AFTER DEBUG
  48.     }
  49.  
  50.     private static String add(String n1, String n2) {
  51.         String answer = "ERROR";
  52.        
  53.         answer = n1 + n2;
  54.        
  55.         return answer;
  56.     }
  57.    
  58.     private static String sub(String n1, String n2) {
  59.         String answer = "ERROR";
  60.        
  61.         answer = n1.replace(n2, "");
  62.        
  63.         return answer;
  64.     }
  65.    
  66.     private static String mul(String n1, String n2) {
  67.         String answer = "ERROR";
  68.        
  69.         Integer j = Integer.parseInt(n2) / 2;
  70.        
  71.         for (int i = 0; i < j; i++) n1 = n1 + n1;
  72.         answer = n1;
  73.        
  74.         return answer;
  75.     }
  76.  
  77.     private static String div(String n1, String n2) {
  78.         String answer = "ERROR";
  79.        
  80.         String[] answerArr = n1.split("(?<=\\G.{" + Integer.parseInt(n2) + "})");
  81.        
  82.         StringBuilder strBuilder = new StringBuilder();
  83.         for (int i = 0; i < answerArr.length; i++) {
  84.             strBuilder.append(answerArr[i] + " ");
  85.         }
  86.         answer = strBuilder.toString();
  87.        
  88.         return answer;
  89.     }
  90. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement