Ir para conteúdo
Fórum Script Brasil
  • 0

ola gostaria de colocar Milhões e Bilhões


david fs

Pergunta

/*Este programa imprime um cheque.

 

Insira o dia (número):  
Digite o mês (nome):  
Digite o ano:

Por favor, digite o nome do destinatário:  
Digite o nome de solteira do beneficiário:
Por favor, indique o nome de solteira da mãe do beneficiário:
Por favor, indique o valor.

=====================================================================================

     BANCO CENTRAL DO BRASIL
 
  Belo Horizonte, MINAS GERAIS,  MG        29 / setembro / 2011


   

  Pagar esse cheque para:   
  Para a quantidade de:  3.030.212,20 (três milhões, trinta mil e duzentos e doze reais.)

 

        ____________________________
        CIA MINERADORA MINAS GERAIS

===================================================================================== */

 


/*+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 *                                                                                          +
 * Este programa imprime um cheque .Para este recebe o nome BENEFICIÁRIO, Data              +
 * e o valor do cheque.                                                                     +
 * +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/

/*+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 *                                                                                          +
 *                                    Algoritmo:                                            +
 * Receber nome de usuário                                                                  +
 * Receber data                                                                             +
 * Receber o valor                                                                          +
 *                                                                                          +
 * Imprime a verificação de dados gerais do cheque                                          +
 * Imprime o nome do beneficiario                                                           +
 * Imprime a quantidade em números                                                          +
 * Chamar uma função que imprime o valor por extenso o número é enviado, recebeu o          +
 * controle                                                                                 +
 *                                                                                          +
 * função de impressão (recebe o número )                                                   +
 *                                                                                          +
 * Definir  os conjunto:                                                                    +
 * Unidades { "Zero", "Um", "Dois",....."Dez"}                                              +
 * Especial {"", "", "", "",......"onze", "doze", "treze", "quatorze", "quinze"}            +
 * Dezenas {"", "dez", "vinte", "trinta", ..........., "noventa", "cem"}                    +
 * Dezenascomp {"", "dezessete", "vinte", "trinta", "quarenta", ......., "noventa"}         +
 * Centenas {"", "cem", "duzentas", "trezentos", ............, "novecentos" }               +
 * Milhares {"". "Mil", "Dois mil", "Três mil",.....,"Dez Mil"}                             +
 * letras {"   "}                                                                           +
 *                                                                                          +
 * Se o número  < 10                                                                        +
 *                                                                                          +
 *   Imprime a entrada correspondente em unidades de acordo                                 +
 *                                                                                          +
 * Caso contrário                                                                           +
 *                                                                                          +
 *   Se o número for entre 11 e 15                                                          +
 *   Imprima a entrada de conjunto especial                                                 +
 *                                                                                          +
 *   Caso contrário                                                                         +
 *   Milhares = número/1000;                                                                +
 *   Centenas = (número - 1000*milhares)/100;                                               +
 *   Dezenas = (número - 1000*milhares - 100*centenas)/10;                                  +
 *   Unidades = número%10;                                                                  +
 *                                                                                          +
 *   Imprimir a entrada correspondente, em conformidade Milhares                            +
 *   Imprimir a entrada correspondente na Centenas acordo                                   +
 *   Imprimir a entrada correspondente na Dezenas acordo                                    +
 *   (Se houver unidades a serem impressas de entrada Decenascomp)                          +
 *   Imprima a entrada correspondente em Unidades de acordo                                 +
 *                                                                                          +
 * +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/

#include <stdio.h>
#include <string.h>

void Imprimir(int );

/*////////////////////////////////////////////////////////////////////////////
// MAIN
////////////////////////////////////////////////////////////////////////////*/

