কম্পিউটার

C++ এ জটিল সংখ্যা ব্যবহার করে জ্যামিতি


এই বিভাগে, আমরা দেখব কিভাবে C++ এ STL থেকে জটিল ক্লাস ব্যবহার করে পয়েন্ট ক্লাস করা যায়। এবং জ্যামিতি সংক্রান্ত কিছু সমস্যার উপর তাদের প্রয়োগ করুন। জটিল সংখ্যাটি STL (#include )

থেকে জটিল শ্রেণীর ভিতরে উপস্থিত রয়েছে

ডিফাইনিং পয়েন্ট ক্লাস

কমপ্লেক্স থেকে পয়েন্ট করার জন্য, আমরা কমপ্লেক্সের নাম <ডবল> পয়েন্ট হিসাবে পরিবর্তন করব, তারপর জটিল ক্লাসের x-এ real() এবং কমপ্লেক্স ক্লাসের y-এ imag() পরিবর্তন করব। এইভাবে, আমরা পয়েন্ট ক্লাস সিমুলেট করতে পারি।

# include <complex>
typedef complex<double> point;
# define x real()
# define y imag()

আমাদের মনে রাখতে হবে যে x এবং y ম্যাক্রো হিসাবে প্রয়োগ করা হয়েছে, এগুলি ভেরিয়েবল হিসাবে প্রয়োগ করা যাবে না।

উদাহরণ

আরো ভালোভাবে বোঝার জন্য আসুন নিচের বাস্তবায়ন দেখি -

#include <iostream>
#include <complex>
using namespace std;
typedef complex<double> point;
#define x real()
#define y imag()
int main() {
   point my_pt(4.0, 5.0);
   cout << "The point is :" << "(" << my_pt.x << ", " << my_pt.y << ")";
}

আউটপুট

The point is :(4, 5)

জ্যামিতি প্রয়োগ করতে, আমরা দেখতে পারি যে উৎপত্তি থেকে P এর দূরত্ব (0, 0), এটিকে −abs(P) হিসাবে চিহ্নিত করা হয়। অক্ষ X থেকে OP দ্বারা তৈরি কোণ যেখানে O হল উৎপত্তি:arg(z)। উৎপত্তি সম্পর্কে P এর ঘূর্ণন হল P * polar(r, θ).

উদাহরণ

আরো ভালোভাবে বোঝার জন্য আসুন নিচের বাস্তবায়ন দেখি -

#include <iostream>
#include <complex>
#define PI 3.1415
using namespace std;
typedef complex<double> point;
#define x real()
#define y imag()
void print_point(point my_pt){
   cout << "(" << my_pt.x << ", " << my_pt.y << ")";
}
int main() {
   point my_pt(6.0, 7.0);
   cout << "The point is:" ;
   print_point(my_pt);
   cout << endl;
   cout << "Distance of the point from origin:" << abs(my_pt) << endl;
   cout << "Tangent angle made by OP with X-axis: (" << arg(my_pt) << ") rad = (" << arg(my_pt)*(180/PI) << ")" << endl;
   point rot_point = my_pt * polar(1.0, PI/2);
   cout << "Point after rotating 90 degrees counter-clockwise, will be: ";
   print_point(rot_point);
}

আউটপুট

The point is:(6, 7)
Distance of the point from origin:9.21954
Tangent angle made by OP with X-axis: (0.86217) rad = (49.4002)
Point after rotating 90 degrees counter-clockwise, will be: (-6.99972,
6.00032)

  1. সি++ এ ডুডেনি নম্বর

  2. C++ ব্যবহার করে বন্ধনীর একটি স্ট্রিংয়ে একটি সমান পয়েন্ট খুঁজুন।

  3. অ্যারে ব্যবহার করে সংখ্যার গড় গণনা করার জন্য C++ প্রোগ্রাম

  4. Recursion ব্যবহার করে প্রাকৃতিক সংখ্যার যোগফল খুঁজে পেতে C++ প্রোগ্রাম