ခဏလေး ဒီလိုပဲ စဉ်းစားကြည့်
ဒီ lesson ဟာ teaching content အသစ် မဟုတ်ဘဲ Basic chapter မှာ သင်ခဲ့တဲ့ variable, method, conditional (if-else), array concept တွေကို hands-on practice နဲ့ ပြန်လည် အားစမ်းကြည့်ဖို့ ဖြစ်ပါတယ်။ task တစ်ခုချင်းစီကို ကိုယ်တိုင် method အနေနဲ့ ရေးကြည့်ပြီး Ruby syntax ကို လက်ထောက် အလေ့အကျင့်ဖြစ်အောင် ရည်ရွယ်ထားပါတယ်။ ဒီလို short exercise တွေကို regular ကျင့်သားနေတာဟာ Ruby syntax ကို muscle memory ဖြစ်စေဖို့ အထောက်အကူပြုပါတယ်။
လေ့ကျင့်ခန်းများ
Task 1: even_or_odd(n) ဆိုတဲ့ method ရေးပြီး n ဟာ even ဆိုရင် "Even", odd ဆိုရင် "Odd" ဆိုတဲ့ string ကို modulo operator (%) နဲ့ if-else သုံးပြီး ပြန်ပေးပါ။ Task 2: sum_numbers(numbers) ဆိုတဲ့ method ရေးပြီး integer array တစ်ခုကို parameter အနေနဲ့ ယူကာ each loop ဒါမှမဟုတ် sum method နဲ့ စုစုပေါင်းကို ပြန်ပေးပါ။ Task 3: reverse_words(sentence) ဆိုတဲ့ method ရေးပြီး "Ruby is fun" ကို "fun is Ruby" အဖြစ် split, reverse, join method သုံးကာ ပြောင်းလဲပေးပါ။ task တစ်ခုစီကို method သီးခြားစီ ရေးပြီး sample input အနည်းငယ်နဲ့ puts နဲ့ ခေါ်ပြီး result ကို စစ်ဆေးပါ။
Code နမူနာ
# Task 1: Even or Odd
def even_or_odd(n)
# TODO: n ဟာ even ဆိုရင် "Even", odd ဆိုရင် "Odd" ပြန်ပေးပါ
end
# Task 2: Sum of an array
def sum_numbers(numbers)
# TODO: numbers array ရဲ့ ပေါင်းလဒ်ကို ပြန်ပေးပါ
end
# Task 3: Reverse the word order in a sentence
def reverse_words(sentence)
# TODO: "Ruby is fun" -> "fun is Ruby"
end
puts even_or_odd(7)
puts sum_numbers([1, 2, 3, 4, 5])
puts reverse_words("Ruby is fun")even_or_odd(7) က "Odd", sum_numbers([1,2,3,4,5]) က 15, reverse_words("Ruby is fun") က "fun is Ruby" ကို output အနေနဲ့ ပြန်ပေးသင့်ပါတယ်။၅ မိနစ် စမ်းကြည့်
task 3 ကို ဆင်တူတဲ့ palindrome?(word) ဆိုတဲ့ method အသစ်တစ်ခု ထပ်ရေးပြီး word ကို ရှေ့ကနေဖတ်တာနဲ့ နောက်ကနေဖတ်တာ တူညီမတူညီ true/false ပြန်ပေးအောင် 5 minutes အတွင်း စမ်းကြည့်ပါ။
သတိလေးတစ်ချက်
method တစ်ခုစီကို ရေးပြီးတိုင်း puts ဒါမှမဟုတ် p နဲ့ result ကို ချက်ချင်း test လုပ်ကြည့်ပါ - method အားလုံးရေးမှ တစ်ခါတည်း test လုပ်ရင် error ဘယ်နေရာက ဖြစ်တာမှန်း ရှာရခက်ပါတယ်။