# C Program to Find All Factors of a Number using For Loop

• Write a C program to print all factors of a number.

#### Required Knowledge

A number N is a factor of number M, if and only if N divides M completely leaving no remainder(M % N = 0). For example, 4 is a factor of 40 because 4 divides 40 without leaving any remainder.
40 / 4 = 10. and 40 % 4 = 0;
Here is the list of all factors of 40 : 1 2 4 5 8 10 20 40

Algorithm to find all factors of a number N
Check with every number from 1 to N, whether it divides N completely or not.
Let, i be any number between 1 to N
• If(N % i == 0), then i is a factor of N
• If(N % i != 0), then i is not a factor of N

## C program to find all factors of a number using for loop

```#include <stdio.h>

int main() {
int counter, N;
/*
* Take a number as input from user
*/
printf("Enter a Number\n");
scanf("%d", &N);

printf("Factors of %d\n", N);

/*Check for every number between 1 to N,
whether it divides N */
for(counter = 1; counter <= N; counter++) {
if(N%counter == 0) {
printf("%d ", counter);
}
}

return 0;
}
```

Output
```Enter a Number
40
Factors of 40
1 2 4 5 8 10 20 40
```
```Enter a Number
37
Factors of 37
1 37
```
Write a C program to find product of digits of a number using while loop.
Wap in C to multiply the digits of a number.

#### Required Knowledge

To multiply digits of a number we have to remove one digit at a time, we can use '/' division and '%' modulus operator. Number%10 will give the least significant digit of the number, we will use it to get one digit of number at a time. To remove last least significant digit from number we will divide number by 10.

Product of digits of 2534 = 2 x 5 x 3 x 4 = 120

Algorithm to find product of digits of a number
• Get least significant digit of number (number%10) and multiply it to the product variable.
• Remove least significant digit form number (number = number/10).
• Repeat above two steps, till number is not equal to zero.

## C program to find sum of all even numbers between 1 to N using for loop

```#include <stdio.h>
#include <conio.h>

int main() {
int num, temp;
long productOfDigit = 1;

/*
* Take a number as input from user
*/
printf("Enter a Number\n");
scanf("%d", &num);
temp = num;

while(num != 0){
/* get the least significant digit(last digit)
of number and multiply it to productofDigit */
productOfDigit *= num % 10;
/* remove least significant digit(last digit)
form number */
num = num/10;
}

printf("Product of digits of %d = %ld", temp, productOfDigit);

getch();
return 0;
}
```

Output
```Enter a Number
2436
Product of digits of 2436 = 144
```
```Enter a Number
2222
Product of digits of 2436 = 16
```

Related Topics
 C program to print all prime factors of a number C program to print all prime numbers between 1 to N using for loop C program to find sum of prime numbers between 1 to N C program to check whether a number is prime or not C program to check whether a number is magic number C program to check whether a number is perfect number C program to find all roots of quadratic equation C program to check armstrong number C program to find hcf and lcm of two numbers List of all C programs