Dado

Publicado por Danilo 14/04/2004

[ Hits: 8.187 ]

Homepage: http://www.danilocesar.com

Download dado.c




Este script cria um dado de seis faces. E imprime o dado na tela usando caracteres ASCII.

É possível utilizar este arquivo em jogos onde seja necessário utilizar dados.

  



Esconder código-fonte

/*******************************************************
/* Script em C para gerar dados randomicamente e imprimi-los na tela
/* Testado usando GCC 3.2 Debian Sarge
/*
/*A Função Randômica utiliza como semente do rand o time do sistema.
/*
/* Autor: Danilo Cesar
/*e-mail: danilo_eu@hotmail.com
/*******************************************************/

#include <stdio.h>
#include <stdlib.h>
#include <time.h>

#define UM "\n\
 --------\n\
|        |\n\
|   0    |\n\
|        |\n\
 --------\n"
#define DOIS "\n\
 --------\n\
|      0 |\n\
|        |\n\
| 0      |\n\
 --------\n"

#define TRES  "\n\
 --------\n\
|      0 |\n\
|   0    |\n\
|0       |\n\
 --------\n"

#define QUATRO "\n\
 --------\n\
| 0    0 |\n\
|        |\n\
| 0    0 |\n\
 --------\n"

#define CINCO "\n\
 --------\n\
|0      0|\n\
|   0    |\n\
|0      0|\n\
 --------\n"

#define SEIS "\n\
 --------\n\
|0      0|\n\
|0      0|\n\
|0      0|\n\
 --------\n"


int rodadado();
void imprimedado(int num);

int rodadado(void)
{
  int stime;
  int ltime;

  ltime=time(NULL);
  stime=(unsigned) ltime/2;
  srand(stime);

  return((rand()%6)+1);
}


void imprimedado(num)
{
   switch(num)
   {
      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;
   }
}

int main(void)
{
  int num;

  num=rodadado();
  imprimedado(num);
  exit(0);
  }

Scripts recomendados

Introdução a vetores em C

Constantes de barra invertida

Divisores de n no intervalo [a,b]

Inverte frase

Média de alturas


  

Comentários
[1] Comentário enviado por birilo em 14/04/2004 - 20:07h

Lembrando, que quem clicar em visualizar o script, e copiar colar, não vai conseguir imprimir os dados, pois a linguagem html não mostra 2 espaços um ao lado do outro.
Se for testar, faça o download.

[2] Comentário enviado por Texugo em 30/09/2004 - 12:55h

Desculpa, sou iniciante e não estou conseguindo rodar o programa.
Como me disseram pra fazer, eu peguei o programa, dei o chmod de 700 e digitei:

./dado.c

para executar.

Apareceu os seguintes erros:

[texugo@P08 Scripts]$ ./dado.c
./dado.c: line 1: /bin: is a directory
./dado.c: line 2: /bin: is a directory
./dado.c: line 3: /bin: is a directory
./dado.c: line 4: /bin: is a directory
./dado.c: line 5: /*A: Arquivo ou diretório não encontrado
./dado.c: line 6: /bin: is a directory
./dado.c: line 7: /bin: is a directory
./dado.c: line 8: /*e-mail:: Arquivo ou diretório não encontrado
./dado.c: line 9: /bin/: is a directory
./dado.c: line 17: syntax error near unexpected token `|'
./dado.c: line 17: `| |\n\'

O que eu fiz de errado?

[3] Comentário enviado por birilo em 30/09/2004 - 12:59h

Olá Texugo...

Bom, isso é um código fonte em C. Ele precisa ser compilado antes de executado...
Por exemplo, a maioria das distribuições linux usam um compilador chamado GCC. Para compilar esse programa você deverá dar o seguinte comando.

gcc dado.c

Esse programa vai gerar um outro chamado a.out, q vc deve executar.
entaum, vc deve digitar na pasta do programa:
./a.out

Entendeu? Qualquer coisa, estou no MSN
danilo_eu@hotmail.com
http://www.danilocesar.com/blog/


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts