এই টিউটোরিয়ালে, আমরা 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