2 つの整数の除算の結果を変数に保存し、それをファイルに表示しようとしています。しかし、%fでは機能しません。
理由はわかりませんが、これら2つのテストでは同じ結果が得られません:
コード (C) :
int x1 = 830, y1 = 622;
int x2 = 540, y2 = 300;
float a = (y1 - y2) / (x1 - x2);
// test 1
fprintf(file, "test 1 : \n\n");
fprintf(file, "a = (%d - %d) / (%d - %d) \n", y1, y2, x1, x2);
fprintf(file, "a = %d / %d \n", y1 - y2, x1 - x2);
fprintf(file, "a = %f \n\n", (y1 - y2) / (x1 - x2));
// test 2
fprintf(file, "test 2 : \n\n");
fprintf(file, "a = %f \n\n", a);
結果(私のファイル内):
test 1 :
a = (622 - 300) / (830 - 540)
a = 322 / 290
a = 0.000000
test 2 :
a = 1.000000
ご協力ありがとうございました。