View Code of Problem 91

#include <stdio.h>
#include <math.h>
void main() 
{
	int n;
	scanf("%d", &n);
	int m = n;
	int a[100], k = 0;
	int flag = 1;
	for (int i = 2; i <= sqrt(n); i++)
	{
		if (n % i == 0)
		{
			flag = 0;
			break;
		}
	}
	if (!flag)
	{
		while (n != 1)
		{
			for (int i = 2; i <= n; i++)
			{
				if (n % i == 0)
				{
					a[k++] = i;
					n /= i;
					break;
				}
			}
			
		}
		printf("%d=", m);
		for (int i = 0; i < k-1; i++)
		{
			printf("%d*", a[i]);
		}
		printf("%d", a[k - 1]);
	}
	else
	{
		printf("%d=1*%d", m, m);
	}
}

Double click to view unformatted code.


Back to problem 91