結對程式設計專案 四則運算 整體總結部落格

2022-07-26 11:39:10 字數 3304 閱讀 2170

實現乙個命令列程式,要求:

根據題目要求,本週專案需要達到的內容主要有以下幾個方面:

1、自動生成分數

2、能夠進行帶分數式子的中綴式轉字尾式

3、能正確進行計算並輸出最終結果

4、能夠讀取使用者輸入的分數並與正確結果進行比較

①表示式的產生:

random產生隨機數,共需要三個隨機數,其一用於決定生成的式子中是否含有分數,第二個隨機數用於分子,第三個隨機數用於分母。

參考教材中的**生成乙個新的類rational,用於設定分數的分子分母並進行分數的加減乘除運算。

呼叫rational將第一部生成的隨機數讀入分數中並進行計算的返回結果。

②表示式的輸出:

使用迴圈輸出,在整數式子的基礎上進行修改,同樣要保證數的個數比運算子多乙個:

if (j <= a)  

else

系統生成的表示式已經存入了字串question1中,下一步需要將字串轉化為字尾式並求值,這樣才能與使用者輸入的數字比對,判斷是否正確.我們參考了老師提供的**,新建了乙個mydc類,用於將帶分數的中綴式轉化為字尾式並呼叫rational類中的方法進行計算:

public class mydc

public string evaluate (string expr)

else

}return result;//輸出結果

}private boolean isoperator (string token)//判斷是否為運算子,注意用equal語句比較字串

private string evalsingleop (char operation, rational op1, rational op2) //分數運算

return result.tostring();

}public rational tranintorational (string s)

else

return r;}}

該步修改較為簡單,我們將上週double型別的right改為了string型別的dui,將正確答案以string型別讀入,並呼叫equals()方法將使用者輸入的字串與正確答案進行比對:

string dui ="";   //代表正確答案dui

dui = dui + evaluator.evaluate(question);

scanner reader2 = new scanner(system.in);

string answer = reader2.nextline(); //讀取使用者輸入的答案

if(answer.equals(dui))

else if(!answer.equals(dui))

該步並沒有太大修改,與上週一樣,在程式開頭定義int型變數count並將其初值定為0,如果計算正確在輸出正確時的輸出時count++,整個迴圈結束之後,(正確題數count÷總題數x×100)%就是正確率lv

float lv=count*100/x;     //正確率

system.out.println("測試結束!正確率為:"+lv+"%");

if (j <= a)  else
下面是在分數後面加空格的**:

if(ch >= '0' && ch <= '9' && ch1 == '/'&&ch2>='0'&&ch2<='9')
修改這兩部分的**後,執行結果如下圖。可以看到不管是運算子還是分數,中間都有空格間隔。

這週的程式設計過程中我們配合明顯比之前好得多,我們在**編寫過程中進行了分工並各司其職。在我們各自的**都編寫完後我們一起進行了**整合,出現問題後他負責逐步除錯查詢問題,我負責解決問題修改**,他也會提出一些有效的解決方法,使我們的專案得以順利進行。部落格的編寫我們也進行了分工,這使得我們的學習效率大大提公升了。總的來說我的夥伴是乙個優秀的合作夥伴。

psp2.1

personal software process stages

預估耗時(分鐘)

實際耗時(分鐘)

planning

計畫· estimate

· 估計這個任務需要多少時間

1015

development

開發· analysis

· 需求分析 (包括學習新技術)

3060

· design spec

· 生成設計文件

2020

· design review

· 設計複審 (和同事審核設計文件)

1015

· coding standard

· **規範 (為目前的開發制定合適的規範)

2030

· design

· 具體設計

3030

· coding

· 具體編碼

120300

· code review

· **複審

3050

· test

· 測試(自我測試,修改**,提交修改)

3060

reporting

報告· size measurement

· 計算工作量

1015

· postmortem & process improvement plan

· 事後總結, 並提出過程改進計畫

1525

合計325

620

結對程式設計專案 四則運算

實現乙個帶有使用者介面的四則運算。生成的題目不能重複。支援負數,例如 1,1 2,3 4 5等。題目的數量 個人專案的要求 數值的範圍 題目中最多幾個運算子 題目中是否有乘除法 題目中或運算過程中有無負數 根據老師的要求我們做的程式中解決了以上的問題。因為在第一次製作的四則運算中我的 就已經製作了乙...

結對程式設計專案 四則運算

結對程式設計專案 四則運算 小組成員 王浩淳 基本功能 1 實現乙個帶有使用者介面的四則運算。2 生成的題目不能重複。3 支援負數。需要支援的基本設定引數 1 題目的數量 2 數值的範圍 3 題目中最多幾個運算子 4 題目中或運算過程中有無有分數 5 題目中是否有乘除法 6 題目中是否有括號 7 題...

結對程式設計專案 四則運算 總結部落格

實現乙個命令列程式,要求 根據題目要求,本週專案需要達到的內容主要有以下幾個方面 1 自動生成分數 2 能夠進行帶分數式子的中綴式轉字尾式 3 能正確進行計算並輸出最終結果 4 能夠讀取使用者輸入的分數並與正確結果進行比較 表示式的產生 用random產生隨機數,共需要三個隨機數,其一用於決定生成的...