تتم كتابة التطبيق بلغة Java ، مما يسمح للمستخدمين بحساب الإضافة والطرح والضرب والقسمة في 10. إنه مناسب بشكل خاص للطلاب الذين يبدأون في التعلم ، والطرح ، والضرب والقسمة في المدرسة الابتدائية. يمكن أن يمارس قدرتها على الحوسبة بشكل جيد ، ويمكن أن تثير طبيعة اللعبة لتمرير وقت النتيجة اهتمام التعلم!
سيؤدي تشغيل البرنامج إلى إحضار نافذة. اضغط على مفتاح Enter للبدء في الإجابة على الأسئلة. بعد الإجابة ، اضغط على Enter لإصدار أحكام التسجيل والصحة ، ثم ابحث عن السؤال التالي! هناك 10 أسئلة لكل جولة ، و 10 نقاط لكل سؤال. بعد الرد ، تحتاج فقط إلى الضغط على مفتاح Enter ولا توجد أزرار أخرى. يمكن للطلاب رياض الأطفال اللعب!
ومن حيث شرعية المدخلات ، تم أيضًا إجراء مطالبات عمليات الفحص ذات الصلة! الجميع مرحب بهم لاستخدام خيالهم وإثراءه وتحسينه على هذا الأساس!
شفرة:
حزمة AutoScore ؛ استيراد java.awt.color ؛ استيراد java.awt.font ؛ استيراد java.awt.label ؛ استيراد java.awt.list ؛ استيراد java.awt.textfield ؛ استيراد java.awt.event.actionevent ؛ استيراد java.awt.event.keyevent ؛ استيراد java.awt.event.keylistener ؛ استيراد java.text.decimalformat ؛ استيراد javax.swing.jframe ؛ يمتد AutoScore من الفئة العامة jframe {label labrule = new label () ؛ // القواعد الوصف تسمية تسمية laba = new label () ؛ // تسمية الرقم الأول label labop = new label () ؛ // عرض إضافي مضاعف وتسمية التسمية الإضافية labb = new label () label () ؛ // قائمة الإجابة تسمية Label labresult = new label () ؛ // Secondary Label Textfield txtanswer = new textfield () ؛ // إدخال الإجابة مربع int total = 0 ؛ Boolean isfirst = true ؛ // المدى الأول للبرنامج هو وقت بدء طويل ؛ // وقت بدء كل قائمة قائمة قائمة = new list () ؛ // قائمة الإجابات قائمة قائمة مربعات القائمة = قائمة جديدة () } AutoScore () {init () ؛ SetSize (450،630) ؛ setDefaultCloseOperation (exit_on_close) ؛ setVisible (صحيح) ؛ } public void init () {setLayout (null) ؛ SetSize (450،630) ؛ labrule.settext ("القاعدة: كل مجموعة من عشرة أسئلة ، كل سؤال له 10 نقاط ، واضغط على مفتاح Enter للبدء ، و 2 رقمين من العشرية") ؛ labrule.setBounds (36 ، 10 ، 390 ، 72) ؛ labrule.setfont (خط جديد ("مربع الحوار" ، font.plain ، 12)) ؛ getContentPane (). add (labrule) ؛ laba.settext ("x") ؛ Laba.SetBounds (36،82،36،36) ؛ laba.setfont (خط جديد ("مربع الحوار" ، font.plain ، 24)) ؛ getContentPane (). add (laba) ؛ labop.settext ("+") ؛ labop.setfont (خط جديد ("مربع الحوار" ، font.plain ، 24)) ؛ labop.setBounds (72 ، 82 ، 45 ، 36) ؛ getContentPane (). add (labop) ؛ labb.settext ("y") ؛ labb.setfont (خط جديد ("مربع الحوار" ، font.plain ، 24)) ؛ Labb.SetBounds (118 ، 82 ، 33 ، 36) ؛ getContentPane (). add (labb) ؛ label5.settext ("=") ؛ label5.setfont (خط جديد ("مربع الحوار" ، font.plain ، 24)) ؛ label5.setBounds (168 ، 82 ، 24 ، 36) ؛ getContentPane (). add (label5) ؛ labwarn.setfont (خط جديد ("مربع الحوار" ، font.plain ، 12)) ؛ labwarn.setbackground (color.red) ؛ labwarn.setBounds (320 ، 82 ، 80 ، 36) ؛ labwarn.setVisible (false) ؛ getContentPane (). add (labWarn) ؛ labques.settext ("قائمة الإجابة:") ؛ labques.setfont (خط جديد ("مربع الحوار" ، font.plain ، 12)) ؛ labques.setBounds (36 ، 148 ، 100 ، 20) ؛ getContentPane (). add (labques) ؛ labresult.settext ("إحصائيات النتيجة:") ؛ labresult.setfont (خط جديد ("مربع الحوار" ، font.plain ، 12)) ؛ Labresult.SetBounds (36،420،100،20) ؛ labresult.setVisible (false) ؛ getContentPane (). add (labresult) ؛ txtanswer.setfont (خط جديد ("مربع الحوار" ، font.plain ، 24)) ؛ TxtAnswer.setBounds (216 ، 82 ، 100 ، 36) ؛ getContentPane (). add (txtAnswer) ؛ listDisp.setFont (خط جديد ("مربع الحوار" ، font.plain ، 16)) ؛ ListDisp.setBounds (36 ، 174 ، 282 ، 230) ؛ getContentPane (). add (listDisp) ؛ listscore.setfont (خط جديد ("مربع الحوار" ، font.plain ، 16)) ؛ listscore.setBounds (36،450،282،135) ؛ mykey mykey = new MyKey () ؛ // الإجابة مربع الإدخال ، فئة الاستماع إلى لوحة المفاتيح txtanswer.addKeyListener (mykey) ؛ } class mykey تنفذ keylistener {Override public void keytytyped (keyevent e) {} override public void keypressed (keyevent e) {if ( } آخر إذا (" labwarn.setVisible (صحيح) ؛ } آخر {labwarn.setVisible (false) ؛ if (! isNumber (txtAnswer.getText ())) {labwarn.settext ("الرجاء إدخال الرقم!") ؛ labwarn.setVisible (صحيح) ؛ } آخر إذا (المجموع <9) {judge (null) ؛ updateQuestion (NULL) ؛ } آخر {judge (null) ؛ labresult.setVisible (صحيح) ؛ ScorePerformed (NULL) ؛ }}}}} Override public void keyreleSeped (keyevent e) {}} int a = 0 ، b = 0 ؛ سلسلة OP = "" ؛ نتيجة مزدوجة = 0 ؛ decimalformat df = new decimalformat ("#. 00") ؛ / *** طريقة إعداد الأسئلة* param e*/ public void updateQuestion (ActionEvent e) {if (isFirst) {StartTime = System.CurrentTimeMillis () ؛ } if (isOver == true) {listDisp.clear () ؛ listscore.clear () ؛ labresult.setVisible (false) ؛ listscore.setVisible (false) ؛ } isover = false ؛ a = (int) (Math.Random ()*9+1) ؛ B = (int) (Math.Random ()*9+1) ؛ int c = (int) (Math.Random ()*4) ؛ Switch (c) {case 0: op = "+" ؛ النتيجة = A+B ؛ استراحة؛ الحالة 1: OP = "-" ؛ النتيجة = AB ؛ استراحة؛ الحالة 2: OP = "*" ؛ النتيجة = a*b ؛ استراحة؛ الحالة 3: OP = "/" ؛ النتيجة = (A*1.0)/B ؛ // إذا لم يكن من الممكن تقسيم الرقمين ، فقم بدوره وأحتفظ بالأماكن العشرية المكونة من رقمين إذا (string.valueof (result) .Length ()> 10) {result = double.parsedouble (df.format ((A*1.0)/b)) ؛ } استراحة؛ } laba.settext (string.valueof (a)) ؛ labb.settext (string.valueof (b)) ؛ labop.settext (OP) ؛ label5.settext ("=") ؛ txtanswer.settext ("") ؛ isfirst = false ؛ } / *** نتيجة الحكم* param e* / public void judge (ActionEvent e) {try {double value = double.parsedouble (txtanswer.getText ()) ؛ String ResultStr = (Total+1)+"،"+A+OP+B+"="+value ؛ if (value == result) {resulttr+= " /t repact" ؛ اليمين ++ ؛ درجة+= 10 ؛ } آخر {resultstr+= " /الإرهاب الإجابة الصحيحة:"+نتيجة ؛ خطأ ++ ؛ } listDisp.add (النتائج) ؛ المجموع ++ ؛ } catch (تم تجاهل numberFormatexception) {}} / *** درجة إحصائية* param e* / public void scoreperformed (actionevent e) {isover = true ؛ listscore.clear () ؛ listscore.setVisible (true) ؛ سلسلة exitstr = "هذه المرة يجيب على السؤال"+Total+"Dao" ؛ listscore.add (Exitstr) ؛ listscore.add ("الوقت التراكمي:"+(System.CurrentTimeMillis ()-وقت البدء)/1000+"Seconds") ؛ listscore.add ("الإجابة الصحيحة:"+right+"عناصر") ؛ listscore.add ("error+" عناصر ")) Double.Parsedouble (NumberSt) ؛ما سبق هو كل محتوى هذه المقالة. آمل أن يكون ذلك مفيدًا لتعلم الجميع وآمل أن يدعم الجميع wulin.com أكثر.