ملخص - إنشاء كود قابل لإعادة الاستخدام
جزء من قسم Fundamentals في رحلة GO على Coddy — الدرس 59 من 109.
التحدي
سهلأنت تقوم ببناء آلة حاسبة بسيطة للسعرات الحرارية لمختلف الأنشطة.
قم بإنشاء دالة واحدة تسمى calculateCalories تحسب عدد السعرات الحرارية المحروقة أثناء نشاط ما.
يجب أن تقوم الدالة بما يلي:
- تأخذ نوع النشاط (string)، والمدة بالدقائق (int)، ومستوى الكثافة (float64)
- تحسب وتعيد السعرات الحرارية المحروقة بناءً على نوع النشاط، والمدة، والكثافة
استخدم معدلات السعرات الحرارية هذه لكل دقيقة عند الكثافة العادية (1.0):
- Running: 10 سعرات حرارية في الدقيقة
- Swimming: 8 سعرات حرارية في الدقيقة
- Cycling: 7 سعرات حرارية في الدقيقة
- أي نشاط آخر: 5 سعرات حرارية في الدقيقة
يجب حساب السعرات الحرارية النهائية كالتالي: السعرات الحرارية الأساسية × المدة × الكثافة
جرّب بنفسك
package main
import "fmt"
// calculateCalories تحدد عدد السعرات الحرارية المحروقة خلال نشاط معين
// المعاملات (Parameters):
// - activity: نوع التمرين ("running"، "swimming"، "cycling"، أو أي نشاط آخر)
// - duration: مدة ممارسة النشاط (بالدقائق)
// - intensity: معامل يمثل مدى شدة التمرين (1.0 هو المعدل الطبيعي)
// تعيد (Returns):
// - إجمالي السعرات الحرارية المحروقة
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. حساب إجمالي السعرات الحرارية كالتالي: السعرات الأساسية × 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))
}
جميع دروس Fundamentals
4معاملات المقارنة والمعاملات المنطقية
معاملات المقارنة - الجزء 1معاملات المقارنة - الجزء 2معامل AND المنطقيمعامل OR المنطقيمعامل NOT المنطقيأساسيات أولوية المعاملاتملخص - إجراء المقارنات7تدفق التحكم: الحلقات التكرارية
شرح حلقة `for`حلقة `for` - أساسياتحلقة `for` - بشرط فقطالكلمة المفتاحية `break`الكلمة المفتاحية `continue`الحلقات المتداخلةملخص - تكرار العمليات2المتغيرات وأنواع البيانات الأساسية
ما هو المتغير؟استنتاج النوع باستخدام `:=`الأعداد الصحيحة (int)أرقام الفاصلة العائمةالقيم المنطقية (Booleans)النصوص (Strings)القيم الصفريةالثوابتقواعد التسميةملخص - المتغيرات والأنواع5الإدخال والإخراج الأساسي
المخرجات المنسقةرموز التنسيقطباعة الأنواعالحصول على مدخلات المستخدم الأساسيةملخص - الإدخال والإخراج8الدوال
فهم الدوالالتصريح عن دالةاستدعاء الدوالمعاملات الدالةإرجاع قيمة واحدةإرجاع قيم متعددةقيم الإرجاع المسماةأساسيات نطاق الدالةملخص - إنشاء كود قابل لإعادة الاستخدام3المعاملات الأساسية
المعاملات الحسابيةمعامل القسمةمعامل باقي القسمةمعامل التعيينمعاملات التعيين المركبةالزيادة والنقصانملخص - الحسابات6تدفق التحكم: الجمل الشرطية
جملة `if`الكلمة المفتاحية `else`الكلمة المفتاحية `else if`تظليل المتغيرات في `if`تهيئة المتغيراتجملة `switch``switch` مع التعبيرات`switch` بدون تعبيرالكلمة المفتاحية `fallthrough`ملخص - اتخاذ القرارات