এটি একটি C++ প্রোগ্রাম যা একটি প্রদত্ত তিনটি পয়েন্টের সেট একটি একক লাইনে আছে কিনা তা পরীক্ষা করার জন্য। এই বিন্দু দ্বারা গঠিত ত্রিভুজের ক্ষেত্রফল শূন্যের সমান হলে তিনটি বিন্দু একটি একক রেখায় থাকে৷
ত্রিভুজের ক্ষেত্রফল হল −
0.5 * (x1 * (y2 - y3) + x2 * (y3 - y1) + x3 * (y1 - y2))।
অ্যালগরিদম
এলোমেলোভাবে পয়েন্ট তৈরি করা শুরু করুন। উপরের সূত্র ব্যবহার করে এলাকা গণনা করুন। ক্ষেত্রফল> 0 হলে বিন্দুগুলো সরলরেখায় থাকে না। অন্যথায় যদি এলাকা <0 হয় তাহলে বিন্দুগুলো সরলরেখায় থাকে না। অন্যথায় বিন্দুগুলো সরলরেখায় থাকে। শেষউদাহরণ
#include#include #include নেমস্পেস ব্যবহার করে std;static int L =1;static int U=20;int main(int argc, char **argv) { int x3, y3, x1, x2, y1, y2; সময়_টি সেকেন্ড; সময় (&সেকেন্ড); srand((আনসাইন করা int) সেকেন্ড); // Rand() ব্যবহার করে এলোমেলোভাবে পয়েন্ট তৈরি করুন। x1 =rand() % ( U- L+ 1) + L; y1 =rand() % (U - L+ 1) + L; x2 =rand() % (U - L + 1) + L; y2 =rand() % (U - L+ 1) + L; x3 =rand() % (U - L+ 1) + L; y3 =rand() % (U - L+ 1) + L; cout <<"বিন্দুগুলি হল:(" < 0) cout <<"বিন্দুগুলো সরলরেখায় পড়ে না"; else cout <<"বিন্দুগুলো সরলরেখায় থাকে";}
আউটপুট
বিন্দুগুলি হল:(20, 9), (6, 13), এবং (13, 11) বিন্দুগুলি সরলরেখায় অবস্থান করে, বিন্দুগুলি হল:(9, 15), (4, 15), এবং (11) , 16) পয়েন্টগুলি সরলরেখায় পড়ে না