maio 6 2009

Blockchar em C

  • Autor: IphoneVicious em Programação
  • Sem Comentários. Seja o primeiro a comentar.
Realizei esse programa na faculdade, e estou postando para vocês, vocês também poderiam implementar o que eu fiz usando switch dentro de um while e uma função matemática para pegar cada dígito significativo, eu tinha feito desse outro jeito mas perdi o código-fonte.

Basicamente, o que se chama de Blockchar seria um programa que recebe um conteúdo e o exibe para impressão em matrizes, exemplo parecido você encontra naqueles geradores ASCII, que transforma seu nick com vários efeitos. O programa que fiz recebe um número inteiro de até 9 dígitos e exibe o número na tela usando “.“ e “&” com uma matriz de 9 linhas por 7 colunas para cada dígito digitado.

#include <stdlib.h>
#include <stdio.h>
#include <time.h>
#include <string.h>
#include <conio.h>
 
int main()
{
    char numeros[10][9][7] = {
   {
     {'.', '&', '&', '&', '&', '&', '.'},
     {'&', '&', '.', '.', '.', '&', '&'},
     {'&', '&', '.', '.', '&', '&', '&'},
     {'&', '&', '.', '&', '&', '&', '&'},
     {'&', '&', '.', '&', '.', '&', '&'},
     {'&', '&', '&', '&', '.', '&', '&'},
     {'&', '&', '&', '.', '.', '&', '&'},
     {'&', '&', '.', '.', '.', '&', '&'},
     {'.', '&', '&', '&', '&', '&', '.'}
   },
   {
     {'.', '.', '.', '.', '&', '.', '.'}, 
     {'.', '.', '.', '&', '&', '.', '.'}, 
     {'.', '&', '&', '&', '&', '.', '.'}, 
     {'.', '.', '.', '&', '&', '.', '.'}, 
     {'.', '.', '.', '&', '&', '.', '.'}, 
     {'.', '.', '.', '&', '&', '.', '.'}, 
     {'.', '.', '.', '&', '&', '.', '.'}, 
     {'.', '.', '.', '&', '&', '.', '.'}, 
     {'.', '&', '&', '&', '&', '&', '&'} 
   },
   {
     {'.', '.', '&', '&', '&', '&', '.'}, 
     {'.', '&', '&', '.', '.', '&', '&'}, 
     {'.', '&', '&', '.', '.', '&', '&'}, 
     {'.', '.', '.', '.', '.', '&', '&'}, 
     {'.', '.', '.', '.', '&', '&', '.'}, 
     {'.', '.', '.', '&', '&', '.', '.'}, 
     {'.', '.', '&', '&', '.', '.', '.'}, 
     {'.', '&', '&', '.', '.', '&', '&'}, 
     {'.', '&', '&', '&', '&', '&', '&'}
   },
   {
     {'.', '.', '&', '&', '&', '&', '.'}, 
     {'.', '&', '&', '.', '.', '&', '&'}, 
     {'.', '.', '.', '.', '.', '&', '&'}, 
     {'.', '.', '.', '.', '.', '&', '&'}, 
     {'.', '.', '.', '&', '&', '&', '.'}, 
     {'.', '.', '.', '.', '.', '&', '&'}, 
     {'.', '.', '.', '.', '.', '&', '&'}, 
     {'.', '&', '&', '.', '.', '&', '&'}, 
     {'.', '.', '&', '&', '&', '&', '.'}, 
   },
   {
     {'.', '.', '.', '.', '&', '&', '.'}, 
     {'.', '.', '.', '&', '&', '&', '.'}, 
     {'.', '.', '&', '&', '&', '&', '.'}, 
     {'.', '&', '&', '.', '&', '&', '.'}, 
     {'&', '&', '.', '.', '&', '&', '.'}, 
     {'&', '&', '&', '&', '&', '&', '&'}, 
     {'.', '.', '.', '.', '&', '&', '.'}, 
     {'.', '.', '.', '.', '&', '&', '.'}, 
     {'.', '.', '&', '&', '&', '&', '&'}
   },
   {
     {'.', '&', '&', '&', '&', '&', '&'}, 
     {'.', '&', '&', '.', '.', '.', '.'}, 
     {'.', '&', '&', '.', '.', '.', '.'}, 
     {'.', '&', '&', '.', '.', '.', '.'}, 
     {'.', '&', '&', '&', '&', '&', '.'}, 
     {'.', '.', '.', '.', '.', '&', '&'}, 
     {'.', '.', '.', '.', '.', '&', '&'}, 
     {'.', '&', '&', '.', '.', '&', '&'}, 
     {'.', '.', '&', '&', '&', '&', '.'} 
   },
   {
     {'.', '.', '.', '&', '&', '&', '&'}, 
     {'.', '.', '&', '&', '.', '.', '.'}, 
     {'.', '&', '&', '.', '.', '.', '.'}, 
     {'.', '&', '&', '.', '.', '.', '.'}, 
     {'.', '&', '&', '&', '&', '&', '.'}, 
     {'.', '&', '&', '.', '.', '&', '&'}, 
     {'.', '&', '&', '.', '.', '&', '&'}, 
     {'.', '&', '&', '.', '.', '&', '&'}, 
     {'.', '.', '&', '&', '&', '&', '.'}
   },
   {
     {'&', '&', '&', '&', '&', '&', '&'}, 
     {'&', '&', '.', '.', '.', '&', '&'}, 
     {'&', '&', '.', '.', '.', '&', '&'}, 
     {'.', '.', '.', '.', '.', '&', '&'}, 
     {'.', '.', '.', '.', '&', '&', '.'}, 
     {'.', '.', '.', '&', '&', '.', '.'}, 
     {'.', '.', '&', '&', '.', '.', '.'}, 
     {'.', '.', '&', '&', '.', '.', '.'}, 
     {'.', '.', '&', '&', '.', '.', '.'}
   },
   {
     {'.', '.', '&', '&', '&', '&', '.'}, 
     {'.', '&', '&', '.', '.', '&', '&'}, 
     {'.', '&', '&', '.', '.', '&', '&'}, 
     {'.', '&', '&', '.', '.', '&', '&'}, 
     {'.', '&', '&', '&', '&', '&', '&'}, 
     {'.', '&', '&', '.', '.', '&', '&'}, 
     {'.', '&', '&', '.', '.', '&', '&'}, 
     {'.', '&', '&', '.', '.', '&', '&'}, 
     {'.', '.', '&', '&', '&', '&', '.'}
   },
   {  
     {'.', '.', '&', '&', '&', '&', '.'}, 
     {'.', '&', '&', '.', '.', '&', '&'}, 
     {'.', '&', '&', '.', '.', '&', '&'}, 
     {'.', '&', '&', '.', '.', '&', '&'}, 
     {'.', '&', '&', '&', '&', '&', '&'}, 
     {'.', '.', '.', '.', '&', '&', '&'}, 
     {'.', '.', '.', '.', '&', '&', '.'}, 
     {'.', '.', '.', '&', '&', '.', '.'}, 
     {'.', '.', '&', '&', '.', '.', '.'}
   }};
   char num[11];
   int tam, y, a, b, c;
   unsigned long l, z=1;
   clock_t inicio, final;
   double duracao; 
 
     do{
     printf("Autor: <Vinicius Viana(RA:200801427) e Mateus Damico (RA:200807467)>\n\n");
     printf("Entre com um numero(de 0 ate 999999999): ");
     gets(num);
     if(strlen(num)>9)
       printf("Numero muito grande...\n");}
     while(strlen(num)>9);
     inicio = clock(); 
     tam = strlen(num); //pegando tamanho do conteúdo da string
     l = atol(num); //convertendo string para long int
     for(y=(tam-1);y>=0;y--){
        num[y]=(l/z)%10;
        z*=10; }
     for(a=0;a<=8;a++){
        for(y=0;y<=(tam-1);y++)
         for(c=0;c<=9;c++)
            if((num[y]-c)==0){
                for(b=0;b<=6;b++){
                    printf("%c", numeros[c][a][b]);} 
                printf(" ");}
             printf("\n");}
     final = clock();
     duracao = ((double) (final-inicio)) / CLOCKS_PER_SEC;
     printf("\nO tempo de processamento foi de %.6lf segundos.\n", duracao);
     system("PAUSE");
     return 0;
}


DEIXE UM COMENTÁRIO

Subscrever

Subscreve o Blog



Publicidade

Comentários Recentes

  • shirley Balazs: Parabéns!! Informações de utilidade publica e de primeira, foi muito útil a mim.Obrigada!!
  • Jefferson Ferreira de brito: eu quero muito
  • thiago valente: Eu quero um para mim
  • Lucas martins balieiro: Eu não fiz o enem mesmo assim eu posso me inscrever no site essa é minha dúvida, só queme...
  • Francisca Marli Oliveira: quero saber quanto tenho no meu fgts

Links

Leitores Recentes

VALE O CLIQUE!

Site Seguro Ocioso

Divulgue o blog Infomaroto em seu site e tenha seu link ou banner aqui.
Blog Infomaroto