เอาชนะ Gauss ด้วย R
มีเรื่องเล่าที่โด่งดังเกี่ยวกับ Gauss ตอนเด็ก ครูของเขาต้องการให้นักเรียนในชั้นยุ่งอยู่กับงาน จึงสั่งให้บวกตัวเลข 1 ถึง 100 Gauss คำนวณได้เกือบทันทีว่าคำตอบคือ 5050 เขาคิดสูตรคำนวณผลรวมของอนุกรมเลขคณิตขึ้นมาได้ในพริบตา ในความเป็นจริง ยังมีสูตรทั่วไปสำหรับคำนวณผลรวมของอนุกรมที่มีค่าเริ่มต้นและส่วนต่างต่างกันออกไป แต่แทนที่จะมานั่งหาสูตร เราลองใช้ R คำนวณผลรวมของลำดับตัวเลขแทนกันดีกว่า
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
R ระดับกลาง
คำแนะนำการฝึกหัด
- ใช้ฟังก์ชัน
seq()สร้างลำดับตัวเลขตั้งแต่ 1 ถึง 500 โดยเพิ่มทีละ 3 แล้วกำหนดเวกเตอร์ที่ได้ให้กับตัวแปรseq1 - ใช้ฟังก์ชัน
seq()อีกครั้ง สร้างลำดับตัวเลขตั้งแต่ 1200 ถึง 900 โดยลดทีละ -7 แล้วกำหนดให้กับตัวแปรseq2 - คำนวณผลรวมทั้งหมดของทั้งสองลำดับ โดยจะใช้ฟังก์ชัน
sum()สองครั้งแล้วบวกผลลัพธ์เข้าด้วยกัน หรือจะเชื่อมลำดับทั้งสองเข้าด้วยกันก่อนแล้วจึงใช้ฟังก์ชันsum()ครั้งเดียวก็ได้ จากนั้นแสดงผลลัพธ์ใน console
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
# Create first sequence: seq1
# Create second sequence: seq2
# Calculate total sum of the sequences