• 締切済み

C++で2点間の内積と距離を求めるプログラム

C++で2点間の内積と距離を求めるプログラムを作ったのですが、コンパイルの時点でエラーが6つも出てしまいます>< 何がいけないのでしょうか? #include <iostream> #include <cmath> using namespace std; int main(void){ int x, y, z, w, l, n; cin >> x >> y >> z >> w; n=x*w+y*z;   l=sqrt((x-z)(x-z)+(y-w)(y-w)); cout << "距離は" << l << "で、内積は" << n; return 0; }

みんなの回答

回答No.2

いきなりエラー内容を記載されていますが、調べられてみたのでしょうか? 教えてくださいと言う事も記載されていないようですし。。。 変数lはdoubleで宣言しましょう。 あと、sqrtの引数の計算が間違っています。 >> l = sqrt((double)((x-z)*(x-z)+(y-w)*(y-w))); 以上

回答No.1

お疲れ様です。 使用しているOSやコンパイラ等は記載しましょう。 また、出ているエラーの内容も記載しましょう。 他人の環境で必ず同じエラーが出るとは限りません。 まず、以下の行の最後に全角スペースが2つ付いています。 >> n=x*w+y*z; これが、コンパイラに意味不明ですと返されています。 全角スペースが入っているかどうか分かるエディタを使用しましょう。 そこでまた、コンパイル出来なければ、調べてみてください。

uo_ou
質問者

お礼

即レスありがとうございます! OSはXPでソフトはVisual C++ 2008 Express Editionです エラー内容は コンパイルしています... 2.13.cpp h:\programming\20091003\2.13\2.13\2.13.cpp(9) : error C2064: 1 引数を取り込む関数には評価されません。 h:\programming\20091003\2.13\2.13\2.13.cpp(9) : error C2064: 1 引数を取り込む関数には評価されません。 ビルドログは "file://h:\Programming\20091003\2.13\2.13\Debug\BuildLog.htm" に保存されました。 2.13 - エラー 2、警告 0 ========== ビルド: 0 正常終了、1 失敗、0 更新不要、0 スキップ ========== です

専門家に質問してみよう