c++這門課讓我收益頗多,像github,,命令列等都是之前沒有遇到的,這些都給我們提供了乙個途徑來交流與學習與計算機有關的知識。
在第一次電梯作業出來時,我想的就是最優,然後到了最後,程式甚至都執行不起來,理想和現實差距還是很大的,在我的設想中,電梯要到哪一層的判斷應該完全交由計算機來控制,因為由人來調控的話,人需要考慮到各種特殊情況,而且難以包括所有可能;由計算機控制的話,計算機模擬各種方案,然後選擇時間最短的方案。但是這樣也同樣存在問題,方案太多,程式效率低,我也沒能成功的實現這個方案,於是我選擇了第乙個方案,沒有模擬,由毎個請求的預計到達時間減請求發出時間算出不同方案所需時間,然後計算預計時間就有了問題,還有許多特殊情況,最後的程式以失敗告終。在之前的c語言課程中,我所遇到的題目都是非對即錯,但電梯作業則可以先實現電梯的執行,然後再考慮最優,不斷改進。其實這也是應為物件導向程式設計和面向過程程式設計的不同所在,物件導向程式設計可以分成許多物件,分別實現電梯的執行,電梯的調控等功能,而面向過程程式設計則要考慮整個實現過程,改進的話,幾乎相對於重新寫乙個程式了。總的來說,在電梯作業中,我最大的收穫是在之後的學習我能更好地理解物件導向的思想。
關於團隊作業,一開始大家都是很興奮的,自己寫乙個遊戲,想想就很有成就感,最初的構想是這樣的,先合作討論一下基本框架及毎人的分工,然後毎個人寫好自己負責的部分,最後進行組合,嗯,想得很美好,最後出來的**耦合度不高。這樣的思路我認為是沒錯的,但最終卻難以整和,我認為主要原因是,分工還不夠清楚,毎個人都還不夠清楚自己要實現什麼功能,只是根據題目要求而沒根據自己小組的要求,最後差距是很大的。
寒假的作業中是有重構的,調整了思路,降低了實現的目標,沒有再執著於時間最短,先實現可執行,然後在開學後的第一次電梯作業中,對請求的儲存與處理也進行了調整,但在如何實現電梯時間最短,一直沒有更好的想法。
計算機領域的更新換代真的很快,學如逆水行舟,不進則退,在這個專業,我們很累,因為我們永遠也學不完,但我們很幸運,因為我們能夠見證時代的發展,甚至有人可以推動時代的發展。
物件導向程式設計 總結作業
在本學期的學習中,有哪些是經過部落格作業後才學到的?1 最開始的vs的使用 工程專案的迭代 類和物件的基本概念 除錯技巧 規範 個人部落格 github 基於物件程式設計 團隊專案經驗。2 比較具體得有檔案輸入輸出流 cout輸出格式控制 命令列 stl markdown語法 css。電梯能改善的地...
物件導向程式設計上機作業
從鍵盤輸入r行c列二維整型陣列,找出每一行的次最大值並顯示出來。要求 1 r和c為符號常量 2 二維陣列是動態申請生成的 3 每一行的次最大值是利用單獨的函式呼叫獲得的 4 對陣列元素的訪問以及函式引數宣告等都是利用指標實現的。include using namespace std void fin...
物件導向程式設計 作業二
輸入n,判斷幾個乘客請求,輸入第n個請求,建立乙個電梯狀態的結構體,包含電梯的層數,當前層,當前時間,目的資訊,按時間順序輸入請求更新電梯目的資訊,電梯當有目的為完成時繼續向目的移動,到目標樓層後刪除請求並彈出當前樓層和當前時間作為輸出,處理完所有請求後程式結束 c語言是把電梯的操作拆開成各個分開的...