diff options
| author | mo <mo.khan@gmail.com> | 2019-06-04 20:19:38 -0600 |
|---|---|---|
| committer | mo <mo.khan@gmail.com> | 2019-06-04 20:19:38 -0600 |
| commit | 0f3a597eead0e8ddbe693c021ee63adda56ab88c (patch) | |
| tree | 0bc24e09abb6decd9573c583543a96dcc995caa0 | |
| parent | fc5df8dafe0c0cdeeded97e06d0a6bb06a6a656e (diff) | |
accept command line argument to run specific exercise
| -rw-r--r-- | Rakefile | 19 | ||||
| -rw-r--r-- | src/App.java | 13 | ||||
| -rw-r--r-- | src/Q2/RockPaperScissorsLizardSpock.java | 11 |
3 files changed, 27 insertions, 16 deletions
@@ -10,6 +10,10 @@ Rake::PackageTask.new("comp-268-2", DateTime.now.strftime("%y%m").to_i) do |pack ]) end +def run_cli(selection = nil) + sh "java -cp target/assignment2*.jar ca.mokhan.comp268.App #{selection}" +end + task(:pdf) do Dir["src/**/*.md"].each do |file| sh "node ./node_modules/.bin/mdpdf #{file}" @@ -21,16 +25,9 @@ task(:clean) { sh 'rm -fr pkg target' } task(:test) { sh 'mvn test' } task(doc: [:pdf]) { sh 'mvn javadoc:javadoc' } task publish: [:clean, :test, :doc, :repackage] -task :run do - sh "mvn package" - sh "java -cp target/assignment2*.jar ca.mokhan.comp268.App" -end - -task :run1 do - Dir.chdir 'src/Q1' do - sh 'javac ReversedSentence.java' - sh 'java ReversedSentence' - end -end +task(:build) { sh "mvn package" } +task(run: :build) { run_cli } +task(run1: :build) { run_cli(1) } +task(:run2) { run_cli(2) } task default: [:publish] diff --git a/src/App.java b/src/App.java index 16c2a41..6170187 100644 --- a/src/App.java +++ b/src/App.java @@ -6,17 +6,26 @@ import java.util.Scanner; public class App { public static void main(String[] args) { Scanner in = new Scanner(System.in); + Integer selection = args.length > 0 ? Integer.parseInt(args[0]) : null; + while (true) { - System.out.println("Choose exercise: (1-10)"); - switch (in.nextInt()) { + if (selection == null) { + System.out.println("Choose exercise: (1-10)"); + selection = in.nextInt(); + } + switch (selection) { case 1: Q1.ReversedSentence.main(args); break; + case 2: + Q2.RockPaperScissorsLizardSpock.main(args); + break; default: System.out.println("Bye"); System.exit(0); break; } + selection = null; } } } diff --git a/src/Q2/RockPaperScissorsLizardSpock.java b/src/Q2/RockPaperScissorsLizardSpock.java index 19f2d4f..2fbfcfa 100644 --- a/src/Q2/RockPaperScissorsLizardSpock.java +++ b/src/Q2/RockPaperScissorsLizardSpock.java @@ -15,18 +15,21 @@ public class RockPaperScissorsLizardSpock { public static final int SPOCK = 5; public int getConsecutiveWins() { - return 0; + return this.consecutiveWins; } public int getLastWinner() { - return 0; + return this.lastWinner; } public int random() { return new Random().nextInt(4) + 1; } - public void play(int player1, int player2) {} + public void play(int player1, int player2) { + int player1Roll = random(); + int player2Roll = random(); + } public static String convert(int i) { return ""; @@ -35,5 +38,7 @@ public class RockPaperScissorsLizardSpock { public static void main(String[] args) { Scanner in = new Scanner(System.in); System.out.println("Hi"); + RockPaperScissorsLizardSpock game = new RockPaperScissorsLizardSpock(); + game.play(RockPaperScissorsLizardSpock.PLAYER1, RockPaperScissorsLizardSpock.PLAYER2); } } |
