回顾:创建可复用代码
本课属于 Coddy GO 学习旅程的“基础知识”单元。第 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" 在强度为 1.0 时,每分钟消耗 10 卡路里
// - "swimming" 在强度为 1.0 时,每分钟消耗 8 卡路里
// - "cycling" 在强度为 1.0 时,每分钟消耗 7 卡路里
// - 其他任何活动在强度为 1.0 时,每分钟消耗 5 卡路里
// 2. 按以下公式计算总热量:基础热量 × duration × intensity
// 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))
}
基础知识中的所有课
自己练习: Go 在线编译器