חישוב משולשים
נוסחה, קוד, ויזואליזציה: שלוש דרכים להבין את אותו מושג
שטח משולש — שלושה ייצוגים של אותו רעיון
# Step 1: semi-perimeter s = (a + b + c) / 2 # Step 2: Heron's product product = s*(s-a)*(s-b)*(s-c) # Step 3: square root = area area = sqrt(product)
שימו לב: הצבעים עקביים — a בטורקיז בציור, בנוסחה ובקוד. b בציאן בכולם. c בכחול בכולם. המיפוי הזה הוא מנגנון הלמידה — לא כל ייצוג בנפרד, אלא החיבורים ביניהם.
מיפוי בין ייצוגים
כל שורה היא אותו דבר בשלוש צורות שונות:
| Math | Python Code | Visual (SVG) | Color |
|---|---|---|---|
| a (BC) | side_a | Side BC (opposite vertex A) | |
| b (AC) | side_b | Side AC (opposite vertex B) | |
| c (AB) | side_c | Side AB (base) | |
| h | height | Orange dashed vertical line | |
| A (area) | area | Shaded interior region | |
| P (perimeter) | perimeter | Sum of all three sides |
מחשבון אינטראקטיבי
שנו את הערכים וראו את כל שלושת הייצוגים מתעדכנים יחד:
סוגי משולשים
שווה צלעות (Equilateral)
כל שלוש הצלעות שוות. כל הזוויות 60°. הצורה הסימטרית ביותר.
שווה שוקיים (Isosceles)
שתי צלעות שוות. שתי זוויות בסיס שוות. סימטרי לציר אנכי.
כללי (Scalene)
כל שלוש הצלעות שונות. כל הזוויות שונות. ללא סימטריה.
ישר זווית (Right Triangle)
זווית אחת של 90°. מקיים את משפט פיתגורס: a² + b² = c².
קוד Python מלא
הקוד המלא נמצא בקובץ triangle_calculator.py — הוא כולל חישוב מקואורדינטות, ויזואליזציה, ותפריט אינטראקטיבי.
# Core computation from TriangleCalculator class def calculate_from_sides(self, side_a, side_b, side_c): """Calculate triangle from three sides (SSS).""" # Validate triangle inequality if not (side_a+side_b > side_c and side_b+side_c > side_a and side_c+side_a > side_b): raise ValueError("triangle inequality violated") # Use law of cosines to find angle A cos_A = (side_b**2 + side_c**2 - side_a**2) / (2 * side_b * side_c) angle_A = math.acos(cos_A) # Calculate C coordinates x = side_b * math.cos(angle_A) y = side_b * math.sin(angle_A) return (0,0), (side_c,0), (x, y) def get_area(self): """Heron's formula: A = sqrt(s(s-a)(s-b)(s-c))""" sides = self.get_side_lengths() a, b, c = sides['BC'], sides['AC'], sides['AB'] # Step 1: semi-perimeter s = (a + b + c) / 2 # Step 2: Heron's product product = s * (s-a) * (s-b) * (s-c) # Step 3: square root = area area = math.sqrt(product) return round(area, 2) # Run: python triangle_calculator.py
זכרו: הקוד הוא תרגום של הנוסחה, לא מקור ההבנה. מישהו היה צריך לדעת את נוסחת הרון כדי לכתוב אותו. הערך של הקוד: פירוק הנוסחה לשלבים ניתנים לעקיבה, אימות עם ערכים אמיתיים, ואיתור שגיאות.