#include <stdio.h>
#define BASE 2

int gcd(int x, int y)
{
	return y!=0 ? gcd(y, x%y) : x;
}

int main(void) {
	int num=24, den=100, antiper, periodo;

//	scanf("%i%i", &num, &den);
	int mcd=gcd(num, den);
	num/=mcd;
	den/=mcd;
	printf("conversione in binario di %i/%i\n", num, den);

	for(antiper=0; den%BASE==0; antiper++)
		den/=BASE;
	if(den==1)
		printf("numero binario limitato, %i cifre decimali\n", antiper);
	else
	{
		int r;
		for (r=1, periodo=0; r>1 || periodo==0; )
		{
			printf("%u\t", r);
			r = (r*BASE) % den;
			periodo++;
//			printf("%u\t", r);
		}
//		periodo = den==1 ? 0 : periodo;
		printf("\n");
		if(antiper==0)
			printf("numero binario illimitato periodico, %i cifre periodo\n", periodo);
		else
			printf("numero binario illimitato periodico misto, %i cifre antiper, %i cifre periodo\n", antiper, periodo);
	}

	return 0;
}
