#include <stdio.h>
int main(void){
int i;
int num;
printf("Enter the number ");
scanf("%d",&num);
for ( i=1;i<num;i++){
if(num % i ==0){
printf("%d,",i);
}
}
return 0;
}
Output is here if you enter 12 as input
1,2,3,4,6,
There are some numbers for which only factors are 1 and itself ( same number ) , they are known as prime numbers.
Zero is a special case where all integers can be considered as factors, while negative numbers typically don't have proper factors. Here's how to handle these scenarios:
#include <stdio.h>
int main(void){
int num, i;
printf("Enter a number: ");
scanf("%d", &num);
if (num == 0) {
printf("All integers are factors of 0.\n");
} else if (num < 0) {
printf("Negative numbers don't have proper factors.\n");
} else {
printf("Factors of %d: ", num);
for (i = 1; i <= num; i++) {
if (num % i == 0) {
printf("%d, ", i);
}
}
}
return 0;
}
Output:
Enter a number: -5
Negative numbers don't have proper factors.
Prime numbers have exactly two factors: 1 and the number itself. Here's how to identify if a number is prime:
#include <stdio.h>
int main(void){
int num, i, isPrime = 1;
printf("Enter a number: ");
scanf("%d", &num);
if (num < 2) {
printf("%d is not a prime number.\n", num);
} else {
for (i = 2; i <= num / 2; i++) {
if (num % i == 0) {
isPrime = 0;
break;
}
}
if (isPrime) {
printf("%d is a prime number.\n", num);
} else {
printf("%d is not a prime number.\n", num);
}
}
return 0;
}
Output:
Enter a number: 7
7 is a prime number.
Using a function to find factors improves code readability and structure. Here's an example:
#include <stdio.h>
void print_factors(int num) {
printf("Factors of %d: ", num);
for (int i = 1; i <= num; i++) {
if (num % i == 0) {
printf("%d, ", i);
}
}
printf("\n");
}
int main(void){
int num;
printf("Enter a number: ");
scanf("%d", &num);
print_factors(num);
return 0;
}
Output:
Enter a number: 12
Factors of 12: 1, 2, 3, 4, 6, 12,