الشريف أحمد
08-19-2009, 02:26 PM
السلام عليكم
السلام عليكم و رحمة الله و بركاته
قمت بتطبيق برنامج من كتاب Introduction.to.Java.Programming.Comprehensive.Ver sion.6th.Edition
أول مرة كنت أنظر للمثال كثيرا ..
هذه المرة كتبته بمفردى بعد أن تركت القراءة فى الكتاب و فى الجافا مدة تزيد عن أسبوعين..
فكتبت و أضفت و تعبت من كتر التفكير ^_^ " البرمجة ديه متعبة "
ده المثال فى الكتاب
الأرقام موجودة فى الكتاب أنا أخذته كوبى من الكتاب
1 import javax.swing.JOptionPane;
2
3 public class SubtractionTutorLoop {
4 public static void main(String[] args) {
5 int correctCount = 0; // Count the number of correct answers
6 int count = 0; // Count the number of questions
7 long startTime = System.currentTimeMillis();
8 String output = "";
9
10 while (count < 10) {
11 // 1. Generate two random single-digit integers
12 int number1 = (int)(Math.random() * 10);
13 int number2 = (int)(Math.random() * 10);
14
15 // 2. If number1 < number2, swap number1 with number2
16 if (number1 < number2) {
17 int temp = number1;
18 number1 = number2;
19 number2 = temp;
20 }
21
22 // 3. Prompt the student to answer "what is number1 – number2?"
23 String answerString = JOptionPane.showInputDialog
24 ("What is " + number1 + " - " + number2 + "?");
25 int answer = Integer.parseInt(answerString);
26
27 // 4. Grade the answer and display the result
28 String replyString;
29 if (number1 - number2 == answer) {
30 replyString = "You are correct!";
31 correctCount++;
32 }
33 else
34 replyString = "Your answer is wrong.\n" + number1 + " - "
35 + number2 + " should be " + (number1 - number2);
36 JOptionPane.showMessageDialog(null, replyString);
37
38 // Increase the count
39 count++;
40
41 output += "\n" + number1 + "-" + number2 + "=" + answerString +
42 ((number1 - number2 == answer) ? " correct" : " wrong");
43 }
44
45 long endTime = System.currentTimeMillis();
46 long testTime = endTime - startTime;
47
48 JOptionPane.showMessageDialog(null,
49 "Correct count is " + correctCount + "\nTest time is " +
50 testTime / 1000 + " seconds\n" + output);
51 }
52 }
http://www.copypastecode.com/9205/
لو وضعت فيه حروف يفشل أو لو تركت الخانة فارغة يفشل أيضا
بعد الأستفسار عرفت دالة String.matches و إستخدمتها و جعلت البريمج يطلب عدد المرات المطلوب حسابها
و الكود الجديد هنا بشكل منسق
MathTest | Copy Paste Code
رابط البريمج
http://ibnyassen.googlepages.com/MathTest.zip
طبعا لازم تكون مركب على الجهاز
java runtime environment
Download Free Java Software - Sun Microsystems
http://www.java.com/en/download/index.jsp
السلام عليكم و رحمة الله و بركاته
قمت بتطبيق برنامج من كتاب Introduction.to.Java.Programming.Comprehensive.Ver sion.6th.Edition
أول مرة كنت أنظر للمثال كثيرا ..
هذه المرة كتبته بمفردى بعد أن تركت القراءة فى الكتاب و فى الجافا مدة تزيد عن أسبوعين..
فكتبت و أضفت و تعبت من كتر التفكير ^_^ " البرمجة ديه متعبة "
ده المثال فى الكتاب
الأرقام موجودة فى الكتاب أنا أخذته كوبى من الكتاب
1 import javax.swing.JOptionPane;
2
3 public class SubtractionTutorLoop {
4 public static void main(String[] args) {
5 int correctCount = 0; // Count the number of correct answers
6 int count = 0; // Count the number of questions
7 long startTime = System.currentTimeMillis();
8 String output = "";
9
10 while (count < 10) {
11 // 1. Generate two random single-digit integers
12 int number1 = (int)(Math.random() * 10);
13 int number2 = (int)(Math.random() * 10);
14
15 // 2. If number1 < number2, swap number1 with number2
16 if (number1 < number2) {
17 int temp = number1;
18 number1 = number2;
19 number2 = temp;
20 }
21
22 // 3. Prompt the student to answer "what is number1 – number2?"
23 String answerString = JOptionPane.showInputDialog
24 ("What is " + number1 + " - " + number2 + "?");
25 int answer = Integer.parseInt(answerString);
26
27 // 4. Grade the answer and display the result
28 String replyString;
29 if (number1 - number2 == answer) {
30 replyString = "You are correct!";
31 correctCount++;
32 }
33 else
34 replyString = "Your answer is wrong.\n" + number1 + " - "
35 + number2 + " should be " + (number1 - number2);
36 JOptionPane.showMessageDialog(null, replyString);
37
38 // Increase the count
39 count++;
40
41 output += "\n" + number1 + "-" + number2 + "=" + answerString +
42 ((number1 - number2 == answer) ? " correct" : " wrong");
43 }
44
45 long endTime = System.currentTimeMillis();
46 long testTime = endTime - startTime;
47
48 JOptionPane.showMessageDialog(null,
49 "Correct count is " + correctCount + "\nTest time is " +
50 testTime / 1000 + " seconds\n" + output);
51 }
52 }
http://www.copypastecode.com/9205/
لو وضعت فيه حروف يفشل أو لو تركت الخانة فارغة يفشل أيضا
بعد الأستفسار عرفت دالة String.matches و إستخدمتها و جعلت البريمج يطلب عدد المرات المطلوب حسابها
و الكود الجديد هنا بشكل منسق
MathTest | Copy Paste Code
رابط البريمج
http://ibnyassen.googlepages.com/MathTest.zip
طبعا لازم تكون مركب على الجهاز
java runtime environment
Download Free Java Software - Sun Microsystems
http://www.java.com/en/download/index.jsp