Ir ao conteúdo
  • Cadastre-se

PimpolhoTaDeOlho

Membro Júnior
  • Posts

    2
  • Cadastrado em

  • Última visita

Tudo que PimpolhoTaDeOlho postou

  1. Boa noite galera, estou desenvolvendo um campo minado em c, e estou tendo dificuldade em fazer o loop que abre casa dos zeros até achar dicas de bomba,como acontece no jogo mesmo, o programa está em desenvolvimento, e só precisa de basicamente (além de coisas mais básicas) isso para funcionar, guardadas as devidas limitações que o c apresenta para interface. segue código abaixo #include <stdio.h> #include <stdlib.h> #include <time.h> void zerarMatriz(int t[9][9]); void mostrarMatriz(int t[9][9]); void sortearBombas(int t[9][9]); void calculadica (int t[9][9]); void tabusuario (int tabusu[9][9]); void calculadica (int t[9][9]); void jogatina(int tabusu[9][9], int t[9][9]); int main() { int t[9][9],tabusu[9][9]; zerarMatriz(t); sortearBombas(t); calculadica (t); mostrarMatriz(t); tabusuario (tabusu); jogatina (tabusu,t); // - vazio -> abre e analisa vizinhos // se B // - marca a bomba // até ganhar ou perder return 0; } void zerarMatriz(int t[9][9]) { int i, j; for (i=0; i<9; i++) { for (j=0; j<9; j++) { t[j] = 0; } } } void mostrarMatriz(int t[9][9]) { int i, j; printf("\n"); for (i=0; i<9; i++) { for (j=0; j<9; j++) { printf (" %d ", t[j]); } printf ("\n"); } printf ("\n"); } void sortearBombas(int t[9][9]) { int i, j, cb = 0; srand(time(NULL)); while (cb < 10) { i = rand()%9; j = rand()%9; if (t[j] == 0) { t[j] = -1; cb++; } } } void calculadica (int t[9][9]){ int i=0,j=0,dicabomba; for (i=0; i<9; i++) { for (j=0; j<9; j++) { dicabomba=0; if (t[j]==0){ if (t[j+1]==-1){ dicabomba++; } if (t[j+2]==-1){ dicabomba++; } if (t[j-1]==-1 && j-1>=0){ dicabomba++; } if (t[j-2]==-1 && (j-2)>=0){ dicabomba++; } if (t[i+1][j]==-1){ dicabomba++; } if (t[i+2][j]==-1){ dicabomba++; } if (t[i-1][j]==-1 && (i-1)>=0){ dicabomba++; } if (t[i-2][j]==-1 && (i-2)>=0){ dicabomba++; } t[j]=dicabomba; } } } } void tabusuario (int tabusu[9][9]){ int i, j; int l, c; for(i = 0; i < 9; i++){ for(j = 0; j < 9; j++){ tabusu[j] = 0;} } for(c = 0; c < 9; c++){ printf("\n\n"); for(l = 0; l < 9; l++) { for(c = 0; c < 9; c++) { printf("%d ", tabusu[l][c]); } printf("\n"); } } } void jogatina (int tabusu[9][9], int t[9][9]){ int x, y,bomba,resp,i=0,l,c; while (i<10){ printf ("digite a coordenada x: "); scanf ("%d",&x); printf ("digite a coordenada y: "); scanf ("%d",&y); if (x+1<=0 || y+1<=0 || y+1>9 || x+1>9){ printf ("esta coordenada nao existe, tente outra"); break; } printf ("\n digite o que deseja fazer: (1)abrir ou (2)marcar bomba \n"); scanf ("%d", &resp); if (resp=1){ tabusu[x-1][y-1]=t[x-1][y-1]; if (t[x-1][y-1]==-1){ tabusu[x-1][y-1]=-1; { for(l = 0; l < 9; l++) { for(c = 0; c < 9; c++) { printf("%d ", t[l][c]); } printf("\n"); } printf ("BOMBA!, voce PERDEU"); break; } } if (t[x-1][y-1]!=-1){ tabusu[x-1][y-1]=3; } } for(l = 0; l < 9; l++) { for(c = 0; c < 9; c++) { printf("%d ", tabusu[l][c]); } printf("\n"); } i++; } }
  2. Galera,estou fazendo um programa,seguindo a lógica proposta abaixo Escreva um programa que conte de 100 a 999 (inclusive) e exiba, um por linha, o produto dos três dígitos dos números. Por exemplo, inicialmente o programa irá exibir: 0 (1*0*0) 0 (1*0*1) 0 (1*0*2) (...) 0 (1*1*0) 1 (1*1*1) 2 (1*1*2) 9*9*9=729 Faça seu programa dar uma pausa a cada 20 linhas para que seja possível ver todos os números pouco a pouco. Solicite que seja pressionada alguma tecla para ver a próxima sequência de números. A primeira parte consegui fazer,mas não faço ideia de como colocar essas pausas segue o programa: #include <stdio.h> #include <stdlib.h> int main(int argc, char *argv[]) { int i , j , k ,contador; for ( i = 1; i <= 9; i++) for ( j = 0; j <= 9; j++) for (k = 0; k <= 9; k++) printf ("%d = (%d*%d*%d)\n" , i*j*k , i , j , k ); return 0; } se a pausa tem que ser a cada 20 números,pensei em limitar,no for,o i até 1,o j até 2 e 0 k até 0,mas não está funcionando assim.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...