[INICIANTE]
Boa tarde pessoal, estou com problemas para terminar o seguinte código.
Preciso adicionar os seguintes procedimentos.
1. Utilizar vetores e/ou matrizes;
2. Utilizar estruturas de repetição;
3. Implementar utilizando modularização (no mínimo um módulo de procedimento e dois módulos de ação);
4. Utilizar passagem de parâmetro por valor e referência;
5. Utilizar registros;
6. Utilizar alocação dinâmica de memória;
Alguém poderia dar uma luz?
Já fiz o seguinte:
//Projeto: Calculo de PI por Monte Carlo. Adotando o intervalo entre [0,1].
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <math.h>
int main(){
double px,py,deltax,deltay,DistEuc,Valor_pi;
int Npont_quad = 10000000;
int dentro_circ = 0;
int i;
srand(time(NULL));
for(i = Npont_quad; i > 0; i--){ //Estrutura de repetição para gerar pontos aleatorios.
px = rand() / (double)RAND_MAX; //Primeiro numero sorteado entre 0 e 1.
py = rand() / (double)RAND_MAX; //Segundo numero sorteado entre 0 e 1.
deltax = pow((px- 0.5),2); //Calculo do cateto x da hipotenusa.
deltay = pow((py - 0.5),2); //Calculo do cateto y da hipotenusa.
DistEuc = sqrt(deltax + deltay); //Calculo da distancia euclidiana(distancia entre os pontos)
if (DistEuc <= 0.5){ //Determinar quais pontos estão dentro do circulo
dentro_circ++;
}
}
Valor_pi = 4 * dentro_circ / (double) Npont_quad; //Obtenção do valor de PI.
printf("O valor de PI eh: %lf", Valor_pi); //Imprimir o valor de PI.
}