私はクレジットカード検証プログラムを書いています。積が 1 桁を超える長さ (つまり、10) であるかどうかを確認しようとしています。2 つの整数を加算する必要がある場合。たとえば、10 は1 + 0
となり、これは 1 に等しくなります。これを行うにはどうすればよいですか?
これは私がこれまでに持っているものです:
public class CreditCard{
public static void main(String args[]){
//Take in a 16 digit credit card number
Scanner in=new Scanner (System.in);
int num[]=new int[16];
int i=0;
for (i=0;i<num.length;i++) {
System.out.println("Please enter a 16 digit credit card number");
num[i]=in.nextInt();
}
if (num.length < 16 || num.length > 16)
{
System.out.println("Invalid");
}
else
{
//multiply every other number by 2, starting with place 16, and find the sum(sum1)
int num1 = (num[16] * 2);
int num2 = (num[14] * 2);
int num3 = (num[12] * 2);
int num4 = (num[10] * 2);
int num5 = (num[8] * 2);
int num6 = (num[6] * 2);
int num7 = (num[4] * 2);
int num8 = (num[2] * 2);
if( num1 > 9)
int sum1 = (num[16] * 2) + (num[14] * 2) + (num[12] * 2) + (num[10] * 2) + (num[8] * 2) + (num[6] * 2) + (num[4] *2) + (num[2] *2);
int sum2 = (num[15] + num[13] + num[11] + num[9] + num[7] + num[5] + num[3] + num[1]);
int totalSum = sum1 + sum2;
if (totalSum % 10 != 0)
{
System.out.println("Invalid card number!!");
}
else
{
System.out.println(" Valid Credit Card Number!!");
}
}
}
}