前提・実現したいこと
3次元空間における2点間のユーグリッド距離を求めるプログラム
エラーを解消する方法が分かりません
発生している問題・エラーメッセージ
error: conflicting types for 'd' 28 | double d( struct point *p, struct point *q )
該当のソースコード
c言語
#include <stdio.h>
#include <math.h>
#define NUM 2
double d( struct point *p, struct point *q );
struct point
{
double x;
double y;
double z;
};
int main( void )
{
struct point p[NUM];
double dis;
printf( "点 P の座標: " );
scanf( "%lf %lf %lf", &p[0].x, &p[0].y, &p[0].z );
printf( "点 Q の座標: " );
scanf( "%lf %lf %lf", &p[1].x, &p[1].y, &p[1].z );
dis = d( &p[0], &p[1] ); printf( " 2 点のユーグリッド距離: %lf", dis ); return 0;
}
double d( struct point *p, struct point *q )
{
return sqrt( ( p->x - q->x ) * ( p->x - q->x ) + ( p->y - q->y ) * ( p->y - q->y ) + ( p->z - q->z ) * ( p->z - q->z ) );
}
試したこと
関数の名前を変更した
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。
回答1件
あなたの回答
tips
プレビュー