﻿ C exercises: Find the smallest positive number that is evenly divisible by all of the numbers from 1 to 20 - w3resource

# C Exercises: Find the largest palindrome made from the product of two 3-digit numbers

## C Programming Practice: Exercise-21 with Solution

2520 is the smallest number that can be divided by each of the numbers from 1 to 10 without any remainder.
Write a C programming to find the smallest positive number that is evenly divisible by all of the numbers from 1 to 20?.

C Code:

``````/* Copyright (c) 2009, eagletmt, Released under the MIT License <http://opensource.org/licenses/mit-license.php> */
#include <stdio.h>
static unsigned long gcd(unsigned long a, unsigned long b);
static __inline unsigned long lcm(unsigned long a, unsigned long b);
int main(void)
{
unsigned long ans = 1;
unsigned long i;
for (i = 1; i <= 20; i++) {
ans = lcm(ans, i);
}
printf("%lu\n", ans);
return 0;
}
unsigned long gcd(unsigned long a, unsigned long b)
{
unsigned long r;
if (a > b) {
unsigned long t = a;
a = b;
b = t;
}
while (r = a%b) {
a = b;
b = r;
}
return b;
}
unsigned long lcm(unsigned long a, unsigned long b)
{
unsigned long long p = (unsigned long long)a * b;
return p/gcd(a, b);
}
``````

Sample Output:

```232792560
```

Flowchart:

## C Programming Code Editor:

What is the difficulty level of this exercise?

﻿

## C Programming: Tips of the Day

The tilde operator in C:

The ~ operator is bitwise NOT, it inverts the bits in a binary number:

```NOT 011100
= 100011
```

Ref : https://bit.ly/3DR1N24