Quantcast
Channel: Tópicos
Viewing all articles
Browse latest Browse all 14700

Programa que não altera a variável contador (uso isalpha)

$
0
0
olá tenho outra dúvida que é: com os segmentation fault são erros que me tem acontecido frequentemente e ainda não percebi ao que se deve [ code = c] #define DIM 3 #define ESPACO ' ' void inic(char s[] [DIM]) // Omitir uma dimensão { int i,j; for (i=0;i<DIM;i++) for (j=0;j<DIM;i++) s[i][j]=ESPACO; } void mostra(char s[DIM][DIM]) // Ambas as Dimensões { int i,j; for (i=0; i<DIM; i++) { for(j=0;j<DIM;j++) printf("%c %c",s[i] [j], j==DIM -1? ' ': '|'); if (i!=DIM-1) printf("\n-----------"); putchar('\n'); } } //verifica(){for ()} int main() { char Velha[DIM][DIM]=0; mostra(Velha); int posx, posy; char ch = '0'; // Caractere para Jogar int n_jogadas = 0; inic(Velha); while (1) // Laço infinito { mostra(Velha); printf("\n Introduza a Posição de Jogo Linha Coluna: "); scanf("%d %d", &posx,&posy); posx--;posy--; // Eles querem fazer uma atribuição , um decremento xD ..? Pois os índices do vetor começam em 0 if (Velha[posx][posy]==ESPACO) // Casa livre { Velha[posx][posy]= ch = (ch == '0') ? 'X' : '0'; n_jogadas++; } else printf("Posição já ocupada\nJogue Novamente!!!\n"); if (n_jogadas == DIM*DIM) break; // Acabar o Programa } mostra(Velha); } [/code] [ code = c] #define DIM 3 #define ESPACO ' ' // Por motivos de clareza de código o autor decidiu fazer a declaração das funções apesar de não ser necessário.. void inic(char s[][DIM]); void mostra (char s[DIM][DIM]); int Ganhou(char g[DIM][DIM], char ch); int Linha(char v[], char c); int Coluna (char g[DIM][DIM], int col, char ch); // Inicia o Tabuleiro void inic(char s[] [DIM]) // Omitir uma dimensão { int i,j; for (i=0;i<DIM;i++) for (j=0;j<DIM;i++) s[i][j]=ESPACO; } // Mostra o aspecto do tabuleiro void mostra(char s[DIM][DIM]) // Ambas as Dimensões { int i,j; for (i=0; i<DIM; i++) { for(j=0;j<DIM;j++) printf("%c %c",s[i] [j], j==DIM -1? ' ': '|'); if (i!=DIM-1) printf("\n-----------"); putchar('\n'); } } //verifica(){for ()} int main() { char Velha[DIM][DIM]; int posx, posy; char ch = '0'; // Caractere para Jogar int n_jogadas = 0; inic(Velha); while (1) // Laço infinito { mostra(Velha); printf("\n Introduza a Posição de Jogo Linha Coluna: "); scanf("%d %d", &posx,&posy); posx--;posy--; // Eles querem fazer uma atribuição , um decremento xD ..? Pois os índices do vetor começam em 0 if (Velha[posx][posy]==ESPACO) // Casa livre { Velha[posx][posy]= ch = (ch == '0') ? 'X' : '0'; n_jogadas++; } else printf("Posição já ocupada\nJogue Novamente!!!\n"); if (n_jogadas == DIM*DIM) break; // Acabar o Programa } mostra(Velha); } [/code] p.s: os códigos partem do mesmo devia só ter um

Viewing all articles
Browse latest Browse all 14700