TrabalhosGratuitos.com - Trabalhos, Monografias, Artigos, Exames, Resumos de livros, Dissertações
Pesquisar

Labirinto C++

Artigos Científicos: Labirinto C++. Pesquise 861.000+ trabalhos acadêmicos

Por:   •  5/10/2014  •  1.555 Palavras (7 Páginas)  •  445 Visualizações

Página 1 de 7

/*

Esse é o Labirinto '1.0'

W - Cima

A - Esquerda

S - Baixo

D - Direita

Q - Sair

Como todo bom labirinto , esse pode gerar mapas em que você fica impossibilitado de Chegar Até o # (O Boneco é o @)

Definições

Parede = (=)(Você Não Pode Passar );

Grama = (.)(Você Pode Passar);

Chao = (Espaço em Branco) (Você Pode Passar)

A Biblioteca <graphics.h> aqui foi usado apenas para o getch();, mas caso voces nao tenham , apenas modique de getch(); para getchar();

Versão 1.0 ; Versão 2.0 Com o Uso Das Setas do Teclado (Ou Não ...)

*/

#include <stdio.h>

#include <stdlib.h>

#include <graphics.h>

#include <time.h>

/* Definicoes, para facilitar o uso da funcao para desenhar o mapa */

#define CHAO 0

#define PAREDE 1

#define VOCE 2

#define GRAMA 3

#define SAIDA 4

#define ACIMA 119

#define ABAIXO 115

#define DIREITA 100

#define ESQUERDA 97

#define Q 113

/*Outras definições para tratamento de erros*/

#define OK 1

#define ERRO 2

int coluna_atual = 1,

linha_atual = 1,

coluna_atual2 = 1,

linha_atual2 = 1;

int key,passos;

/* O Mapa */

int mapa[10][20] = {

1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,

1,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,

1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,

1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,

1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,

1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,

1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,

1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,

1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,3,3,1,

1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,};

void gera_mapa( )

{

int m, n;

for (m = 0; m < 10;m++)

{

for (n = 0;n<20;n++)

{

if (mapa[m][n] == 0)

{

mapa[m][n] = rand() % 4;

if (mapa[m][n] == 2)

{

mapa[m][n] = 0;

}

}

}

}

mapa[9][18] = 4;

}

int desenhar_mapa()

{

int linha,coluna;

for (linha=0;linha<10;linha++) {

for (coluna=0;coluna<20;coluna++) {

if ((linha == linha_atual) && (coluna == coluna_atual)) {

printf("&");

continue;

}

if (mapa[linha][coluna] == CHAO)

printf(" ");

if (mapa[linha][coluna] == PAREDE)

printf("©");

if (mapa[linha][coluna] == GRAMA)

printf(".");

if (mapa[linha][coluna] == SAIDA)

printf("#");

}

printf("\n");

}

return

...

Baixar como (para membros premium)  txt (4.8 Kb)  
Continuar por mais 6 páginas »
Disponível apenas no TrabalhosGratuitos.com