Jump to content


Léo_C's Content

There have been 1 items by Léo_C (Search limited from 04/08/2020)


Ordernar por                Order  

#1019364 Dúvidas Em Código Em C Jogo Campo Minado

Posted by Léo_C on 07/09/2012, 18:34 in C/C++

Salve Galera!!!

Sou iniciante na programação, estou desenvolvendo um projeto para o Curso de SI, no qual consistem em desenvolver um jogo campo minado usando a linguagem de programação em c.

Este é meu código até o presente momento, mais tenho muitas dúvidas como por exemplo colocar as bombas e como marcar para explodir. Quem poder me ajudar com dicas agradeço.


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

//Definindo as minahas constantes para verificar acoes
#define o 0 //casas vazias
#define x b //bombas


/* Jogo em c campo minado:
Desenvolvido por Leonildo Carvalho
Criação dia: 05/09/2012
Ultima Atualização: 05/12/2012
O que foi atualizado */

//variáveis globais
int TAMBombas;
int TAMCampo;


//prototipo das funções
void fMenu1();
void fMenu2();
void fConfigurar();
void fJogar();


int main()
{
fMenu1();

return 0;
}
//inicio do jogo
void fMenu1(){

//limpando buffer do teclado
fflush(stdin);
//variaveis
char escolha;

printf(":::::CAMPO MINADO:::::\n\nMENU INICIAL\n\n");
printf("© Configurar\n(S)Sair\n");
scanf("%c",&escolha);

//usando a biblioteac ctype.h para tratar a letra e transformando em maiuscula a letra digitada ex: se recebe c transforma em C
escolha=toupper(escolha);

switch(escolha){

case 'C': fConfigurar();
break;

case'S': exit(1);
break;

default: printf("Opcao invalida!!!\nC - Configurar e S - Sair\n");
system("PAUSE");
system("cls");
fMenu1();
break;

return;
}
}


//funcao opcao configurar
void fConfigurar(){

//variaveis
char nomeJogador[30];
int quantBombas, tamanhoCampo;

system("cls");
printf("CAMPO MINADO\n");
printf("Nome do jogador: \n");
fflush(stdin);
gets(nomeJogador);
printf("Tamanho do campo minado (6/8/10): \n");
scanf("%d",&tamanhoCampo);
printf("Quantidade de bombas (10/12/14): \n");
scanf("%d",&quantBombas);

//testando as opcoes
if ((tamanhoCampo==6 || tamanhoCampo==8 || tamanhoCampo==10) && (quantBombas==10 || quantBombas==12 || quantBombas==14)){
system("cls");
TAMBombas=quantBombas;
TAMCampo=tamanhoCampo;
fMenu2();

}else{
printf("\n\nERRO: escolha as opcoes de acordo com o menu...\nPressione qualquer tecla voltar as configuracoes...\n\n\n\n");
printf("\a\a"); // a serve para emitir um beep
system("PAUSE");
fConfigurar();
}


return;
}

//Funcao jogar
void fMenu2(){

//limpando buffer do teclado
fflush(stdin);
//variaveis
char escolha;

printf(":::::CAMPO MINADO:::::\n\nMENU INICIAL\n\n");
printf("© Configurar\n(J)Jogar\n(S)Sair\n");
scanf("%c",&escolha);

//usando a biblioteac ctype.h para tratar a letra e transformando em maiuscula a letra digitada ex: se recebe c transforma em C
escolha=toupper(escolha);

switch (escolha){

case 'C': fConfigurar();
break;

case 'J': fJogar();

case'S': exit(1);
break;

default: printf("Opcao invalida!!!\nC - Configurar e S - Sair\n");
system("PAUSE");
system("cls");
fMenu1();
break;

}

return;

}

void fJogar(){

//inicializado minha matriz


int matrizCampo [TAMCampo][TAMCampo];
int i,j;
srand(time(NULL));

for (i=0; i<TAMCampo; i++){
for (j=0; j<TAMCampo; j++){
matrizCampo[i][j]=rand()%3;

}

}

for (i=0; i<TAMCampo; i++){
for (j=0; j<TAMCampo;j++){
printf("%d ", matrizCampo[i][j]);
}

return;
}

}




IPB Skin By Virteq