我們在剛開始上課的時候介紹過乙個小學四則運算自動生成程式的例子,請實現它,要求:
能夠自動生成四則運算練習題
可以定製題目數量
使用者可以選擇運算子
使用者設定最大數(如十以內、百以內等)
使用者選擇是否有括號、是否有小數
使用者選擇輸出方式(如輸出到檔案、印表機等)
最好能提供圖形使用者介面(根據自己能力選做,以完成上述功能為主)
表示式生成函式,個人認為是比較難的地方,要考慮括號的問題
def writef(slist,num,hb):#生成算術表示式
global j,k
s=''
if hb>100:#符號數為3
if j==1 and k==0:
s = '%s %s (%s %s %s) %s %s = ' % (f(num[0]), slist[0],
f(num[1]),slist[1], f(num[2]), slist[2], f(num[3]))
elif j==1 and k==1:
s = '%s %s (%s %s (%s %s %s)) = ' % (f(num[0]), slist[0],
f(num[1]),slist[1], f(num[2]), slist[2], f(num[3]))
elif j==0 and k==1:
s = '%s %s (%s %s %s %s %s) = ' % (f(num[0]), slist[0],
f(num[1]),slist[1], f(num[2]), slist[2], f(num[3]))
if hb == 112 or hb ==212:
s = '(%s %s %s %s %s) %s %s = ' % (f(num[0]), slist[0],
f(num[1]),slist[1], f(num[2]), slist[2], f(num[3]))
elif hb == 121 or hb ==122:
s = '(%s %s %s) %s %s %s %s = ' % (f(num[0]), slist[0],
f(num[1]),slist[1], f(num[2]), slist[2], f(num[3]))
else:
s = '%s %s %s %s %s %s %s = ' % (f(num[0]), slist[0],
f(num[1]),slist[1], f(num[2]), slist[2], f(num[3]))
elif hb>10:#符號數為2
if j==1 :
s = '%s %s (%s %s %s) = ' % (f(num[0]), slist[0],
f(num[1]), slist[1], f(num[2]))
if hb == 12:
s = '(%s %s %s)%s %s = ' % (f(num[0]), slist[0],
f(num[1]), slist[1], f(num[2]))
else:
s = '%s %s %s %s %s = ' % (f(num[0]), slist[0],
f(num[1]), slist[1], f(num[2]))
else :#符號數為1
s ='%s %s %s = ' % (f(num[0]),slist[0],f(num[1]))
return s
運算器頁面
生成的題目和答案存於檔案
這次程式設計是第一次用自己的知識來編寫,雖然題目難度不是很大,但是圖形介面方面知識欠缺,之後會花時間來研究,在以後的作業或其他專案做得更好
軟體工程結對作業
一 題目簡介 本程式是乙個掃雷小遊戲。程式的功能是在執行後生成指定的地雷個數,在滑鼠左鍵點選下尋找地雷,右鍵點選下標記地雷,點選重新開始的按鈕重新開始一盤新遊戲,並給出勝利和失敗的條件 標出所有的地雷和左鍵點中地雷。二 結對分工及過程 結對 趙彤 顧曉倩 趙彤 的編寫和 規範 顧曉倩 程式的分析和程...
軟體工程結對作業
馮雅婧coding.net位址 c 審查表 功能模組名稱 班級類的封裝 審查人劉文彤 審查日期 2019.4.24 名班級類的封裝 作者 馮雅婧檔案結構 重要性審查項 結論標頭檔案和定義檔案的名稱是否合理?是標頭檔案和定義檔案的目錄結構是否合理?是版權和版本宣告是否完整?否重要 標頭檔案是否使用了 ...
軟體工程結對程式設計作業
功能模組名稱 語法分析 審查人王斌 審查日期 2018 4 6 名稱 123 作者 李少鵬檔案結構 重要性 審查項結論 標頭檔案和定義檔案的名稱是否合理?是標頭檔案和定義檔案的目錄結構是否合理?是版權和版本宣告是否完整?無重要 標頭檔案是否使用了 ifndef define endif 預處理塊?無...