หนึ่งวัน หนึ่ง Liners กับ Python — สัปดาห์ที่ 8

Feb 21 2023
Computing Sequences & Series ตอนนี้เป็นเวลาที่ดีที่จะพูดถึง Math Rock เพราะในสัปดาห์นี้เราจะมาดูกันว่าเราสามารถสร้างความหายนะทางตัวเลขได้มากเพียงใดด้วยการคำนวณแบบ One Liner รหัสทั้งหมดสำหรับชุดนี้สามารถพบได้ที่นี่

ลำดับและซีรี่ส์คอมพิวเตอร์

ภาพถ่ายโดย Tom Wilson บน Unsplash

ตอนนี้เป็นเวลาที่ดีที่จะพูดถึง Math Rock เพราะในสัปดาห์นี้เราจะมาดูกันว่าเราสามารถสร้างความหายนะทางตัวเลขได้มากเพียงใดด้วยการคำนวณ One Liner

รหัสทั้งหมดสำหรับชุดนี้สามารถพบได้ที่นี่

19 ก.พ. 2566

คำนวณอนุกรมเลขคณิต

start, end, diff = 5, 100, 5

# A viable, yet naive approach
series = sum([i for i in range(start, end+1, diff)])

# Purely analytical solution
series = ((((end-start)/diff)+1) * (start+end)) * 0.5

1 + 3 + 5 + 7 = 16

โซลูชันทั้งสองข้างต้นให้ผลลัพธ์เหมือนกัน อันที่สองน่าจะดีกว่าเพราะไม่ต้องวนซ้ำ ครึ่งแรกมาจากจำนวนคำศัพท์ในลำดับ และครึ่งหลังคำนวณค่าเฉลี่ยระหว่างจุดเริ่มต้นและจุดสิ้นสุด คูณค่าทั้งสองเข้าด้วยกันแล้วคุณจะได้ผลรวมของลำดับ (เช่น อนุกรมเลขคณิต)