• 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
محاسبه درصد نمره و نمره خام
#1
سلام
من میخوام درصد نمره و نیز نمره از 20 رو بدست بیاروم
این آدرس رو ببینید:
کد:
http://student.gozine2.ir/PercentageCalculator
از این کد برای درصد نمره استفاده کردم ولی دقیق دقیق نیست:
کد پی‌اچ‌پی:
$nomre2=$sahih*100;
$nomre3=$nomre2-$ghalat;
$nomre4=$nomre3/$numsoal
اگه بهترشو سراغ دارین ممنون میشم بفرمایید.
مهم تر از اون میخوام نمره رو از 20 نمره نشون بده
که اینجوری استفاده کردم ولی دقیق نیست:
کد:
nomre4/numsoal-2
مثلا وقتی نصف سوالات رو صحیح جواب دادیم، نتیجه بشه
50 درصد و
10 از 20
ممنون
  پاسخ
تشکر شده توسط :
#2
الگوریتمی که اون سایت استفاده کرده رو میتونی تو سروسش ببینی با جی کوئری نوشتن.

کد:
<script type="text/javascript">
        $(document).ready(function () {

            $('#correctCount, #mistakeCount, #noAnswerCount').filter_input({ regex: "[0-9]" });

            $('#mistakeCount, #mistakeCount, #noAnswerCount').keyup(function () {
                $('#mistakeCountAlert').addClass('hidden');  
                if (($('#mistakeCount').val() > 0) && ($('#correctCount').val() != '') && ($('#noAnswerCount').val() != ''))
                    $('#mistakeCountAlert').removeClass('hidden');
            });

            $('#correctCount, #mistakeCount, #noAnswerCount').keyup(function () {
                var totalPercent;
                var withoutMistakePercent;
                var totalQuestion;
                var cntCorrect = parseInt($('#correctCount').val());
                var cntMistake = parseInt($('#mistakeCount').val());
                var cntNoAnswer = parseInt($('#noAnswerCount').val());
                if ((cntCorrect >= 0) && (cntMistake >= 0) && (cntNoAnswer >= 0)) {
                    
                    totalQuestion = (cntCorrect + cntMistake + cntNoAnswer);
                    totalPercent = ((((cntCorrect * 3) - cntMistake) / (totalQuestion * 3)) * 100).toFixed(1);
                    withoutMistakePercent = ((cntCorrect / totalQuestion) * 100).toFixed(1);

                    $('#lblPercent').text('% ' + Helpers.convertToPersianNumbers(totalPercent));
                    $('#lblPercentWithoutMistake').text(Helpers.convertToPersianNumbers( withoutMistakePercent )+' % ');
                    $('#lblQuestionCount').text(Helpers.convertToPersianNumbers(totalQuestion));
                }

                if ((cntCorrect == 0) && (cntMistake == 0) && (cntNoAnswer == 0)) {
                    $('#lblPercent').text('% ' + 0);
                }
            });
        });
    </script>

باقیش با خودت Sleepy
همیشه برای یادگیری، موضوعاتی هست!

فرهاد حسن پور / بیرگیک

  پاسخ
تشکر شده توسط : kingblog
#3
ممنون از پاسخ شما
این کد مشکلم رو حل کرد:
کد:
totalPercent = ((((cntCorrect * 3) - cntMistake) / (totalQuestion * 3)) * 100);
                    withoutMistakePercent = ((cntCorrect / totalQuestion) * 100);
فقط یه مشکل دیگه دارم
محاسبه نمره از 20
یعنی علاوه بر اینکه درصد پاسخها نمایش داده میشه مثلا 75 درصد ، میخوام نمره طرف رو از 20 نیز بگه مثلا :
درصد پاسخها 75 درصد و نمره 15 از 20
اینجوری نوشتم ولی دقیق نیست:
کد:
((cntCorrect / totalQuestion) - cntMistake -2;
  پاسخ
تشکر شده توسط :
#4
در صد کل رو بدست بیار و بعد تقسیم بر ۵ کن نمره دقیق از ۲۰ نمره بدست میاد.
مثلا
کد:
totalPercent = 75;

برای نمایش نمره از 20 بصورت زیر عمل میکنیم.

کد:
num20 = totalPercent /5

که خروجی num20 میشه 15

اگر totalPercent برابر ۱۰۰ باشه خروجی num20 میشه 20
همیشه برای یادگیری، موضوعاتی هست!

فرهاد حسن پور / بیرگیک

  پاسخ
تشکر شده توسط : kingblog


پرش به انجمن:


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