Data de publicació: Jan 23, 2012 9:50:55 PM
Using functions
Txalupa 0.5
#include <stdio.h>
/*Aquí definim una serie de constants*/
#define TAB 8
#define TOC 0
#define AIG 1
#define ENF 2
/*Variables globals*/
char T[TAB][TAB];
int ESTAT;
/*Funcions globals*/
int inicialitza_taullell();
int imprimeix_taulell(int s);
int ubica_vaixells();
int main(){
int i,j, fil, col;
int ok;
inicialitza_taulell();
ubica_vaixells();
imprimeix_taulell(-1);
/*Jugar*/
while (1){
ok = 0;
while (!ok) {printf("Dona'm fil: [0,%d]",TAB-1); scanf("%d",&fil); ok = ((fil >= 0) && ( fil < TAB));};
ok = 0;
while (!ok) {printf("Dona'm col: [0,%d]",TAB-1); scanf("%d",&col); ok = ((col >= 0) && ( col < TAB));};
if (T[fil][col] == 'V') {
ESTAT = TOC;
T[fil][col]='*';
}
else ESTAT = AIG;
imprimeix_taulell(ESTAT);
}
}
int ubica_vaixells(){
/*Ubica vaixell 01*/
T[1][1]='V';
T[1][2]='V';
T[1][3]='V';
return(0);
}
int inicialitza_taulell(){
int i, j;
/*Inicialitza taulell*/
for (i=0;i<TAB;i++) for (j=0;j<TAB;j++) T[i][j]='-';
return(0);
}
int imprimeix_taulell(int status){
int i, j;
/*Imprimeix taulell*/
system("clear");
for (i=0;i<TAB;i++){
printf("\n");
printf("%d ",i);
for (j=0;j<TAB;j++) printf("%c ",T[i][j]);
printf("\n");
}
printf(" ");
for (i=0;i<TAB;i++) printf("%d ",i);
printf("\n");
/*Imprimeix estat: AIGUA, TOCAT o ENFONSAT*/
switch(status){
case TOC: printf("TOCAT!!!\n");
break;
case AIG: printf("AIGUA!!!\n");
break;
case ENF: printf("ENFONSAT!!!\n");
break;
default: break;
}
return(0);
}