日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

结对编程 王坤彬 201421123108

發布時間:2023/12/8 编程问答 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 结对编程 王坤彬 201421123108 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

碼市地址:https://git.coding.net/linzhao/sizeyunsuangui.git

?

林 釗?-- 201421123105

吳世榮 -- 201421123119

王坤彬 -- 201421123108

?

?

一、題目描述:

  我們在個人作業1中,用各種語言實現了一個命令行的四則運算小程序。進一步,本次要求把這個程序做成GUI,成為一個有基本功能、一定價值的程序。

?

二、需求分析:

  1、記錄用戶的對錯題數,程序退出再啟動的時候,能把以前的對錯數量保存并在此基礎上增量計算。

  2、有計時功能,能顯示用戶開始答題后的消耗時間。

?

三、程序設計:

  1、將程序模塊化,即將不同功能保存在不同模塊中,最后在主模塊上調用不同模塊以實現相關功能。

  2、實現GUI界面。

?

四、代碼展示:

#?-----------------------------------------------------------------------------------------------------------------

Menu:

from PyQt5 import QtCore, QtGui, QtWidgets

class Ui_MainWindow(object):

??? def setupUi(self, MainWindow):

??????? MainWindow.setObjectName("MainWindow")

??????? MainWindow.resize(206, 252)

??????? self.centralwidget = QtWidgets.QWidget(MainWindow)

??????? self.centralwidget.setObjectName("centralwidget")

??????? self.pushButton = QtWidgets.QPushButton(self.centralwidget)

??????? self.pushButton.setGeometry(QtCore.QRect(70, 180, 41, 23))

??????? self.pushButton.setObjectName("pushButton")

??????? self.pushButton_2 = QtWidgets.QPushButton(self.centralwidget)

??????? self.pushButton_2.setGeometry(QtCore.QRect(130, 180, 41, 23))

??????? self.pushButton_2.setObjectName("pushButton_2")

??????? self.textEdit = QtWidgets.QTextEdit(self.centralwidget)

?????? ?self.textEdit.setGeometry(QtCore.QRect(10, 70, 161, 31))

??????? self.textEdit.setObjectName("textEdit")

??????? self.label = QtWidgets.QLabel(self.centralwidget)

??????? self.label.setGeometry(QtCore.QRect(10, 50, 54, 12))

??????? self.label.setObjectName("label")

??????? self.label_2 = QtWidgets.QLabel(self.centralwidget)

??????? self.label_2.setGeometry(QtCore.QRect(10, 110, 54, 12))

??????? self.label_2.setObjectName("label_2")

??????? self.textEdit_2 = QtWidgets.QTextEdit(self.centralwidget)

??????? self.textEdit_2.setGeometry(QtCore.QRect(10, 130, 161, 31))

??????? self.textEdit_2.setObjectName("textEdit_2")

??????? self.textEdit_3 = QtWidgets.QTextEdit(self.centralwidget)

??????? self.textEdit_3.setGeometry(QtCore.QRect(70, 10, 41, 31))

??????? self.textEdit_3.setObjectName("textEdit_3")

??????? self.label_3 = QtWidgets.QLabel(self.centralwidget)

??????? self.label_3.setGeometry(QtCore.QRect(10, 20, 54, 12))

??????? self.label_3.setObjectName("label_3")

??????? MainWindow.setCentralWidget(self.centralwidget)

??????? self.menubar = QtWidgets.QMenuBar(MainWindow)

??????? self.menubar.setGeometry(QtCore.QRect(0, 0, 206, 23))

??????? self.menubar.setObjectName("menubar")

??????? MainWindow.setMenuBar(self.menubar)

??????? self.statusbar = QtWidgets.QStatusBar(MainWindow)

??????? self.statusbar.setObjectName("statusbar")

??????? MainWindow.setStatusBar(self.statusbar)

?

??????? self.retranslateUi(MainWindow)

??????? QtCore.QMetaObject.connectSlotsByName(MainWindow)

?

??? def retranslateUi(self, MainWindow):

??????? _translate = QtCore.QCoreApplication.translate

??????? MainWindow.setWindowTitle(_translate("MainWindow", "MainWindow"))

??????? self.pushButton.setText(_translate("MainWindow", "確定"))

??????? self.pushButton_2.setText(_translate("MainWindow", "退出"))

??????? self.label.setText(_translate("MainWindow", "題目"))

??????? self.label_2.setText(_translate("MainWindow", "答案"))

??????? self.label_3.setText(_translate("MainWindow", "題目數量"))

?

if __name__=="__main__":

??? import sys

??? app=QtWidgets.QApplication(sys.argv)

??? widget=QtWidgets.QWidget()

??? ui=Ui_MainWindow()

??? ui.setupUi(widget)

??? widget.show()

??? sys.exit(app.exec_())

#?-----------------------------------------------------------------------------------------------------------------

Result:

from PyQt5 import QtCore, QtGui, QtWidgets

?

class Ui_MainWindow(object):

??? def setupUi(self, MainWindow):

??????? MainWindow.setObjectName("MainWindow")

??????? MainWindow.resize(237, 127)

??????? self.centralwidget = QtWidgets.QWidget(MainWindow)

??????? self.centralwidget.setObjectName("centralwidget")

??????? self.pushButton = QtWidgets.QPushButton(self.centralwidget)

??????? self.pushButton.setGeometry(QtCore.QRect(140, 50, 75, 23))

??????? self.pushButton.setObjectName("pushButton")

