Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

การหาความยาวด้านตรงข้ามมุมฉอปจากด้านประกอบสามเหลี่ยมมุมฉากใน Python


บทนำ

เพื่อหาความยาวด้านตรงข้ามมุมฉอป (hypotenuse) ให้ใช้เมธอด numpy.hypot() ใน Python NumPy เมธอดนี้ส่งคืนด้านตรงข้ามมุมฉอปของสามเหลี่ยม (หรือหลายสามเหลี่ยม) นี่คือสเกลาร์หากทั้ง x1 และ x2 เป็นสเกลาร์ เมธอดนี้เทียบเท่ากับ sqrt(x1**2 + x2**2) แบบองค์ประกอบต่อองค์ประกอบ (element-wise) หาก x1 หรือ x2 เป็น scalar_like จะถูก broadcast เพื่อใช้กับแต่ละองค์ประกอบของอาร์กิวเมนต์อีกตัวหนึ่ง พารามิเตอร์คือด้านประกอบของสามเหลี่ยม (หรือหลายสามเหลี่ยม) หาก x1.shape != x2.shape พวกมันต้อง broadcast ไปยังรูปร่างร่วมได้

ขั้นตอน

ขั้นแรก ให้นำเข้าไลบรารีที่จำเป็น:

import numpy as np

สร้างอาร์เรย์ด้วยองค์ประกอบจำนวนเต็ม:

arr = np.ones((3, 3), dtype=int)

แสดงอาร์เรย์ของเรา:

print("อาร์เรย์...\n", arr)

ดูชนิดข้อมูล:

print("\nชนิดข้อมูลของอาร์เรย์...\n", arr.dtype)

ดุมิติของอาร์เรย์:

print("\nมิติของอาร์เรย์...\n", arr.ndim)

ดูจำนวนองค์ประกอบของอาร์เรย์:

print("\nจำนวนองค์ประกอบในอาร์เรย์...\n", arr.size)

หาด้านตรงข้ามมุมฉอป:

print("\nด้านตรงข้ามมุมฉอป..\n", np.hypot((3*arr), (4*arr)))

ตัวอย่างโค้ดสมบูรณ์

import numpy as np
# เพื่อหาด้านตรงข้ามมุมฉอป ใช้ numpy.hypot() ใน Python NumPy
# เมธอดส่งคืนด้านตรงข้ามมุมฉอปของสามเหลี่ยม (หรือหลายสามเหลี่ยม) นี่คือสเกลาร์หากทั้ง x1 และ x2 เป็นสเกลาร์
# เมธอดนี้เทียบเท่ากับ sqrt(x1**2 + x2**2) แบบองค์ประกอบต่อองค์ประกอบ (element-wise)
# หาก x1 หรือ x2 เป็น scalar_like จะถูก broadcast เพื่อใช้กับแต่ละองค์ประกอบของอาร์กิวเมนต์อีกตัวหนึ่ง
# พารามิเตอร์คือด้านประกอบของสามเหลี่ยม (หรือหลายสามเหลี่ยม) หาก x1.shape != x2.shape พวกมันต้อง broadcast ไปยังรูปร่างร่วมได้
# สร้างอาร์เรย์ด้วยองค์ประกอบจำนวนเต็ม
arr = np.ones((3, 3), dtype=int)
# แสดงอาร์เรย์
print("อาร์เรย์...\n", arr)
# ดูชนิดของอาร์เรย์
print("\nชนิดของอาร์เรย์ของเรา...\n", arr.dtype)
# ดุมิติของอาร์เรย์
print("\nมิติของอาร์เรย์ของเรา...\n", arr.ndim)
# ดูจำนวนองค์ประกอบในอาร์เรย์
print("\nจำนวนองค์ประกอบ...\n", arr.size)
# หาด้านตรงข้ามมุมฉอป
print("\nด้านตรงข้ามมุมฉอป..\n", np.hypot((3*arr), (4*arr)))

ผลลัพธ์

อาร์เรย์...
 [[1 1 1]
 [1 1 1]
 [1 1 1]]
ชนิดของอาร์เรย์ของเรา...
 int64
มิติของอาร์เรย์ของเรา...
 2
จำนวนองค์ประกอบ...
 9
ด้านตรงข้ามมุมฉอป..
 [[5. 5. 5.]
 [5. 5. 5.]
 [5. 5. 5.]]