これが私のコードです:
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
static const int PI = 3.14159; // Defined global constant for PI
int areaR;
int circumferenceR;
int areaD;
int circumferenceD;
int main(void)
{
#define radius 6
#define diameter 12
areaR = PI * pow(radius, 2);
circumferenceR = 2 * PI * radius;
areaD = PI * pow(diameter, 2)) / 4;
circumferenceD = PI * diameter;
puts("Results given a circle of radius 6 and diameter 12:\n");
printf("areaR is %d\n", areaR);
printf("circumferenceR is %d\n", circumferenceR);
printf("areaD is %d\n", areaD);
printf("circumferenceD is %d\n", circumferenceD);
}
これは、面積と円周の値を出力すると想定されており、面積は約 113 に等しく、円周は 37 程度です。それはさておき、私の出力は間違った値を示しています。面積は 108、円周は 36 です。これらの値が間違っていることはわかっていますが、想定よりわずかに小さいだけです。これは私の最初の C プログラムで、どこが間違っているのかわかりません。