前提・実現したいこと
ここに質問の内容を詳しく書いてください。
(例)PHP(CakePHP)で●●なシステムを作っています。
■■な機能を実装中に以下のエラーメッセージが発生しました。
発生している問題・エラーメッセージ
モンテカルロ法でc言語を使い、半径2の円の面積を求める問題で、半径1の円の面積は求めることができたのですが、半径2の面積がどうしても出てきません。どう直したらいいのか、ご教授お願いします
該当のソースコード
c言語
1#include <stdio.h> 2#include <stdlib.h> 3#include <math.h> 4#include <time.h> 5 6int main(void){ 7 8 double x,y; 9 int n = 0; 10 double p; 11 12 srand(time(NULL)); 13 14 for(int i = 1; i <= 1000000; i++){ 15 16 x = rand() / (RAND_MAX + 1.0) * 2; 17 y = rand() / (RAND_MAX + 1.0) * 2; 18 19 if((pow(x - 2.0, 2.0) + pow(y - 2.0, 2.0)) <= 2){ 20 21 n++; 22 23 } 24 25 } 26 27 p = 4.0 * n /1000000; 28 29 printf("求める面積は%f\n",p); 30 31 return 0; 32 33}
試したこと
pow関数の中の数字を変えたり、x, yの*の後を変えたりしてみました
補足情報(FW/ツールのバージョンなど)
現状では、どのような問題があるのでしょうか?