Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- void factorize(int number);
- int get_prime_divider(int number, int from_prime);
- int main() {
- int number;
- scanf("%d", &number);
- if (number <= 1) {
- printf("Error: Number must be greather than 1");
- return -1;
- }
- factorize(number);
- return 0;
- }
- void factorize(int number) {
- int prime = 2;
- while (number > 1) {
- prime = get_prime_divider(number, prime);
- number = number / prime;
- printf("%d \r\n", prime);
- }
- }
- int get_prime_divider(int number, int from_prime) {
- if (from_prime == 2)
- if ((number & 1) == 0)return 2;
- else from_prime++;
- for (int i = from_prime; i * i <= number; i += 2)
- if (number % i == 0) return i;
- return number;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement