بدست آوردن میانگین و گرد کردن عدد
با سلام خدمت اساتید ، من می خوام یه عدد رو بر 10 تقسیم کنم و جواب رو بصورت نمره دانش آموزی بنویسم مثلا 87/75 تقسیم بر 10 ( 10 / 87.75 ) که جواب اون میشه 8.775 که بر اساس نمرات دانش آموز چون8.77 نمیشه استفاده کرد باید اونو به عدد بالاتر یعنی 9 رند کنه یا اگه بفرض جواب شد 8.24 اونو به 8.25 رند کنه
نقل قول: بدست آوردن میانگین و گرد کردن عدد
ویژوال بیسیک کلاسیک تابع گرد کردن به نزدیکترین عدد صحیح داره، Round، و تابع گرد کردن به پایین هم داره، Int و Fix، ولی تابع گرد کردن به بالا نداره که خودمون میسازیم :
Private Function Ceil(ByVal v As Single) As Single
Ceil = IIf(Fix(v) = v, v, Fix(v) + 1)
End Function
حالا چون 0.25 رو مبنای گرد کردن قرار می دهید و نه 1.0 رو، قبل از گرد کردن به 4 ضرب اش می کنیم و بعد گرد کردن بر 4 تقسیم اش می کنیم :
Private Function Ceil(ByVal v As Single) As Single
v = v * 4
Ceil = IIf(Fix(v) = v, v, Fix(v) + 1)
Ceil = Ceil / 4
End Function
و اینطوری ازش استفاده می کنیم :
Dim n As Single, m As Single
m = 87.75 / 10
n = Ceil(m)
MsgBox n
m = 82.4 / 10
n = Ceil(m)
MsgBox n
نقل قول: بدست آوردن میانگین و گرد کردن عدد