ผลต่างระหว่างรุ่นของ "418342 ภาคปลาย 2552/ปฏิบัติการที่ 2"
Ckw (คุย | มีส่วนร่วม) |
|||
แถว 20: | แถว 20: | ||
จงแก้ไข method sleep ในแบบฝึกหัดที่ 2 เพื่อให้รับค่าพารามิเตอร์ที่จะถูกส่งผ่านเข้ามา ซึ่งใช้เป็นค่าที่บอกถึงจำนวนเวลาหน่วยวินาทีที่ให้มีการแสดงข้อความ "I'm taking a nap" อย่างต่อเนื่อง โดยให้ข้อความที่แสดงแต่ละครั้งจะมีเวลาห่างกันประมาณ 1 วินาที | จงแก้ไข method sleep ในแบบฝึกหัดที่ 2 เพื่อให้รับค่าพารามิเตอร์ที่จะถูกส่งผ่านเข้ามา ซึ่งใช้เป็นค่าที่บอกถึงจำนวนเวลาหน่วยวินาทีที่ให้มีการแสดงข้อความ "I'm taking a nap" อย่างต่อเนื่อง โดยให้ข้อความที่แสดงแต่ละครั้งจะมีเวลาห่างกันประมาณ 1 วินาที | ||
</blockquote> | </blockquote> | ||
+ | <blockquote> | ||
=== แนะนำ === | === แนะนำ === | ||
* เราสามารถใช้ method sleep แล้วตามด้วยตัวเลขจำนวนเต็ม เพื่อบอกถึงจำนวนวินาทีที่ sleep จะพักการทำงานจนกว่าเวลาที่กำหนดนั้นจะหมดลง | * เราสามารถใช้ method sleep แล้วตามด้วยตัวเลขจำนวนเต็ม เพื่อบอกถึงจำนวนวินาทีที่ sleep จะพักการทำงานจนกว่าเวลาที่กำหนดนั้นจะหมดลง | ||
* เราสามารถใช้ method now ซึ่งเป็น method ของ class Time เพื่อใช้บอกเวลาของระบบในปัจจุบัน | * เราสามารถใช้ method now ซึ่งเป็น method ของ class Time เพื่อใช้บอกเวลาของระบบในปัจจุบัน | ||
* หากเรานำค่าที่ได้จาก now มาบวกกับเลขจำนวนเต็มจำนวนหนึ่ง ผลที่ได้กลับมาจะเป็นเวลาที่ถูกบวกเพิ่มเข้าไปด้วยตัวเลขจำนวนนั้นที่มีหน่วยเป็นวินาที | * หากเรานำค่าที่ได้จาก now มาบวกกับเลขจำนวนเต็มจำนวนหนึ่ง ผลที่ได้กลับมาจะเป็นเวลาที่ถูกบวกเพิ่มเข้าไปด้วยตัวเลขจำนวนนั้นที่มีหน่วยเป็นวินาที | ||
+ | </blockquote> | ||
== แบบฝึกหัด 3 == | == แบบฝึกหัด 3 == |
รุ่นแก้ไขเมื่อ 03:30, 13 พฤศจิกายน 2552
แบบฝึกหัด 1
จงสร้าง class Cat ที่สืบทอดมาจาก class Animal โดยให้เพิ่ม method ที่มีชื่อว่า nap เข้าไปใน class Cat นี้ และให้ใส่คำสั่ง puts ไว้ใน nap เพื่อแสดงข้อความว่า "I'm taking a nap"
class Animal def eat thing puts "I'm eating #{thing}" end end
แนะนำ
Ruby กำหนดการสืบทอดโดยใช้เครื่องหมาย < ดังลักษณะการใช้ข้างล่างนี้
class B < A # เป็นการกำหนดให้ B เป็น subclass ของ A end
แบบฝึกหัด 2
จงแก้ไข method sleep ในแบบฝึกหัดที่ 2 เพื่อให้รับค่าพารามิเตอร์ที่จะถูกส่งผ่านเข้ามา ซึ่งใช้เป็นค่าที่บอกถึงจำนวนเวลาหน่วยวินาทีที่ให้มีการแสดงข้อความ "I'm taking a nap" อย่างต่อเนื่อง โดยให้ข้อความที่แสดงแต่ละครั้งจะมีเวลาห่างกันประมาณ 1 วินาที
แนะนำ
- เราสามารถใช้ method sleep แล้วตามด้วยตัวเลขจำนวนเต็ม เพื่อบอกถึงจำนวนวินาทีที่ sleep จะพักการทำงานจนกว่าเวลาที่กำหนดนั้นจะหมดลง
- เราสามารถใช้ method now ซึ่งเป็น method ของ class Time เพื่อใช้บอกเวลาของระบบในปัจจุบัน
- หากเรานำค่าที่ได้จาก now มาบวกกับเลขจำนวนเต็มจำนวนหนึ่ง ผลที่ได้กลับมาจะเป็นเวลาที่ถูกบวกเพิ่มเข้าไปด้วยตัวเลขจำนวนนั้นที่มีหน่วยเป็นวินาที
แบบฝึกหัด 3
หากเรามีข้อมูลตัวเลขจำนวนเต็มบวกที่ถูกเก็บอยู่ในอะเรย์ 2 ชุดซึ่งมีขนาดเท่ากัน ให้ลองเขียนโค้ด ruby ที่ทำการบวกข้อมูลตัวเลขที่อยู่ในอะเรย์ทั้ง 2 ดังลักษณะที่ปรากฏข้างล่างนี้ โดยให้ผลลัพธ์ของการบวกนี้ไปเก็บในอะเรย์อีกชุดนึง
[ 20 40 10 61 .............. ] <- อะเรย์ชุดที่ 1 + [ 15 35 0 31 .............. ] <- อะเรย์ชุดที่ 2 ---------------------------------------- [ 35 75 10 92 .............. ] <- อะเรย์ผลลัพธ์
แนะนำ
โค้ดด้านล่างนี้สามารถสร้างเลขจำนวนเต็มที่อยู่ระหว่าง 0-99 จำนวน 20 ตัวไว้ในอะเรย์ arr
arr = [] 20.times { arr << rand(100) }