summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Rakefile3
-rw-r--r--src/App.java3
-rw-r--r--src/Q3/CreditCard.java10
3 files changed, 14 insertions, 2 deletions
diff --git a/Rakefile b/Rakefile
index c23654d..93b80c8 100644
--- a/Rakefile
+++ b/Rakefile
@@ -27,7 +27,6 @@ task(doc: [:pdf]) { sh 'mvn javadoc:javadoc' }
task publish: [:clean, :test, :doc, :repackage]
task(:build) { sh "mvn package" }
task(run: :build) { run_cli }
-task(run1: :build) { run_cli(1) }
-task(run2: :build) { run_cli(2) }
+1.upto(3) { |n| task("run#{n}": :build) { run_cli(n) } }
task default: [:publish]
diff --git a/src/App.java b/src/App.java
index 6170187..3469c70 100644
--- a/src/App.java
+++ b/src/App.java
@@ -20,6 +20,9 @@ public class App {
case 2:
Q2.RockPaperScissorsLizardSpock.main(args);
break;
+ case 3:
+ Q3.CreditCard.main(args);
+ break;
default:
System.out.println("Bye");
System.exit(0);
diff --git a/src/Q3/CreditCard.java b/src/Q3/CreditCard.java
index 117a2f5..b922d37 100644
--- a/src/Q3/CreditCard.java
+++ b/src/Q3/CreditCard.java
@@ -113,4 +113,14 @@ public class CreditCard {
private int digitFrom(String input, int index) {
return Character.getNumericValue(input.charAt(index));
}
+
+ public static void main(String[] args) {
+ Scanner in = new Scanner(System.in);
+ System.out.println("Enter credit card #:");
+ CreditCard creditCard = new CreditCard(in.next());
+ if (creditCard.isValid())
+ System.out.println(
+ String.format("%s is offerred by %s", creditCard.getCcNumber(), creditCard.getCompany()));
+ else System.out.println(String.format("%s in invalid", creditCard.getCcNumber()));
+ }
}