הוספת הטוויסט
חלק מהיחידה יסודות במסלול ה-Ruby של Coddy. שיעור 57 מתוך 88.
אתגר
קלבשיעור הקודם יצרת תוכנית FizzBuzz שעוברת על מספרים באמצעות המחלקים המוגדרים כברירת מחדל, 3 ו-5. עכשיו, הוסף את הטוויסט בכך שתאפשר להתאים אישית את המחלקים באמצעות פרמטרים עם ערכי ברירת מחדל.
שנה את המתודה fizzbuzz כך שתקבל שלושה ארגומנטים:
n- המספר לבדיקה (חובה)fizz_divisor- המחלק עבור "Fizz" (אופציונלי, ברירת המחדל היא3)buzz_divisor- המחלק עבור "Buzz" (אופציונלי, ברירת המחדל היא5)
המתודה צריכה להשתמש במחלקים המותאמים אישית האלה במקום בערכים קשיחים בעת בדיקת ההתחלקות.
תקבל שלוש שורות קלט:
- הגבול העליון
n - מחלק fizz
- מחלק buzz
עבור בלולאה מ-1 עד n וקרא למתודה המעודכנת שלך fizzbuzz עם שלושת הארגומנטים. הדפס כל תוצאה.
לדוגמה, אם הקלט הוא:
10
2
3הפלט צריך להיות:
1
Fizz
Buzz
Fizz
5
FizzBuzz
7
Fizz
Buzz
Fizzאם הקלט הוא:
15
3
5הפלט צריך להיות:
1
2
Fizz
4
Buzz
Fizz
7
8
Fizz
Buzz
11
Fizz
13
14
FizzBuzzנסו בעצמכם
# Read input
n = gets.chomp.to_i
# Method from previous lesson
def check_divisible(number, divisor)
return number % divisor == 0
end
# Create the fizzbuzz method
def fizzbuzz(n)
if check_divisible(n, 3) && check_divisible(n, 5)
return "FizzBuzz"
elsif check_divisible(n, 3)
return "Fizz"
elsif check_divisible(n, 5)
return "Buzz"
else
return n.to_s
end
end
# Loop through numbers from 1 to n and print the result
(1..n).each do |i|
puts fizzbuzz(i)
endכל השיעורים ביחידה יסודות
4אופרטורים חלק 2
אופרטורים לוגיים חלק 1אופרטורים לוגיים חלק 2חזרה – לוגיקה פשוטהאופרטורים לוגיים חלק 3אופרטורים לוגיים חלק 42משתנים וטיפוסי נתונים
מספרים ומשתניםטיפוס הנתונים מחרוזתטיפוס הנתונים בוליאניטיפוס הנתונים Symbolבדיקת טיפוסי נתוניםמוסכמות שמותסיכום – יצירת משתנים8לולאות
לולאת for עם טווחיםלולאת whilebreaknextסיכום – עצרתלולאת timesלולאת untilלולאות מקוננותסיכום – קלט דינמי3אופרטורים חלק 1
אופרטורים אריתמטייםאופרטור מודולוקיצורי דרך אריתמטייםסיכום – חשבון פשוטאופרטורי השוואה6קלט ופלט בסיסיים
פלט באמצעות putsפלט באמצעות print ו־pפלט באמצעות משתניםקלט באמצעות getsשיטת Chompהמרת טיפוסיםחזרה — מחשבון גילחזרה — אמת או שקר9מתודות
הגדרת מתודהפרמטרים של מתודהערכי החזרהסיכום - מתודת Sigmaסיכום - מתודת האימותערכי ברירת מחדל של פרמטרים15מעקב אחר הוצאות יומיות
סקירת הפרויקטיציאה מהתוכניתתרגלו בעצמכם: קומפיילר Ruby אונליין