天天看點

結對項目-四則運算 “軟體”之更新版

這個作業要求來自于:https://edu.cnblogs.com/campus/gzcc/GZCC-16SE2/homework/2232

結對對象部落格是:https://www.cnblogs.com/CM33/p/9866639.html

結對同學:陳華傑 201606120081

開發環境:lntellij IDEA 

語言:java

一、需求分析

1、從個人項目出發,将程式改裝成一個單機帶使用者界面(不是控制台)的程式,這個程式最基本要達到:

  • 生成題目,單個題目最多不能超過4個運算符,操作數小于100。
  • 使用者可以輸入答案
  • 若使用者輸入答案正确,則提示正确;若答案錯誤,則提示錯誤,并要提示正确答案是多少。

2、拓展方向

  1. 程式可以出帶括号的正整數四則運算,支援分數,除法保留兩位小數,如:(1/3+1)*2 = 2.67,特别注意:這裡是2.67而非2.66,或保持分數形式:8/3
  2. 可以出表達式裡含有負整數(負整數最小不小于-100)的題目,且負數需要帶括号,使用者輸入的結果不用帶括号。如: 2*(-4) = -8
  3. 使用者答題結束以後,程式可以顯示使用者答題所用的時間
  4. 使用者可以選擇出題的個數(最多不能超過5個題目),答題結束可以顯示使用者答錯的題目個數和答對的題目個數
  5. 使用者在第一次答題時,需要使用者輸入使用者名,使用者下次啟動後,程式需要記住使用者前一次輸入的使用者名 
  6. 程式可以出單個整數階乘的題目:如:4!=24
  7. 程式可以設定答題時間,時間設定為整數,機關為秒,最大不能超過120秒,若超過了答題時間未答題,則提示:時間已到,不能答題。
  8. 程式可以設定皮膚功能,可以改變界面的顔色即可。

二、詳細設計

原本是想用js+html+css來完成的後來想了想我們也不會還是想多了還是用java寫吧 T T.

題目數:

if (n > 5 || n < 1) {

JOptionPane.showMessageDialog(null, "題目個數≥1, ≤5", "注意", JOptionPane.INFORMATION_MESSAGE);

} else {

B1.setEnabled(false);

B2.setEnabled(true);

B3.setEnabled(true);

L2.setText("你的答案 :");

L5.setText("答案不為空!");//設定文本

L5.setFont(new Font("幼圓", Font.BOLD, 12));

L5.setForeground(Color.magenta);

T1.setText(null);

star();

}

換膚功能代碼:

if (e.getSource() == B4)//換皮膚
                    {
                        B4.addActionListener(new ActionListener() {
                            @Override
                            public void actionPerformed(ActionEvent cc) {
                                Color ch = JColorChooser.showDialog(p1, "背景顔色",
                                        p1.getBackground());
                                if (ch != null) {
                                    p1.setBackground(ch);
                                    p1.repaint();      

三、分工合作

我主要負責換膚功能還有大于等于一個小于五個題目的功能

結對項目-四則運算 “軟體”之更新版

四 、運作截圖

結對項目-四則運算 “軟體”之更新版
結對項目-四則運算 “軟體”之更新版
結對項目-四則運算 “軟體”之更新版
結對項目-四則運算 “軟體”之更新版

五、項目的時間規劃

PSP2.1 Personal Software Process Stages Time Senior Student Timeminute
Planning 計劃  3  2.5
 Estimate 估計這個任務需要多少時間  15  16
Development 開發  8  7.5
Analysis 需求分析  2  1.5
Design Spec 生成設計文檔  1
Design Review 設計複審  0.5
Coding Standard 代碼規範
Design 具體設計  5  6
 Coding 具體編碼  13  12
 Code Review 代碼複審
Test 測試
Reporting 報告
測試報告
計算工作量
并提出過程改進計劃

六、項目的感想

剛開始接觸結對程式設計對于很多方式都不習慣,雙方生活習慣不一樣,有很多要磨合的地方。代碼規範和實作由于代碼基礎不好,也花費了很多時間,還需要多費功夫。