
前田稔(Maeda Minoru)の超初心者のプログラム入門
![]()
pai=
1: 3.1415 9265 3589 7932 3846 2643 3832 7950 2884 1971
|
![]()
| Pai = 1*6/2 = 3 |

| HT(三角形の高さ) = SQRT(R**2-(LEN/2)**2) = SQRT(1-(LEN/2)**2) |
| LEN2(正12角形の斜辺) = SQRT((LEN/2)**2 + (1-HT)**2)) |

/*★ 円に内接する正六角形から円周率を計算する 前田 稔 ★*/
#include <stdio.h>
#include <math.h>
//★ MAIN PROGRAM
int main()
{ double kaku,len,ht,l2,hw;
int i;
kaku= 6.0;
len= 1.0;
for(i=0; i<15; i++)
{ printf("正多角形=%f LEN=%f PAI=%f\n",kaku,len,len*kaku/2.0);
l2= len/2.0;
ht= sqrt(1.0-l2*l2);
hw= 1.0-ht;
len= sqrt((hw*hw)+(l2*l2));
kaku= kaku+kaku;
}
return(0);
}
|
正多角形= 6.000000 LEN=1.000000 PAI=3.000000
正多角形= 12.000000 LEN=0.517638 PAI=3.105829
正多角形= 24.000000 LEN=0.261052 PAI=3.132629
正多角形= 48.000000 LEN=0.130806 PAI=3.139350
正多角形= 96.000000 LEN=0.065438 PAI=3.141032
正多角形= 192.000000 LEN=0.032723 PAI=3.141452
正多角形= 384.000000 LEN=0.016362 PAI=3.141558
正多角形= 768.000000 LEN=0.008181 PAI=3.141584
正多角形= 1536.000000 LEN=0.004091 PAI=3.141590
正多角形= 3072.000000 LEN=0.002045 PAI=3.141592
正多角形= 6144.000000 LEN=0.001023 PAI=3.141593
正多角形=12288.000000 LEN=0.000511 PAI=3.141593
正多角形=24576.000000 LEN=0.000256 PAI=3.141593
正多角形=49152.000000 LEN=0.000128 PAI=3.141593
正多角形=98304.000000 LEN=0.000064 PAI=3.141593
|
![]()