201421123118 張中結 201421123098 胡丹丹
a.需求分析
這個程式做成GUI(可以是Windows PC 上的,也可以是Mac、Linux,web,手機上的),成為一個有基本功能、一定價值的程式。在下面的功能需求中實作兩個:
- 記錄使用者的對錯總數,程式退出再啟動的時候,能把以前的對錯數量儲存并在此基礎上增量計算。
- 有計時功能,能顯示使用者開始答題後的消耗時間。
- 界面支援中文簡體/中文繁體/英語,使用者可以選擇一種。
b.功能設計
1.支援語言的切換
2.計時功能
3.錯題收集
思維導圖:
c.代碼展示:
錯題收集并儲存在本地
FileWriter fw = null;
try {
//如果檔案存在,則追加内容;如果檔案不存在,則建立檔案
File f=new File("D:/cuoti.txt");
fw = new FileWriter(f, true);
}
catch (IOException e) {
e.printStackTrace();
}
PrintWriter pw = new PrintWriter(fw);
pw.println(L8.getText()+"="+T3.getText()+" "+"正确答案:"+sum1 +'\n');
pw.flush();
try {
fw.flush();
pw.close();
fw.close();
} catch (IOException e) {
e.printStackTrace();
}
B6.addActionListener(new ActionListener(){//錯題本打開
public void actionPerformed(ActionEvent d) {
try
{
Runtime.getRuntime().exec("notepad.exe D:/cuoti.txt");
}
catch(Exception e)
{
System.out.println(e.getMessage());
}
}
});
語言切換:
B3.addActionListener(new ActionListener(){//簡體中文
public void actionPerformed(ActionEvent e) {
L1.setText("題數:");
L2.setText("題目:");
L3.setText("輸入答案:");
L4.setText("結果:");
L5.setText("答對題數:");
L6.setText("答錯題數:");
L7.setText("答題時間:");
B0.setText("開始");
B1.setText("下一題");
B6.setText("錯題集");
//B2.setText("計時");
}
});
B4.addActionListener(new ActionListener(){//繁體中文
public void actionPerformed(ActionEvent e) {
L1.setText("題數");
L2.setText("題目:");
L3.setText("輸入答案:");
L4.setText("結果:");
L5.setText("答對題數:");
L6.setText("答錯題數:");
L7.setText("答題時間:");
B0.setText("開始");
B1.setText("下一題");
B6.setText("錯題集");
}
});
B5.addActionListener(new ActionListener(){//英文
public void actionPerformed(ActionEvent e) {
L1.setText("Question number");
L2.setText("Test:");
L3.setText("Enter the answer:");
L4.setText("Result:");
L5.setText("Right number:");
L6.setText("Wrong number:");
L7.setText("Answer times:");
B0.setText("Run");
B1.setText("Next");
B6.setText("WrongTest");
}
});
d.調試運作
e.總結
兩個人一起程式設計還是第一次,前期在磨合上出現了一些問題,但是也慢慢克服了。我認為開始并沒有1+1>2的效果,但是磨合之後,兩個人的思路就要比一個人的思路更加廣泛,确實能達到大于2的效果。不過我還是喜歡一個人程式設計,也隻是在思路上覺得有人幫助開拓一下還不錯。
碼市位址:https://git.coding.net/zzj201421123118/Second2.git