Gyovana
(usa Ubuntu)
Enviado em 11/03/2013 - 23:16h
Boa noite pessoal,
Tenho que entregar um trabalho em C que é um jogo de dominó, este trabalho é muito importante pois definirá se passo para a próxima fase.
Preciso continuar o jogo, mas estou empacada em imprimir a mesa.
Desde já muito grata.
Segue o que já fiz.
#include <stdio.h>
void embaralha(int matriz[28][3]) {
int aleatorio,i;
int salva[3];
srand(time(NULL));
for (i=0;i<28;i++) {
aleatorio = rand() % 28;
salva[0] = matriz[i][0];
salva[1] = matriz[i][1];
salva[2] = matriz[i][2];
matriz[i][0] = matriz[aleatorio][0];
matriz[i][1] = matriz[aleatorio][1];
matriz[i][2] = matriz[aleatorio][2];
matriz[aleatorio][0] = salva[0];
matriz[aleatorio][1] = salva[1];
matriz[aleatorio][2] = salva[2];
}
}
void distribuiPedras(int matriz[28][3]) {
int i;
// distribui pedras para jogador 1
for (i=0;i < 7;i++) {
matriz[i][2] = 1;
}
// distribui pedras para jogador 2
for (i=7;i < 14;i++) {
matriz[i][2] = 2;
}
}
void imprimeMesa(int mesa[55][2]) {
int i;
printf("\nMesa: \n");
for (i=0;i < 55; i++) {
if (mesa[i][1] != -1) {
printf("%d:%d ",mesa[i][0],mesa[i][1]);
}
}
printf("\n");
}
void imprimePedras(int matriz[28][3], int jogador){
int i,j = 1;
printf("\nPedras do Jogador %d :\n",jogador);
for (i=0;i < 28; i++) {
if (matriz[i][2] == jogador) {
printf("%d-> %d:%d\n",j,matriz[i][0],matriz[i][1]);
j++;
}
}
}
int main() {
// casa 3 -> 1 = jogador 1; 2 = jogador 2; 3 = mesa; 4 = escondida
int matriz[28][3] = {0,0,4, 0,1,4, 0,2,4, 0,3,4, 0,4,4, 0,5,4, 0,6,4,
1,1,4, 1,2,4, 1,3,4, 1,4,4, 1,5,4, 1,6,4,
2,2,4, 2,3,4, 2,4,4, 2,5,4, 2,6,4,
3,3,4, 3,4,4, 3,5,4, 3,6,4,
4,4,4, 4,5,4, 4,6,4,
5,5,4, 5,6,4,
6,6,4};
int mesa[55][2];
int i,j,jogadorVez = 1;
// zera mesa
for (i=0;i < 55; i++) {
for (j=0;j < 2; j++) {
mesa[i][j] = -1;
}
}
embaralha(matriz);
distribuiPedras(matriz);
if (rand() % 2 == 1) // escolhe quem inicia
jogadorVez = 2;
return 0;
}