DEV Community

Cover image for # πŸš€ Day 25 of My Automation Journey – Deep Dive into Logic (Part 2)
bala d kaveri
bala d kaveri

Posted on

# πŸš€ Day 25 of My Automation Journey – Deep Dive into Logic (Part 2)

Continuing from earlier, here are the remaining core number programs with full step-by-step explanations to strengthen logic building πŸ‘‡


πŸ”Ή 6. Divisors of a Number – Correct Logic

πŸ’» Program:

int user = 15;

for(int i = 1; i <= user; i++) {
    if(user % i == 0)
        System.out.println(i);
}
Enter fullscreen mode Exit fullscreen mode

🧠 Logic Explained:

  • user % i == 0 means:
    πŸ‘‰ β€œCan i divide user without remainder?”

  • Loop runs from 1 β†’ 15


πŸ” Step-by-Step Trace:

i 15 % i Result
1 0 βœ… Print
2 1 ❌
3 0 βœ…
4 3 ❌
5 0 βœ…
15 0 βœ…

πŸ“€ Output:

1 3 5 15
Enter fullscreen mode Exit fullscreen mode

πŸ’‘ Key Insight:

πŸ‘‰ Divisors are numbers that perfectly divide the given number


πŸ”Ή 7. Count of Divisors

πŸ’» Program:

int user = 15;
int count = 0;

for(int i = 1; i <= user; i++) {
    if(user % i == 0)
        count++;
}

System.out.println(count);
Enter fullscreen mode Exit fullscreen mode

🧠 Logic Explained:

  • Same logic as divisors
  • Instead of printing β†’ we count

πŸ” Example:

Divisors of 15 β†’ 1, 3, 5, 15

πŸ‘‰ Count = 4


πŸ“€ Output:

4
Enter fullscreen mode Exit fullscreen mode

πŸ’‘ Key Insight:

πŸ‘‰ Reuse logic + add counter β†’ powerful pattern


πŸ”Ή 8. Count of Digits

πŸ’» Program:

int user = 12345;
int count = 0;

while(user > 0) {
    user = user / 10;
    count++;
}

System.out.println(count);
Enter fullscreen mode Exit fullscreen mode

🧠 Logic Explained:

  • Each division by 10 removes one digit

πŸ” Step-by-Step:

Step user count
1 12345 β†’ 1234 1
2 1234 β†’ 123 2
3 123 β†’ 12 3
4 12 β†’ 1 4
5 1 β†’ 0 5

πŸ“€ Output:

5
Enter fullscreen mode Exit fullscreen mode

πŸ’‘ Key Insight:

πŸ‘‰ Number of times you divide = number of digits


πŸ”Ή 9. Sum of Digits

πŸ’» Program:

int user = 123;
int sum = 0;

while(user > 0) {
    int digit = user % 10;
    sum = sum + digit;
    user = user / 10;
}

System.out.println(sum);
Enter fullscreen mode Exit fullscreen mode

🧠 Logic Explained:

We do 3 operations:

  1. Extract last digit β†’ % 10
  2. Add to sum
  3. Remove digit β†’ / 10

πŸ” Step-by-Step:

Step digit sum user
1 3 3 12
2 2 5 1
3 1 6 0

πŸ“€ Output:

6
Enter fullscreen mode Exit fullscreen mode

πŸ’‘ Key Insight:

πŸ‘‰ % 10 and / 10 are the backbone of number problems


πŸ”Ή 10. Palindrome Number

πŸ’» Program:

int user = 121;
int original = user;
int reverse = 0;

while(user > 0) {
    int digit = user % 10;
    reverse = reverse * 10 + digit;
    user = user / 10;
}

if(original == reverse)
    System.out.println("Palindrome");
else
    System.out.println("Not Palindrome");
Enter fullscreen mode Exit fullscreen mode

🧠 Logic Explained:

πŸ‘‰ A palindrome reads the same forward and backward


πŸ” Step-by-Step:

Step digit reverse user
1 1 1 12
2 2 12 1
3 1 121 0

πŸ“€ Output:

Palindrome
Enter fullscreen mode Exit fullscreen mode

❌ Non-Palindrome Example:

123 β†’ reverse = 321 β†’ Not equal
Enter fullscreen mode Exit fullscreen mode

πŸ’‘ Key Formula:

reverse = reverse * 10 + digit
Enter fullscreen mode Exit fullscreen mode

πŸ”š Final Takeaways

βœ” Divisors β†’ user % i == 0
βœ” Count β†’ reuse + increment
βœ” Digits β†’ / 10 removes digits
βœ” Sum β†’ % 10 extracts digits
βœ” Palindrome β†’ reverse + compare


πŸ’‘ Golden Rule

πŸ‘‰ Almost ALL number-based problems depend on:

% 10  β†’ Extract last digit
/ 10  β†’ Remove last digit
Enter fullscreen mode Exit fullscreen mode

Master this β†’ you unlock most logic problems πŸš€


πŸ”₯ Consistency + tracing logic = strong programming foundation!

Top comments (0)