Menu
Coddy logo textTech
flag Ar iconالعربيةdown icon

ملخص - معالجة المشكلات

جزء من قسم Fundamentals في رحلة GO على Coddy — الدرس 109 من 109.

challenge icon

التحدي

سهل

دعونا نتدرب على معالجة الأخطاء في Go باستخدام برنامج بسيط لتحويل درجات الحرارة.

مهمتك هي تنفيذ دالة تقوم بتحويل درجات الحرارة من الدرجة المئوية (Celsius) إلى الفهرنهايت (Fahrenheit)، مع معالجة الأخطاء بشكل صحيح.

أكمل دالة celsiusToFahrenheit التي تقوم بما يلي:

  • تحويل درجة الحرارة المئوية إلى فهرنهايت باستخدام الصيغة: F = C × 9/5 + 32
  • إرجاع خطأ إذا كانت درجة الحرارة أقل من الصفر المطلق (-273.15°C)

بالنسبة لرسالة الخطأ، يجب عليك إرجاع النص التالي تماماً: "Error: temperature below absolute zero"

تحتوي الدالة main على حالات اختبار للتحقق من تنفيذك.

جرّب بنفسك

package main

import (
	"errors"
	"fmt"
)

// celsiusToFahrenheit يحول الدرجة المئوية إلى فهرنهايت
// يعيد خطأ إذا كانت درجة الحرارة أقل من الصفر المطلق (-273.15 درجة مئوية)
func celsiusToFahrenheit(celsius float64) (float64, error) {
	// TODO: تنفيذ منطق التحويل
	// 1. التحقق مما إذا كانت درجة الحرارة أقل من الصفر المطلق (-273.15 درجة مئوية)
	// 2. إذا كانت صالحة، قم بالتحويل باستخدام الصيغة: F = C × 9/5 + 32
	// 3. إرجاع القيمة والخطأ المناسبين
	return 0, nil
}

func main() {
	// اختبار درجة حرارة صالحة
	fmt.Println("Converting 25°C to Fahrenheit:")
	fahrenheit, err := celsiusToFahrenheit(25)
	if err != nil {
		fmt.Println(err)
	} else {
		fmt.Printf("25°C = %.2f°F\n", fahrenheit)
	}

	// اختبار درجة حرارة صالحة أخرى
	fmt.Println("\nConverting 0°C to Fahrenheit:")
	fahrenheit, err = celsiusToFahrenheit(0)
	if err != nil {
		fmt.Println(err)
	} else {
		fmt.Printf("0°C = %.2f°F\n", fahrenheit)
	}

	// اختبار درجة حرارة غير صالحة (أقل من الصفر المطلق)
	fmt.Println("\nConverting -300°C to Fahrenheit:")
	fahrenheit, err = celsiusToFahrenheit(-300)
	if err != nil {
		fmt.Println(err)
	} else {
		fmt.Printf("-300°C = %.2f°F\n", fahrenheit)
	}
}

جميع دروس Fundamentals