int main()
{     /*Abrir main*/
char Nome[20];
char Paternal[20];
char Maternal[20];
int valor;
int dia, ano;
char mes[15];

printf("\nEste programa imprime um cheque.\n");
printf("\nInsira o dia (numero): ");
scanf("%d", &dia);
printf("\nDigite o mes (nome): ");
scanf("%s", mes);
printf("\nDigite o ano:\n");
scanf("%d", &ano);

printf("\nPor favor, indique o nome do destinatário: ");
scanf("%s", Nome);
printf("\nPor favor, indique o nome de solteiro do destinatário: ");
scanf("%s", Paternal);
printf("\nPor favor, indique o nome de solteira da mãe do beneficiário: ");
scanf("%s", Maternal);
printf("\nPor favor, indique o valor.\n");
scanf("%d", &valor);

printf("\n=====================================================================================\n");
printf("\n  \t\t\t\t BANCO CENTRAL DO BRASIL\n  ");
printf("\n  Belo Horizonte, MINAS GERAIS,  MG  \t\t\t\t %d/%s/%d\n", dia, mes, ano);
printf("\n   \n\n\t\tPague este cheque a: %s %s %s ", Nome, Paternal, Maternal);
printf("\n  A quantidade de: %d (", valor);
Imprimir(valor);
printf(" reais.)\n");
printf("\n\n\n\t\t\t\t\t\t\t ____________________________\n");
printf("\t\t\t\t\t\t\t\t\tassinatura\n");
printf("\n=====================================================================================\n");
return 0;
}     /*Fechar main */


/*//////////////////////////////////////////////////////////////////////////////////
// Função print
//////////////////////////////////////////////////////////////////////////////////*/

void Imprimir(int numero)
{

char unidades[][10]={"zero","um","dois","três","quatro","cinco","seis","sete","oito","nove"};
char especial[][10]={"","","","","","","","","","","","onze","doze","treze","quatorze","quinze"};
char dezenas[][10]={"","dez","vinte","trinta","quarenta","cinquenta","sessenta","setenta","oitenta","noventa","cem"};
char dezenascomp [][13]={"","dez","vinte","trinta","quarenta","cinquenta","sessenta","setenta","oitenta","noventa"};
char centenas[][15]={"","Cem","duzentos", "trezentos", "quatrocentos", "quinhentos", "seiscentos", "setecentos", "oitocentos", "novecentos"};
char milhares[][15] = {"", "Mil", "Dois Mil", "Três Mil", "Quatro Mil", "Cinco Mil", "Seis Mil", "Sete Mil", "Oito Mil", "Nove Mil", "Dez Mil"};
char letras[16];
int unid,deze, cente, milha;

if(numero<10)
{
strcpy(letras,unidades[numero]);
printf("%s",letras);
}

else
   
switch(numero)
 
{      /* Abre switch */
case 11:
case 12:
case 13:
case 14:
case 15:

strcpy(letras,especial[numero]);
printf("%s",letras);
break;

default:
milha = numero/1000;
cente = (numero - 1000*milha)/100;
deze = (numero - 1000*milha - 100*cente)/10;
unid = numero%10;

strcpy(letras, milhares[milha]);
printf("%s",letras);
 
strcpy(letras,centenas[cente]);
printf("%s ", letras);
if( 0 == unidades )
{  /* Abre if */
strcpy(letras,dezenas[deze]);
printf(" %s", letras);
} /* Fechar if*/
 
else /*se há unidades*/
{  /* Abre else */

if ( ((10*deze + unid) >= 11) && ((10*deze + unid) <= 15) )
{    /*Abre if*/
strcpy(letras, especial[10 + unid]);
printf("%s ", letras);
} /*Fechar if*/
else
{  /*Abre else recolheu-se */
strcpy(letras,dezenascomp[deze]);
printf(" %s", letras);
strcpy(letras, unidades[unid]);
printf("%s", letras);
} /*Fechar else recolheu-se*/
} /*Fechar else */
break;
 
}  /* Fechar switch */
 
return;
}

 

Link para o comentário
Compartilhar em outros sites

0 respostass a esta questão

Posts Recomendados

Até agora não há respostas para essa pergunta

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,4k
×
×
  • Criar Novo...