فاکتوریل و میانگین در ویژوال بیسیک

Allahparast

Member
فاکتوریل| کمک کمک...............

سلام دوستان خواهشا یکی کمک کنه فاکتوریل و میانگین ارقام رو می خوام بگیرم کمک
 

mehrangol

Member
سلام
برای گرفتن فاکتوریل بهترین راه استفاده از توابع بازگشتی است.
برای گرفتن میانگین هم که ساده است مجموع اعداد تقسیم بر تعداد اعداد!
 

mehrangol

Member
سلام
برای گرفتن فاکتوریل بهترین راه استفاده از توابع بازگشتی است.
برای گرفتن میانگین هم که ساده است مجموع اعداد تقسیم بر تعداد اعداد!
 

mehrangol

Member
منظورت رو درست نفهمیدم.
اما اگه درست فهمیده باشم.
برای میانگین که فکر نکنم راهی باشه فقط باید تعداد اعدادو توی یک متغییر یا هر جای دگه ذخیره کنی.
اما برای فاکتوریل هم، که دگه تعداد اعداد نداره!
اگه خواستی هم بدونی فاکتوریل کدوم عدد شده x،باید اون عددو تقسیم بر 2و.... می کنی تا جواب 1 بشه.آخرین عدد هم عدد اصلی هست.
 

the_king

مدیرکل انجمن
سلام دوستان خواهشا یکی کمک کنه فاکتوریل و میانگین ارقام رو می خوام بگیرم کمک

تابع Factorial برای محاسبه فاکتوریل یک عدد (بزرگترین عددی که فاکتوریل اش را محاسبه می کند عدد 27 است که
!27 برابر است با 10888869450418352160768000000) :
کد:
Private Function [B]Factorial[/B](ByVal Value As Variant) As Variant
    Dim Index As Long
    Factorial = CDec(1)
    For Index = 2 To Value
        Factorial = Factorial * CDec(Index)
    Next
End Function

مثلا محاسبه و نمایش فاکتوریل عدد 5 :
کد:
    MsgBox [B]Factorial[/B](5)

تابع Average برای محاسبه میانگین چند عدد :
کد:
Private Function [B]Average[/B](ParamArray Values() As Variant) As Variant
    Dim Sum As Variant
    Dim Index As Long
    If UBound(Values) = LBound(Values) And IsArray(Values(LBound(Values))) Then
        Values = Values(LBound(Values))
    End If
    For Index = LBound(Values) To UBound(Values)
        Sum = Sum + Values(Index)
    Next
    Average = Sum / (UBound(Values) - LBound(Values) + 1)
End Function

این تابع را به دو صورت می توانید فراخوانی کنید، شیوه اول با مقدار دهی تک تک اعداد به عنوان پارامتر ورودی است :
کد:
    MsgBox [B]Average[/B](4, 6, 11, 3)

شیوه دوم بوسیله یک آرایه ای است که اعداد در آن قرار دارند :
کد:
    Dim MyArray() As Variant
    MyArray = Array(4, 7, 1)
    MsgBox [B]Average[/B](MyArray)
 

saalek110

Well-Known Member
دوستان خواهشا عنوان مناسب انتخاب کنید.

عنوان بود: (( فاکتوریل| کمک کمک............... ))
تبدیل شد به: ((فاکتوریل و میانگین در ویژوال بیسیک))

عنوان تاپیک را دقیقا بیانگر موضوع تاپیک انتخاب کنید.
و در آخر زبان برنامه نویسی را هم قید کنید. مثلا ویژوال بیسیک.
 

جدیدترین ارسال ها

بالا