इस ट्यूटोरियल में, हम यह समझने के लिए एक प्रोग्राम पर चर्चा करेंगे कि C++ में वेक्टर मात्राओं को लागू करने के लिए क्लास का उपयोग कैसे करें।
सदिश राशियाँ वे होती हैं जिनमें परिमाण और दिशा दोनों होते हैं। यहां हम उन्हें कक्षाओं का उपयोग करके लागू करेंगे और फिर उन पर बुनियादी संचालन करेंगे।
उदाहरण
#include <cmath> #include <iostream> using namespace std; class Vector { private: int x, y, z; //components of the Vector public: Vector(int x, int y, int z){ this->x = x; this->y = y; this->z = z; } Vector operator+(Vector v); Vector operator-(Vector v); int operator^(Vector v); Vector operator*(Vector v); float magnitude(){ return sqrt(pow(x, 2) + pow(y, 2) + pow(z, 2)); } friend ostream& operator<<(ostream& out, const Vector& v); //outputting the vector }; // Addition of vectors Vector Vector::operator+(Vector v){ int x1, y1, z1; x1 = x + v.x; y1 = y + v.y; z1 = z + v.z; return Vector(x1, y1, z1); } // Subtraction of vectors Vector Vector::operator-(Vector v){ int x1, y1, z1; x1 = x - v.x; y1 = y - v.y; z1 = z - v.z; return Vector(x1, y1, z1); } // Dot product of vectors int Vector::operator^(Vector v){ int x1, y1, z1; x1 = x * v.x; y1 = y * v.y; z1 = z * v.z; return (x1 + y1 + z1); } // Cross product of vectors Vector Vector::operator*(Vector v){ int x1, y1, z1; x1 = y * v.z - z * v.y; y1 = z * v.x - x * v.z; z1 = x * v.y - y * v.x; return Vector(x1, y1, z1); } ostream& operator<<(ostream& out, const Vector& v){ out << v.x << "i "; if (v.y >= 0) out << "+ "; out << v.y << "j "; if (v.z >= 0) out << "+ "; out << v.z << "k" << endl; return out; } int main(){ Vector V1(3, 4, 2), V2(6, 3, 9); cout << "V1 = " << V1; cout << "V2 = " << V2; cout << "V1 + V2 = " << (V1 + V2); cout << "Dot Product is : " << (V1 ^ V2); cout << "Cross Product is : " << (V1 * V2); return 0; }
आउटपुट
V1 = 3i + 4j + 2k V2 = 6i + 3j + 9k V1 + V2 = 9i + 7j + 11k Dot Product is : 48 Cross Product is : 30i -15j -15k