Números ASCII_ART

Publicado por Fernando (última atualização em 23/09/2017)

[ Hits: 1.998 ]

Homepage: https://github.com/phoemur/

Download numbers_asciiart.cpp




Este pequeno programa gera números grandes em stdout, a partir da linha de comando.

Compilando:

$ g++ numbers_asciiart.cpp -o numbers_asciiart

Executando:

$ ./numbers_asciiart 1234567890

  



Esconder código-fonte

#include <iostream>
#include <vector>
#include <cstring>
using namespace std;

const char BIGDIGITS[10][7][6] =
            {{"  0  ",
              " 0 0 ", 
              "0   0", 
              "0   0", 
              "0   0", 
              " 0 0 ", 
              "  0  "},
             {"  1  ", 
              " 11  ", 
              "  1  ", 
              "  1  ", 
              "  1  ", 
              "  1  ", 
              " 111 "},
             {" 222 ", 
              "2   2", 
              "2  2 ", 
              "  2  ", 
              " 2   ", 
              "2    ", 
              "22222"},
             {" 333 ", 
              "3   3", 
              "    3", 
              "  33 ", 
              "    3", 
              "3   3", 
              " 333 "},
             {"   4 ", 
              "  44 ", 
              " 4 4 ", 
              "4  4 ", 
              "44444", 
              "   4 ", 
              "   4 "},
             {"55555", 
              "5    ", 
              "5    ", 
              " 555 ", 
              "    5", 
              "5   5", 
              " 555 "},
             {" 666 ", 
              "6    ", 
              "6    ", 
              "6666 ", 
              "6   6", 
              "6   6", 
              " 666 "},
             {"77777",
              "    7", 
              "   7 ", 
              "  7  ", 
              " 7   ", 
              "7    ", 
              "7    "},
             {" 888 ",
              "8   8", 
              "8   8", 
              " 888 ", 
              "8   8", 
              "8   8", 
              " 888 "},
             {" 9999", 
              "9   9", 
              "9   9", 
              " 9999", 
              "    9", 
              "    9", 
              "    9"}};

void printdigits(vector<int> * array) {
    for (int linha=0; linha<7;++linha) {
        for (vector<int>::size_type i = 0;i < array->size();++i) {
            cout << BIGDIGITS[array->at(i)][linha] << "  ";
        }
        cout << endl;
        cout.flush();
    }
    return;
}

int main(int argc, char* argv[]) {
    vector<int> * numeros;
    numeros = new (nothrow) vector<int>;
    for (int c=1; c<argc; ++c) {
        for (int i=0; i < strlen(argv[c]); ++i) {
            numeros->push_back(argv[c][i] - 48);
        }
        printdigits(numeros);
        numeros->clear();
    }
    delete numeros;
    return 0;
}

Scripts recomendados

Exemplo de biblioteca

O que são e como utilizar structs

Simulador de teatro

primeirafuncao.c - Criando uma função

Uma implementação do HeapSort


  

Comentários

Nenhum comentário foi encontrado.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts