Question: [Java] Can someone help me with this program. I believe i need a main class in order for this program below to work. I'm trying
[Java] Can someone help me with this program.
I believe i need a main class in order for this program below to work.
I'm trying to validate a credit card number...the error I get running this is "Static Error: This class does not have a static void main method accepting String[]."
public class CreditCard {
private long cardNumber;
private int finalSum;
public CreditCard()
{
cardNumber = 0;
}
public CreditCard(long num)
{
cardNumber = num;
}
public void setCardNumber(long num)
{
cardNumber = num;
}
public long getCardNumber()
{
return cardNumber;
}
public boolean validateNumber()
{
finalSum = 0;
long n = cardNumber;
int sum1 = 0, sum2 = 0;
int rem;
for(int i = 0; i < 8; i++)
{
rem =(int) (n % 10);
if(i % 2 == 0)
sum1 += rem;
else
sum2 += sumDigits(rem * 2);
n = n / 10;
}
finalSum = sum1 + sum2;
if(finalSum % 10 == 0)
return true;
else
return false;
}
private int sumDigits(int n)
{
int sum = 0;
while( n != 0)
{
sum += n % 10;
n = n /10;
}
return sum;
}
public void display()
{
if(validateNumber())
System.out.println("The credit card number is valid");
else
{
int lastDigit =(int)( (cardNumber - finalSum + 10) % 10);
System.out.println("The credit card number is not valid");
System.out.println("The last digit should be " + lastDigit);
}
}
}
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
