Avatar ·

كيفية تحويل عدد صحيح (int) إلى عدد عشري (float64) في Go؟

مرحباً بالجميع! أنا بدأت للتو في تعلم Go بعد Python وواجهت مشكلة في تحويل الأنواع. في Python اعتدت على أن الأعداد العشرية والأعداد الصحيحة تختلط بسهولة في التعبيرات، لكن في Go كل شيء صارم.

لدي آلة حاسبة بسيطة للمتوسط الحسابي. أحصل على مجموع من الأعداد الصحيحة (int) وعدد العناصر (أيضاً int). أحتاج إلى حساب القيمة المتوسطة، والتي من الواضح أنها قد تكون كسرية. لكن المترجم يشتكي عندما أحاول قسمة int على int والحصول على float.

هذا هو الكود الخاص بي:

package main

import "fmt"

func main() {
    sum := 10   // int
    count := 3  // int
    avg := sum / count // أريد الحصول على 3.333... لكني أحصل على 3
    fmt.Println(avg)
}

أفهم أن في Go قسمة الأعداد الصحيحة ت