Menu

Benvindo, visitante
( Log In | Registar )

Fórum

 
Reply to this topicStart new topic
> [Pascal] Dizer o numero por extenso
V
cenourinha
post Dec 2 2005, 01:05 PM
Post #1


Hello
[Pascal] Dizer o numero por extenso

Aqui esta um programa em pascal que escreve os numeros até 9999 em extenso, uma pequena brincadeira que demorou algum tempo a fazer nas aulas de BP:

program extenso;

uses crt;



var  texto:string;

     tamanho: integer;



begin

     clrscr;

     writeln ('..::]Programa produzido pelo cenourinha[::..');

     writeln ('        ..::]www.webtuga.com[::..           ');

     readkey;

     clrscr;

     writeln(' Introduza um numero para passar a extenso ');

     read(texto);

     tamanho:=length(texto);



     writeln('Milhares: ',texto[1]);

     writeln('Centenas: ',texto[2]);

     writeln('Dezenas: ',texto[3]);



     writeln('Unidades: ',texto[4]);



     readkey;



     case texto[1] of

     '1':write('Mil');

     '2':write('Dois Mil');

     '3':write('Tres Mil');

     '4':write('Quatro Mil');

     '5':write('Cinco Mil');

     '6':write('Seis Mil');

     '7':write('Sete Mil');

     '8':write('Oito Mil');

     '9':write('Nove Mil');

     end;



     if (texto[3]='0') and  (texto[4]='0') then

     write(' e Cem ')

     else



     case texto[2] of



     '1':write(' Cento e');

     '2':write(' Duzentos e');

     '3':write(' Trezentos e');

     '4':write(' Quatrocentos e');

     '5':write(' Quinhentos e');

     '6':write(' Seiscentos e');

     '7':write(' Setecentos e');

     '8':write(' Oitocentos e');

     '9':write(' Novecentos e');

     end;

     if texto[3]='1' then

     if texto[3]+texto[4]='11' then

     write('onze');

     if texto[3]+texto[4]='12' then

     write('doze');

     if texto[3]+texto[4]='13' then

     write('treze');

     if texto[3]+texto[4]='14' then

     write('Catorze');

     if texto[3]+texto[4]='15' then

     write('Quinze');

     if texto[3]+texto[4]='16' then

     write('Dezasseis');

     if texto[3]+texto[4]='17' then

     write('dezasete');

     if texto[3]+texto[4]='18' then

     write('Dezoito');

     if texto[3]+texto[4]='19' then

     write('dezanove');





     case texto[3] of

     '1':write(' ');

     '2':write(' Vinte e');

     '3':write(' Trinta e');

     '4':write(' Quarenta e');

     '5':write(' Cinquenta e');

     '6':write(' Secenta e');

     '7':write(' Setenta e');

     '8':write(' Oitenta e');

     '9':write(' Noventa e');

     end;



     if texto[3]<>'1' then

     case texto[4] of

     '1':write(' um ');

     '2':write(' dois ');

     '3':write(' tres ');

     '4':write(' quatro ');

     '5':write(' cinco ');

     '6':write(' seis ');

     '7':write(' sete ');

     '9':write(' Oito ');

     end;

     readkey;

end.



Espero que gostem desta brincadeira, alguma duvida é só dizer
fiquem bem


--------------------

Gostavas de ser moderador no WebTuga? Envia-me uma PM com a tua proposta...
Go to the top of the page
 
+Quote Post
Dungee
post Dec 14 2005, 04:28 PM
Post #2


Hello
Hohoho gostei disso smile.gif deve te cansado nao ??

eu progamo vB hehe dps eu ponho uma calculadora ake pro seis ve ;DD

fuiz

[]'s

faz tempo q num venho ake oO
Go to the top of the page
 
+Quote Post
KhAoTiK_TaChYoN
post Jan 2 2006, 06:10 PM
Post #3


Hello
Aki está uma tradução para C++:

// Author: KhAoTiK TaChYoN



#include <iostream>