??????? self.textEdit = QtWidgets.QTextEdit(self.centralwidget)

??????? self.textEdit.setGeometry(QtCore.QRect(20, 10, 191, 31))

??????? self.textEdit.setObjectName("textEdit")

??????? MainWindow.setCentralWidget(self.centralwidget)

??????? self.menubar = QtWidgets.QMenuBar(MainWindow)

??????? self.menubar.setGeometry(QtCore.QRect(0, 0, 237, 23))

??????? self.menubar.setObjectName("menubar")

??????? MainWindow.setMenuBar(self.menubar)

??????? self.statusbar = QtWidgets.QStatusBar(MainWindow)

??????? self.statusbar.setObjectName("statusbar")

??????? MainWindow.setStatusBar(self.statusbar)

?

??????? self.retranslateUi(MainWindow)

??????? QtCore.QMetaObject.connectSlotsByName(MainWindow)

?

??? def retranslateUi(self, MainWindow):

??????? _translate = QtCore.QCoreApplication.translate

??????? MainWindow.setWindowTitle(_translate("MainWindow", "MainWindow"))

??????? self.pushButton.setText(_translate("MainWindow", "下一題"))

#?-----------------------------------------------------------------------------------------------------------------

End:

from PyQt5 import QtCore, QtGui, QtWidgets

?

class Ui_MainWindow(object):

??? def setupUi(self, MainWindow):

??????? MainWindow.setObjectName("MainWindow")

??????? MainWindow.resize(205, 158)

??????? self.centralwidget = QtWidgets.QWidget(MainWindow)

??????? self.centralwidget.setObjectName("centralwidget")

??????? self.textEdit = QtWidgets.QTextEdit(self.centralwidget)

??????? self.textEdit.setGeometry(QtCore.QRect(20, 30, 161, 41))

??????? self.textEdit.setObjectName("textEdit")

??????? self.pushButton = QtWidgets.QPushButton(self.centralwidget)

??????? self.pushButton.setGeometry(QtCore.QRect(100, 90, 75, 23))

??????? self.pushButton.setObjectName("pushButton")

??????? MainWindow.setCentralWidget(self.centralwidget)

??????? self.menubar = QtWidgets.QMenuBar(MainWindow)

??????? self.menubar.setGeometry(QtCore.QRect(0, 0, 205, 23))

??????? self.menubar.setObjectName("menubar")

??????? MainWindow.setMenuBar(self.menubar)

??????? self.statusbar = QtWidgets.QStatusBar(MainWindow)

??????? self.statusbar.setObjectName("statusbar")

??????? MainWindow.setStatusBar(self.statusbar)

?

??????? self.retranslateUi(MainWindow)

??????? QtCore.QMetaObject.connectSlotsByName(MainWindow)

?

??? def retranslateUi(self, MainWindow):

??????? _translate = QtCore.QCoreApplication.translate

??????? MainWindow.setWindowTitle(_translate("MainWindow", "MainWindow"))

??????? self.pushButton.setText(_translate("MainWindow", "退出"))

#?-----------------------------------------------------------------------------------------------------------------

main:

import sys

from PyQt5.QtWidgets import QApplication , QMainWindow

from menu import *

from End import *

?

from Result import *

if __name__ == '__main__':

??? app = QApplication(sys.argv)

??? mainWindow = QMainWindow()

??? ui = Ui_MainWindow()

??? ui.setupUi(mainWindow)

??? mainWindow.show()

??? sys.exit(app.exec_())

#?-----------------------------------------------------------------------------------------------------------------

代碼說明:

menu 是菜單界面,提示用戶輸入題目數量并與用戶完成交互式操作;

Result 是結果界面,顯示用戶輸入正確與否;

End 是結束界面,統計用戶最終成績和答題計時;

main 是主函數,在main函數中調用以上三個模塊以實現相關功能。

?

五、程序運行:

  1、運行程序并輸入題目數量,在輸入答案后點擊確定:

  

?

  我們可以看到,如果答案正確就會提示回答正確!

  

?

?

  點擊下一題繼續往下運行:

  

?

?

  回答正確!

  

?

  下一題:

  

?

  回答正確!

  

?

  下一題:

  

?

  提示回答錯誤并給出正確答案!

  

?

  下一題:

  

?

  回答正確!

  

?

  當完成答題時,點擊下一題就會顯示最終結果:

  

?

  以上便是程序運行的效果展示,我們可以看到,程序能夠判斷答題者是否輸入了正確答案并計算出答題者的最終成績,顯示答題時間。

?

六、PSP表格:

PSP2.1

Personal Software Process Stages

Time (%) Senior Student

Time (%)

Planning

計劃

1.5h

2.5h

· Estimate

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

45h

62h

· Analysis

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

4h

4.5h

· Coding?Standard

代碼規范

1h

1h

· Design

具體設計

3h

3h

· Coding

具體編碼

45h

50h

· Test

測試(自我測試,修改代碼,提交修改)

1.5h

1h

Reporting

報告

1.5h

1.5h

?

?總結:

  我做了窗口的設計,是本次作業中相對簡單的環節。除了這個,在隊友們編程的時候我在一旁幫忙核對、審查代碼,當然,代碼是我們輪流寫的和輪流審查的。這個作業對我來說收貨頗多,很有意義,我從中學會了如何與團隊中的其他人合作。

轉載于:https://www.cnblogs.com/wkb2040/p/6551315.html

總結

以上是生活随笔為你收集整理的结对编程 王坤彬 201421123108的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。