امتیاز موضوع:
  • 14 رأی - میانگین امتیازات: 2.36
  • 1
  • 2
  • 3
  • 4
  • 5
محاسبه فاکتوریل اعداد با استفاده از جاوا اسکرپت
#1
انجام عملیات ریاضی با استفاده از HTML امکان ندارد چون در حقیقت HTML را نمیتوان یک زبان برنامه نویسی محسوب کرد. HTML یک زبان علامت گذاری ابر متن است. برای انجام عملیات ریاضی باید از زبانهای برنامه نویسی نظیر PHP, ASP و JavaScript استفاده کرد. در این مورد استفاده از جاوا اسکرپت به دلیل اینکه برای اجرا شدن به امکانات اضافی در سرور احتیاج ندارد مناسب تر است.
فاکتوریل یک عدد برابر با حاصلضرب همه اعداد صحیح مثبت کوچکتر از عدد مورد نظر است. برای مثال فاکتوریل 5 به صورت زیر محاسبه می شود:


کد:
5! = 5 × 4 × 3 × 2 × 1 => 5! = 120


استثنایی که در فاکتوریل وجود دارد عدد صفر است. فاکتوریل عدد صفر برابر با 1 است.
با استفاده از تابع زیر میتوانیم فاکتوریل یک عدد را به دست آوریم:


کد:
function factorial (aNumber) {    // این قسمت در صورتی که عدد وارد شده به صورت اعشاری باشد آنرا به اولین عدد صحیح بزرگتر از آن گرد میکند
    aNumber = Math.floor(aNumber);
    
    // این قسمت در صورتی که مقدار وارد شده منفی باشد یا عدد نباشد تابع را متوقف میکند
    if(!isFinite(aNumber) || aNumber < 0)
        return false;

    // این قسمت در صورتی که عدد وارد شده صفر باشد مقدار 1 را باز میگرداند
    if(aNumber == 0)
        return 1;
    
    var output = 1;
    for (i = 1; i <= aNumber; i++) {
        output *= i;
    }
    
    return output;
}


حالا نوبت به طراحی قسمت مربوط به وارد کردن عدد و نمایش نتیجه در صفحه می رسد. برای این کار میتوانیم از کد زیر استفاده کنیم:


کد:
عدد مورد نظر را وارد کنید:<input type="text" name="number" id="number" size="10">
<input type="button" value="محاسبه" onclick="CountResult()">
<input type="text" name="result" id="result">


ما برای راحتی کار از تابع زیر برای خواندن عدد مورد نظر و نمایش نتیجه آن استفاده میکنیم:


کد:
function CountResult() {    // خواندن عدد ورودی
    var inputNumber = document.getElementById("number").value;
    // اجرای تابع محاسبه فاکتوریل
    var result = factorial(inputNumber);

    if(!result) {
        alert("مقدار وارد شده معتبر نیست");
    }
    else {
        document.getElementById("result").value = result;
    }
}


در اینجا میتوانید کد صفحه ای را که برای برای پیدا کردن فاکتوریل اعداد طراحی کردیم مشاهده کنید:


کد:
<html><head>
<script type="text/javascript">
function factorial(aNumber) {
    aNumber = Math.floor(aNumber);
    if(!isFinite(aNumber) || aNumber < 0)
        return false;
    if(aNumber == 0)
        return 1;
    var output = 1;
    for (i = 1; i <= aNumber; i++) {
        output *= i;
    }
    return output;
}

function CountResult() {
    var inputNumber = document.getElementById("number").value;
    var result = factorial(inputNumber);
    if(!result) {
        alert("مقدار وارد شده معتبر نیست");
    }
    else {
        document.getElementById("result").value = result;
    }
}
</script>
</head>
<body dir="rtl">
<p>
عدد مورد نظر را وارد کنید:
<input type="text" name="number" id="number" size="10">
<input type="button" value="محاسبه" onclick="CountResult()">
<input type="text" name="result" id="result" size="10">
</p>
</body> </html>




منبع این ارسال

پاسخ
 سپاس شده توسط Behnaz


موضوعات مرتبط با این موضوع...
موضوع نویسنده پاسخ بازدید آخرین ارسال
  آموزش کار با تاریخچه مرورگر با استفاده از جاوا اسکرپت انجمن مخ ها 0 319 01-09-2012، 08:28 PM
آخرین ارسال: انجمن مخ ها
  معرفی جاوا اسکریپت انجمن مخ ها 0 187 01-09-2012، 12:33 AM
آخرین ارسال: انجمن مخ ها
  تنظیم خاصیت float برای عناصر HTML از طریق جاوا اسکرپت انجمن مخ ها 0 287 28-08-2012، 12:10 AM
آخرین ارسال: انجمن مخ ها
  تنظیم خاصیت float برای عناصر HTML از طریق جاوا اسکرپت انجمن مخ ها 0 249 28-08-2012، 12:10 AM
آخرین ارسال: انجمن مخ ها
  دستور شرطی switch در جاوا اسکرپت انجمن مخ ها 0 249 27-08-2012، 11:39 PM
آخرین ارسال: انجمن مخ ها
  نوشتن متن با استفاده از جاوا اسکرپت انجمن مخ ها 0 256 27-08-2012، 11:23 PM
آخرین ارسال: انجمن مخ ها
  نمایش پیام هشدار در صفحه با استفاده از جاوا اسکرپت انجمن مخ ها 0 207 27-08-2012، 11:03 PM
آخرین ارسال: انجمن مخ ها
  نحوه استفاده از کدهای جاوا اسکرپت در صفحه انجمن مخ ها 0 241 27-08-2012، 09:46 PM
آخرین ارسال: انجمن مخ ها
  آموزش جاوا اسکرپت انجمن مخ ها 0 204 27-08-2012، 09:35 PM
آخرین ارسال: انجمن مخ ها

پرش به انجمن:


کاربرانِ درحال بازدید از این موضوع: 1 مهمان