int coordenadas_tiro(Coordenadas c, Mapa mapa){ coordenadas_set_i(c, (sorteia(get_mapa_m(mapa))) - 1); coordenadas_set_j(c, (sorteia(get_mapa_n(mapa))) - 1); if(c == NULL) return 1; return 0; }
float monte_carlo (float a, float b, long *xi, int n) { float x, y, M, /* Valor máximo que f(x) pode assumir em [a; b] */ area, prop; /* Proporção dos pontos contidos em f(X) */ int i, pertence = 0; M = raiz (1 - (a)); /* Uma vez que "a" é o menor valor de [a, b] e "f" um semi circulo */ for (i = n; i > 0; -- i) { sorteia (a, b, M, xi, &x, &y); if (y < (raiz (1 - (x * x))) || sao_iguais (raiz (1 - (x * x)), y)) ++ pertence; } prop = (float) pertence / n; area = prop * M * (b - a); return area; }
tiro coordenadas_tiro(char** mapa, int M, int N) { //a função não utiliza a própria matriz, mas preferi manter o padrão tiro t; t.tiro_linha = sorteia(M) - 1; t.tiro_coluna = sorteia(N) - 1; return t; }
int main (int argc, char** argv) { char palavra[TAM], letra, novo[TAM], repete = 's'; int tamanho, erros, i, troca, vit; while (repete == 's') { system ("clear"); // Inicia variaveis erros = troca = vit = 0; // Limpa memoria for (i=0; i<TAM; i++) { palavra[i] = '\0'; novo[i] = '\0'; } sorteia(palavra); tamanho = strlen(palavra); // Desenha traços _ linhas(tamanho, novo); while ( (erros < 7) && (vit == 0) ) { printf("\t\t\tJOGO da FORCA \n\n\n"); boneco (erros); printf("\t%s\n\n", novo); printf (" Digite uma letra: "); scanf (" %c", &letra); troca = 0; for (i=0; i<tamanho; i++) { if (palavra[i] == letra) { novo[i] = letra; troca = 1; } } if (troca == 0) erros++; system ("clear"); // Compara palavra original com a nova vit = 1; for (i=0; i<tamanho; i++) { if (novo[i] != palavra[i]) vit = 0; } } // Verifica Vitoria if (vit) printf ("\nParabens!!!"); else { printf ("\nPerdeu kkkk\n"); printf ("\nO certo é \"%s\"", palavra); } // Pergunta para jogar de novo do { system("clear"); printf ("\nMais uma vez?: "); scanf (" %c", &repete); } while (( repete != 's' ) && ( repete != 'n')); } return (EXIT_SUCCESS); }
void coordenadas_tiro (int *linhaTiro, int *colunaTiro ,int linha, int coluna) { *linhaTiro = sorteia(linha - 1); *colunaTiro = sorteia(coluna - 1); }