アプリ版:「スタンプのみでお礼する」機能のリリースについて

#include <iostream>
#include <cmath>

using namespace std;

int main() {

static const int N = 2;
double va[N]={3,-4};
double vb[N]={4,3};
double a,b;
double p;

for (int i = 0; i < N; ++i) {
for (int i = 0; i < N; ++i) {

}
}

cout << "va + vb = (" ;
for (int i = 0; i < N; ++i) {
cout << va[i] + vb[i];
if (i < N - 1) {
cout << ", ";
}
}
cout << ")" << '\n';

cout << "va - vb = (" ;
for (int i = 0; i < N; ++i) {
cout << va[i] - vb[i];
if (i < N - 1) {
cout << ", ";
}
}
cout << ")" << '\n';

p = 0;
for (int i = 0; i < N; ++i) {
p += va[i] * vb[i];
}
cout << "va・vb = " << p << '\n';

a = 0;
for (int i = 0; i < N; ++i) {
a += va[i] * va[i];
}
a = sqrt(a);

b = 0;
for (int i = 0; i < N; ++i) {
b += vb[i] * vb[i];
}
b = sqrt(b);

if (a * b != 0) {
cout << "cosθ = " << p / (a * b) << '\n';
}

return 0;
}

これで、ベクトルの加減とベクトルの内積とcosθが出るんですが、2つのベクトルを適当に初期化しないといけないんですが、初期化ってこれで初期化ってできてますか?

A 回答 (1件)

> double va[N]={3,-4};


> double vb[N]={4,3};

ここで初期化してんじゃないですか?

この回答への補足

#include <iostream>
#include <cmath>

using namespace std;

int main() {

static const int N = 2;
double va[N]={3,-4};
double vb[N]={4,3};
double a,b;
double p;

for (int i = 0; i < N; ++i) {
for (int i = 0; i < N; ++i) {

}
}

cout << "va + vb = (" ;
for (int i = 0; i < N; ++i) {
cout << va[i] + vb[i];
if (i < N - 1) {
cout << ", ";
}
}
cout << ")" << '\n';

cout << "va - vb = (" ;
for (int i = 0; i < N; ++i) {
cout << va[i] - vb[i];
if (i < N - 1) {
cout << ", ";
}
}
cout << ")" << '\n';

p = 0;
for (int i = 0; i < N; ++i) {
p += va[i] * vb[i];
}
cout << "va・vb = " << p << '\n';

a = 0;
for (int i = 0; i < N; ++i) {
a += va[i] * va[i];
}
a = sqrt(a);

b = 0;
for (int i = 0; i < N; ++i) {
b += vb[i] * vb[i];
}
b = sqrt(b);

if (a * b != 0) {
cout << "cosθ = " << p / (a * b) << '\n';
}

return 0;
}
でも一緒ですよね?

補足日時:2009/11/23 21:08
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!