/* Programa que digitado numero com quatro digitos escreve */
/* escreve valor por extenso*/




#include <stdio.h>
int n,m,c,d,u;

void digita (void)
{
	printf ("\n\n\n\n");
	printf ("Digite numero que sera escrito por extenso: ");
	scanf ("%d", &n);
}

void divide (void)
{
	u=n%10;
	n=n/10;
	d=n%10;
	n=n/10;
	c=n%10;
	n=n/10;
	m=n%10;
}
void mostra (void)
{

/* comparando milhar */
	switch (m)
	{
		case 1: printf ("Um Mil");
			if (c==0 && d==0 && u!=0)
			{
				printf (" e ");
			}
			if (c==0 && d!=0 && u==0)
			{
				printf (" e ");
			}
			if (c==0 && d!=0 && u!=0)
			{
				printf (" e ");
			}
			if (c!=0 && d==0 && u==0)
			{
				printf (" e ");
			}
			if (c!=0 && d==0 && u!=0)
			{
				printf (", ");
			}
			if (c!=0 && d!=0 && u==0)
			{
				printf (", ");
			}
			if (c!=0 && d!=0 && u!=0)
			{
				printf (", ");
			}
			break;
		case 2: printf ("Dois Mil");
			if (c==0 && d==0 && u!=0)
			{
				printf (" e ");
			}
			if (c==0 && d!=0 && u==0)
			{
				printf (" e ");
			}
			if (c==0 && d!=0 && u!=0)
			{
				printf (" e ");
			}
			if (c!=0 && d==0 && u==0)
			{
				printf (" e ");
			}
			if (c!=0 && d==0 && u!=0)
			{
				printf (", ");
			}
			if (c!=0 && d!=0 && u==0)
			{
				printf (", ");
			}
			if (c!=0 && d!=0 && u!=0)
			{
				printf (", ");
			}
			break;
		case 3: printf ("Tres Mil");
			if (c==0 && d==0 && u!=0)
			{
				printf (" e ");
			}
			if (c==0 && d!=0 && u==0)
			{
				printf (" e ");
			}
			if (c==0 && d!=0 && u!=0)
			{
				printf (" e ");
			}
			if (c!=0 && d==0 && u==0)
			{
				printf (" e ");
			}
			if (c!=0 && d==0 && u!=0)
			{
				printf (", ");
			}
			if (c!=0 && d!=0 && u==0)
			{
				printf (", ");
			}
			if (c!=0 && d!=0 && u!=0)
			{
				printf (", ");
			}
			break;
		case 4: printf ("Quatro Mil");
			if (c==0 && d==0 && u!=0)
			{
				printf (" e ");
			}
			if (c==0 && d!=0 && u==0)
			{
				printf (" e ");
			}
			if (c==0 && d!=0 && u!=0)
			{
				printf (" e ");
			}
			if (c!=0 && d==0 && u==0)
			{
				printf (" e ");
			}
			if (c!=0 && d==0 && u!=0)
			{
				printf (", ");
			}
			if (c!=0 && d!=0 && u==0)
			{
				printf (", ");
			}
			if (c!=0 && d!=0 && u!=0)
			{
				printf (", ");
			}
			break;
		case 5: printf ("Cinco Mil");
			if (c==0 && d==0 && u!=0)
			{
				printf (" e ");
			}
			if (c==0 && d!=0 && u==0)
			{
				printf (" e ");
			}
			if (c==0 && d!=0 && u!=0)
			{
				printf (" e ");
			}
			if (c!=0 && d==0 && u==0)
			{
				printf (" e ");
			}
			if (c!=0 && d==0 && u!=0)
			{
				printf (", ");
			}
			if (c!=0 && d!=0 && u==0)
			{
				printf (", ");
			}
			if (c!=0 && d!=0 && u!=0)
			{
				printf (", ");
			}
			break;
		case 6: printf ("Seis Mil");
			if (c==0 && d==0 && u!=0)
			{
				printf (" e ");
			}
			if (c==0 && d!=0 && u==0)
			{
				printf (" e ");
			}
			if (c==0 && d!=0 && u!=0)
			{
				printf (" e ");
			}
			if (c!=0 && d==0 && u==0)
			{
				printf (" e ");
			}
			if (c!=0 && d==0 && u!=0)
			{
				printf (", ");
			}
			if (c!=0 && d!=0 && u==0)
			{
				printf (", ");
			}
			if (c!=0 && d!=0 && u!=0)
			{
				printf (", ");
			}
			break;
		case 7: printf ("Sete Mil");
			if (c==0 && d==0 && u!=0)
			{
				printf (" e ");
			}
			if (c==0 && d!=0 && u==0)
			{
				printf (" e ");
			}
			if (c==0 && d!=0 && u!=0)
			{
				printf (" e ");
			}
			if (c!=0 && d==0 && u==0)
			{
				printf (" e ");
			}
			if (c!=0 && d==0 && u!=0)
			{
				printf (", ");
			}
			if (c!=0 && d!=0 && u==0)
			{
				printf (", ");
			}
			if (c!=0 && d!=0 && u!=0)
			{
				printf (", ");
			}
			break;
		case 8: printf ("Oito Mil");
			if (c==0 && d==0 && u!=0)
			{
				printf (" e ");
			}
			if (c==0 && d!=0 && u==0)
			{
				printf (" e ");
			}
			if (c==0 && d!=0 && u!=0)
			{
				printf (" e ");
			}
			if (c!=0 && d==0 && u==0)
			{
				printf (" e ");
			}
			if (c!=0 && d==0 && u!=0)
			{
				printf (", ");
			}
			if (c!=0 && d!=0 && u==0)
			{
				printf (", ");
			}
			if (c!=0 && d!=0 && u!=0)
			{
				printf (", ");
			}
			break;
		case 9: printf ("Nove Mil");
			if (c==0 && d==0 && u!=0)
			{
				printf (" e ");
			}
			if (c==0 && d!=0 && u==0)
			{
				printf (" e ");
			}
			if (c==0 && d!=0 && u!=0)
			{
				printf (" e ");
			}
			if (c!=0 && d==0 && u==0)
			{
				printf (" e ");
			}
			if (c!=0 && d==0 && u!=0)
			{
				printf (", ");
			}
			if (c!=0 && d!=0 && u==0)
			{
				printf (", ");
			}
			if (c!=0 && d!=0 && u!=0)
			{
				printf (", ");
			}
			break;
	}

/* comparando centena */
	switch (c)
	{
		case 1: if (d==0 && u==0)
			{
				printf ("Cem.");
			}
			else
			{
				printf ("Cento e ");
			}
			break;
		case 2: printf ("Duzentos");
			if (d!=0 || u!=0)
			{
				printf (" e ");
			}
			break;
		case 3: printf ("Trezentos");
			if (d!=0 || u!=0)
			{
				printf (" e ");
			}
			break;
		case 4: printf ("Quatrocentos ");
			if (d!=0 || u!=0)
			{
				printf (" e ");
			}
			break;
		case 5: printf ("Quinhentos ");
			if (d!=0 || u!=0)
			{
				printf (" e ");
			}
			break;
		case 6: printf ("Seiscentos ");
			if (d!=0 || u!=0)
			{
				printf (" e ");
			}
			break;
		case 7: printf ("Setecentos ");
			if (d!=0 || u!=0)
			{
				printf (" e ");
			}
			break;
		case 8: printf ("Oitocentos ");
			if (d!=0 || u!=0)
			{
				printf (" e ");
			}
			break;
		case 9: printf ("Novecentos ");
			if (d!=0 || u!=0)
			{
				printf (" e ");
			}
			break;
	}

/* comparando dezena */
	switch (d)
	{
		case 1: switch (u)
			{
				case 0: printf ("Dez");
					break;
				case 1: printf ("Onze");
					break;
				case 2: printf ("Doze");
					break;
				case 3: printf ("Treze");
					break;
				case 4: printf ("Quatorze");
					break;
				case 5: printf ("Quinte");
					break;
				case 6: printf ("Dezesseis");
					break;
				case 7: printf ("Dezesete");
					break;
				case 8: printf ("Dezoito");
					break;
				case 9: printf ("Dezenove");
					break;
			}
			break;
		case 2: printf ("Vinte");
			if (u!=0)
			{
				printf (" e ");
			}
			break;
		case 3: printf ("Trinta");
			if (u!=0)
			{
				printf (" e ");
			}
			
			break;
		case 4: printf ("Quarenta");
			if (u!=0)
			{
				printf (" e ");
			}
			break;
		case 5: printf ("Cinquenta");
			if (u!=0)
			{
				printf (" e ");
			}
			break;
		case 6: printf ("Sessenta");
			if (u!=0)
			{
				printf (" e ");
			}
			break;
		case 7: printf ("Setenta");
			if (u!=0)
			{
				printf (" e ");
			}
			break;
		case 8: printf ("Oitenta");
			if (u!=0)
			{
				printf (" e ");
			}
			break;
		case 9: printf ("Noventa");
			if (u!=0)
			{
				printf (" e ");
			}
			break;
	}

/* comparando Unidade */

	if (d != 1)
	{
		switch (u)
		{
			case 1: printf ("Um");
				break;
			case 2: printf ("Dois");
				break;
			case 3: printf ("Tres");
				break;
			case 4: printf ("Quatro");
				break;
			case 5: printf ("Cinco");
				break;
			case 6: printf ("Seis");
				break;
			case 7: printf ("Sete");
				break;
			case 8: printf ("Oito");
				break;
			case 9: printf ("Nove");
				break;
		}
	}
}

int main ()
{
	clrscr ();
	digita ();
	divide ();
	printf ("\n\n\n\n\n\n");
	mostra ();
	printf ("\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n");
	printf ("Pressione qualquer tecla para FINALIZAR...");
        getch ();
	return 0;
}












/* Programa desenvolvido por Cristian Bueno - FMU - RA 502.895/7 */