int main (int argc, char * const argv[]) {

    

    int i, a;

    

    std::cout << "Number to print: ";

    std::cin >> i;

    

    if (i == 0) {

        std::cout << "Zero";

        return 0;

    }

    

    a = i/1000;

    i %= 1000;

    

    switch (a) {

        case 1: std::cout << "Mil ";

            break;

        case 2: std::cout << "Dois Mil ";

            break;

        case 3: std::cout << "Três Mil ";

            break;

        case 4: std::cout << "Quatro Mil ";

            break;

        case 5: std::cout << "Cinco Mil ";

            break;

        case 6: std::cout << "Seis Mil ";

            break;

        case 7: std::cout << "Sete Mil ";

            break;

        case 8: std::cout << "Oito Mil ";

            break;

        case 9: std::cout << "Nove Mil ";

            break;

    }

    

    if (a != 0 && i % 100 == 0) {

        a = i/100;

        i %= 100;

        

        switch (a) {

            case 1: std::cout << "e Cem";

                break;

            case 2: std::cout << "e Duzentos";

                break;

            case 3: std::cout << "e Trezentos";

                break;

            case 4: std::cout << "e Quatrocentos";

                break;

            case 5: std::cout << "e Quinhentos";

                break;

            case 6: std::cout << "e Seiscentos";

                break;

            case 7: std::cout << "e Setecentos";

                break;

            case 8: std::cout << "e Oitocentos";

                break;

            case 9: std::cout << "e Novecentos";

                break;

        }

    }

    

    a = i/100;

    i %= 100;

    

    switch (a) {

            case 1: std::cout << "Cento e ";

                break;

            case 2: std::cout << "Duzentos e ";

                break;

            case 3: std::cout << "Trezentos e ";

                break;

            case 4: std::cout << "Quatrocentos e ";

                break;

            case 5: std::cout << "Quinhentos e ";

                break;

            case 6: std::cout << "Seiscentos e ";

                break;

            case 7: std::cout << "Setecentos e ";

                break;

            case 8: std::cout << "Oitocentos e ";

                break;

            case 9: std::cout << "Novecentos e ";

                break;

    }



    switch (i) {

        case 11: std::cout << "Onze";

            return 0;

        case 12: std::cout << "Doze";

            return 0;

        case 13: std::cout << "Treze";

            return 0;

        case 14: std::cout << "Catorze";

            return 0;

        case 15: std::cout << "Quize";

            return 0;

        case 16: std::cout << "Desasseis";

            return 0;

        case 17: std::cout << "Desassete";

            return 0;

        case 18: std::cout << "Desoito";

            return 0;

        case 19: std::cout << "Desanove";

            return 0;

    }



    a = i/10;

    i %= 10;



    if (i == 0) {

        a = i/100;

        i %= 100;

        

        switch (a) {

            case 1: std::cout << "Dez";

                break;

            case 2: std::cout << "Vinte";

                break;

            case 3: std::cout << "Trinta";

                break;

            case 4: std::cout << "Quarenta";

                break;

            case 5: std::cout << "Cinquenta ";

                break;

            case 6: std::cout << "Sessenta ";

                break;

            case 7: std::cout << "Setenta";

                break;

            case 8: std::cout << "Oitenta";

                break;

            case 9: std::cout << "Noventa";

                break;

        }

    }



    switch (a) {

        case 2: std::cout << "Vinte e ";

            break;

        case 3: std::cout << "Trinta e ";

            break;

        case 4: std::cout << "Quarenta e ";

            break;

        case 5: std::cout << "Cinquenta e ";

            break;

        case 6: std::cout << "Sessenta e ";

            break;

        case 7: std::cout << "Setenta e ";

            break;

        case 8: std::cout << "Oitenta e ";

            break;

        case 9: std::cout << "Noventa e ";

            break;

    }



    switch (i) {

        case 1: std::cout << "Um";

            break;

        case 2: std::cout << "Dois";

            break;

        case 3: std::cout << "Três";

            break;

        case 4: std::cout << "Quatro";

            break;

        case 5: std::cout << "Cinco";

            break;

        case 6: std::cout << "Seis";

            break;

        case 7: std::cout << "Sete";

            break;

        case 8: std::cout << "Oito";

            break;

        case 9: std::cout << "Nove";

            break;

    }

    

    return 0;

}


--------------------
QUOTE("Steve Ballmer @ USA Today")
There's no chance that the iPhone is going to get any significant market share. No chance.

Current status: 13.016.000 iPhones sold 'til September 2008.

/target Steve Ballmer
/cheer
Go to the top of the page
 
+Quote Post
cenourinha
post Jan 2 2006, 06:23 PM
Post #4


Hello
Porreiro, ainda não sei C++ mas tenho intensão de saber, se tiveres ai mais codigos e algoritmos, não exites, posta!

Ah e já agora bem vindo ao Forum!


--------------------

Gostavas de ser moderador no WebTuga? Envia-me uma PM com a tua proposta...
Go to the top of the page
 
+Quote Post
KhAoTiK_TaChYoN
post Jan 2 2006, 06:38 PM
Post #5


Hello
Tks. Eu vou colocando alguns algoritmos k axe interessantes.


--------------------
QUOTE("Steve Ballmer @ USA Today")
There's no chance that the iPhone is going to get any significant market share. No chance.

Current status: 13.016.000 iPhones sold 'til September 2008.

/target Steve Ballmer
/cheer
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
2 utilizador(es) está(ão) a ler este tópico (2 visitante(s) e 0 utilizador(es) anónimos)
0 membros:

 

Publicidade
who's online
Versão Simples
Skin by IPB Customize
Horário: 8th January 2009 - 04:23 PM