ত্রিভুজের প্রকারভেদ (সাইড অনুযায়ী)
- সমবাহু (Equilateral): তিনों বাহু সমান।
- সমদ্বিবাহু (Isosceles): যেকোনো দুটি বাহু সমান।
- বিষমবাহু (Scalene): তিনটি বাহুই ভিন্ন।
অ্যালগরিদম
- তিনটি বাহু ইনপুট নিন:
side1, side2, side3 - যদি
side1 == side2 && side2 == side3→ Equilateral - অন্যথায় যদি
side1 == side2 || side2 == side3 || side3 == side1→ Isosceles - অন্যথায় → Scalene
সি প্রোগ্রাম
#include <stdio.h>
int main() {
int side1, side2, side3;
printf("Enter three sides of triangle: ");
scanf("%d %d %d", &side1, &side2, &side3);
// ত্রিভুজ অসমতা যাচাই (Triangle Inequality Theorem)
if (side1 + side2 <= side3 || side2 + side3 <= side1 || side3 + side1 <= side2) {
printf("Invalid triangle sides!\n");
return 0;
}
if (side1 == side2 && side2 == side3)
printf("Equilateral Triangle\n");
else if (side1 == side2 || side2 == side3 || side3 == side1)
printf("Isosceles Triangle\n");
else
printf("Scalene Triangle\n");
return 0;
}
আউটপুট
Run 1: Enter three sides: 3 4 6 Scalene Triangle Run 2: Enter three sides: 2 2 5 Invalid triangle sides! (2+2 <= 5, তাই ত্রিভুজ সম্ভব নয়) Run 3: Enter three sides: 2 2 3 Isosceles Triangle Run 4: Enter three sides: 5 5 5 Equilateral Triangle
উন্নত সংস্করণ: কোণ অনুযায়ী ক্লাসিফিকেশন (অপশনাল)
বাহুসহ কোণও চেক করতে চাইলে (ল_of কosine রুল ব্যবহার করে):
- Right Triangle:
a² + b² == c² - Acute Triangle:
a² + b² > c² - Obtuse Triangle:
a² + b² < c²
সারসংক্ষেপ
- সবসময় ত্রিভুজ অসমতা (Triangle Inequality) চেক করুন প্রথমে।
- Equilateral সবচেয়ে সীমাবদ্ধ কন্ডিশন, তাই সেটি প্রথমে চেক করুন।
- ফ্লোটিং পয়েন্ট সাইডের জন্যEPSILON ব্যবহার করুন।