Mhdeusi commited on
Commit
fbae1a1
·
verified ·
1 Parent(s): 1819103

Create reward.py

Browse files
Files changed (1) hide show
  1. logic/reward.py +34 -0
logic/reward.py ADDED
@@ -0,0 +1,34 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ class RewardSystem:
2
+ def __init__(self):
3
+ self.quiz_base_reward = 10
4
+ self.exercise_base_reward = 20
5
+ self.perfect_bonus = 5
6
+
7
+ def calculate_quiz_reward(self, correct_answers, total_questions):
8
+ """محاسبه پاداش برای کوییز"""
9
+ base_score = (correct_answers / total_questions) * self.quiz_base_reward
10
+ if correct_answers == total_questions:
11
+ base_score += self.perfect_bonus
12
+ return round(base_score)
13
+
14
+ def calculate_exercise_reward(self, is_correct, keyword_matches, total_keywords):
15
+ """محاسبه پاداش برای تمرین"""
16
+ if is_correct:
17
+ base_reward = self.exercise_base_reward
18
+ # پاداش اضافه برای تطابق بیشتر کلمات کلیدی
19
+ match_bonus = (keyword_matches / total_keywords) * 5
20
+ return round(base_reward + match_bonus)
21
+ return 0
22
+
23
+ def get_feedback_message(self, reward, max_reward):
24
+ """پیام بازخورد بر اساس پاداش"""
25
+ percentage = (reward / max_reward) * 100
26
+
27
+ if percentage >= 90:
28
+ return "عالی! عملکرد فوق‌العاده‌ای داشتید! 🎉"
29
+ elif percentage >= 70:
30
+ return "خوب! در مسیر درستی قرار دارید! 👍"
31
+ elif percentage >= 50:
32
+ return "قابل قبول. می‌توانید بهتر عمل کنید! 💪"
33
+ else:
34
+ return "نیاز به مطالعه بیشتر دارید. ادامه دهید! 📚"