/**
* Generate Valid CC numbers.
*
* @author (CIS260)
* @version (2010.11.02)
*/
import java.util.Scanner;
public class GenCC
{
public static void main(String args[])
{
CCvalidate cis260val = new CCvalidate();
Scanner input = new Scanner(System.in);
System.out.print("Generate CC Numbers\n\n");
long userprefix;
do {
System.out.print("Enter Prefix: ");
userprefix = input.nextLong();
}while ( !CCvalidate.prefixMatched(userprefix,0) );
System.out.print("Length of CC number: ");
int numdigits = input.nextInt();
System.out.print("How Many CC Numbers to generate: ");
int num2gen = input.nextInt();
// Generate starting number
long startnum;
int shiftdigits = numdigits - CCvalidate.getSize( userprefix );
long multiplier = 1;
for (; shiftdigits > 0; shiftdigits--)
multiplier *= 10;
startnum = userprefix * multiplier;
startnum += ( multiplier * Math.random() );
long usernumber = startnum;
while(num2gen>0)
{
if (CCvalidate.isValid(usernumber) )
{
System.out.println( usernumber );
num2gen--;
}
// else
// System.out.println( usernumber + " is NO good");
usernumber++; // brute force, Try Em All!
}
}
}