I'm currently three lectures into cs50 as a completely new programmer and I am enjoying it tremendously!
I've enjoyed struggling on mario(less/more comfortable) and cash but right now I'm at a complete loss with credit pset1. My code is hitting a brick wall at the end and I'm not sure how to continue.
The problem im facing is that after printing out the second from last digits in a given input, I'm not sure how to "save" these digits so that I can multiply them by two and add them together to validate the credit card number...
Would appreciate any form of input!
#import <cs50.h>
#import <stdio.h>
int main(void)
{
long long x;
// Prompts for positive integer from user
do
{
x = get_long_long("Number: ");
}
while (x < 0);
// Create new integer variable (y) to represent number of digits(initializes at zero)
int y = 0;
// Create new variables for use later on...
// long long (h) will be used to store input value of x since value of x will be manipulated to find digits later...
// long long (z) will be used as a temp placeholder for future variable t,
// long long (t) will be used in conjunction with mod 10 in a simple formula to find the second last digit...
long long h;
h = x;
long long z = h / 10;
long long t;
// Find number of digits in user's value by creating while loop(digit count+1 after every division by 10)
while (x > 0)
{
x /= 10;
y ++;
}
printf("Amount of digits: %d\n", y);
// Run validity check based on amount of digits
if ((y != 13) && (y != 15) && (y != 16))
{
printf("INVALID\n");
}
// Create for loop to print every second digit starting from the last
for (int p = 1; p < y; p++)
{
t = z % 10;
printf("%lld\n", t);
z /= 100;
}
}