סיכום - יצירת קוד לשימוש חוזר
חלק מהיחידה יסודות במסלול ה-GO של Coddy. שיעור 59 מתוך 109.
אתגר
קלאתה בונה מחשבון קלוריות פשוט לפעילויות שונות.
צור פונקציה יחידה בשם calculateCalories שמחשבת כמה קלוריות נשרפות במהלך פעילות.
הפונקציה צריכה:
- לקבל סוג פעילות (מחרוזת), משך בדקות (int) ורמת עצימות (float64)
- לחשב ולהחזיר את הקלוריות שנשרפו על סמך סוג הפעילות, משך הפעילות והעצימות
השתמש בתעריפי הקלוריות האלה לדקה בעצימות רגילה (1.0):
- ריצה: 10 קלוריות לדקה
- שחייה: 8 קלוריות לדקה
- רכיבה על אופניים: 7 קלוריות לדקה
- כל פעילות אחרת: 5 קלוריות לדקה
יש לחשב את סך הקלוריות כך: קלוריות בסיס × משך × עצימות
נסו בעצמכם
package main
import "fmt"
// calculateCalories קובעת כמה קלוריות נשרפות במהלך פעילות
// פרמטרים:
// - activity: סוג הפעילות הגופנית ("running", "swimming", "cycling" או כל פעילות אחרת)
// - duration: משך הזמן שבו בוצעה הפעילות (בדקות)
// - intensity: מכפיל המייצג את עצימות האימון (1.0 היא עצימות רגילה)
// מחזירה:
// - סך הקלוריות שנשרפו
func calculateCalories(activity string, duration int, intensity float64) float64 {
// TODO: יש לממש פונקציה זו לחישוב הקלוריות שנשרפו על סמך:
// 1. קביעת קצב שריפת הקלוריות הבסיסי לדקה לפי סוג הפעילות:
// - "running" שורפת 10 קלוריות לדקה בעצימות 1.0
// - "swimming" שורפת 8 קלוריות לדקה בעצימות 1.0
// - "cycling" שורפת 7 קלוריות לדקה בעצימות 1.0
// - כל פעילות אחרת שורפת 5 קלוריות לדקה בעצימות 1.0
// 2. חשבו את סך הקלוריות כך: קלוריות בסיס × משך הפעילות × עצימות
// 3. החזירו את כמות הקלוריות שחושבה
return 0 // החליפו במימוש שלכם
}
func main() {
// בדקו את הפונקציה עם פעילויות שונות
fmt.Println("Running for 30 minutes at intensity 1.2:", calculateCalories("running", 30, 1.2))
fmt.Println("Swimming for 45 minutes at intensity 1.0:", calculateCalories("swimming", 45, 1.0))
fmt.Println("Cycling for 60 minutes at intensity 1.5:", calculateCalories("cycling", 60, 1.5))
fmt.Println("Yoga for 60 minutes at intensity 0.8:", calculateCalories("yoga", 60, 0.8))
}
כל השיעורים ביחידה יסודות
4אופרטורי השוואה ולוגיקה
אופרטורי השוואה – חלק 1אופרטורי השוואה – חלק 2אופרטור AND לוגיאופרטור OR לוגיאופרטור NOT לוגייסודות קדימות אופרטוריםסיכום – ביצוע השוואות7זרימת בקרה: לולאות
הסבר על לולאת `for`לולאת `for` – בסיסיתלולאת `for` – תנאי בלבדמילת המפתח `break`מילת המפתח `continue`לולאות מקוננותסיכום – חזרה על פעולות2משתנים וסוגי נתונים בסיסיים
מהו משתנההסקת טיפוס באמצעות `:=`מספרים שלמים (int)מספרים בנקודה צפהערכים בוליאנייםמחרוזותערכי אפסקבועיםמוסכמות לשמותסיכום – משתנים וטיפוסים8פונקציות
הבנת פונקציותהצהרה על פונקציהקריאה לפונקציותפרמטרים של פונקציההחזרת ערך יחידהחזרת מספר ערכיםערכי החזרה בעלי שםיסודות תחום ההשפעה של פונקציהסיכום - יצירת קוד לשימוש חוזר3אופרטורים בסיסיים
אופרטורים אריתמטייםאופרטור חילוקאופרטור מודולואופרטור השמהאופרטורי השמה מורחבתהגדלה והקטנהסיכום – חישובים6זרימת בקרה: תנאים
פקודת `if`מילת המפתח `else`מילת המפתח `else if`הסתרת משתנים בתוך `if`אתחול משתניםפקודת `switch``switch` עם ביטויים`switch` ללא ביטוימילת המפתח `fallthrough`סיכום - קבלת החלטותתרגלו בעצמכם: קומפיילר Go אונליין