I can pretty much select the digits, multiply the digits by 2 & add the particular digits of the multiplied number. But as of now I can only print them not add them. I also have to add this sum to the remaining numbers in the credit card & then check for modulo 10. How should I do this? Should I change my code(it took me a serious effort to get to this point)?
#include <stdio.h>
#include <cs50.h>
int main(void)
{
long long n = get_long("n:"); // gets you CC number
int count = 0;
int z;
int k;
int a;
int b;
int c;
int d;
while(n / 10 >= 1)
{
z = n % 10;
count++;
if(count % 2 == 0) // selects the digit in even places
{
k = 2*z; // multiplies the digit in even places
a = k % 10; // gives 1's place of k
b = k / 10; // gives 10's place of k
c = a + b; // adds the digit
printf("%i\n", c); // this just exists to check whether the above process is happening
}
n = n / 10;
}
if(n / 10 == 0) // This helps to find the rightmost digit
{
z = n % 10;
count = count + 1;
if(count % 2 == 0)
{
k = 2*z;
a = k % 10;
b = k / 10;
c = a + b;
}
}
}