須要實現的功能:c++
一、用戶註冊功能。用戶提供手機號碼,點擊註冊將收到一個註冊碼,用戶可以使用該註冊碼完成註冊;算法
二、用戶完成註冊後,界面提示設置密碼,用戶輸入兩次密碼匹配後設置密碼成功。密碼6-10位,必須含大小寫字母和數字。用戶在登陸狀態下可修改密碼,輸入正確的原密碼,再輸入兩次相同的新密碼後修改密碼成功;編程
三、密碼設置成功後,跳轉到選擇界面,界面顯示小學、初中和高中三個選項,用戶點擊其中之一後,提示用戶輸入須要生成的題目數量;後端
四、用戶輸入題目數量後,生成一張試卷(同一張卷子不能有相同題目,題目所有爲選擇題),界面顯示第一題的題乾和四個選項,用戶選擇四個選項中的一個後提交,界面顯示第二題,...,直至最後一題;網絡
五、最後一題提交後,界面顯示分數,分數根據答對的百分比計算;函數
六、用戶在分數界面可選擇退出或繼續作題;ui
七、小初高數學題目要求見我的項目。阿里雲
需求分析與設計思路:spa
本次項目較上次我的項目新增了ui界面與算出答案並評分的功能,個人分工爲計算生成題目的答案即後端內容。
.net
而我須要解決的最主要問題也就是題目的計算,首先出題邏輯是能夠複用的,只須要算出每道題的答案並保存便可。
在獲得題目後,我以爲首先的任務是去除表達式的‘√’等單邊運算符,轉換爲純浮點數的四則運算。
其次浮點數四則運算能夠由中綴式轉換爲後綴式即逆波蘭式進行計算:
轉換後就能夠計算逆波蘭式了,新建一個表達式,若是當前字符爲變量或者爲數字,則壓棧,若是是運算符,則將棧頂兩個元素彈出做相應運算,結果再入棧,最後當表達式掃描完後,棧裏的就是結果。
最後就能夠生成選項了。
而後我還參與了一部分發送短信驗證碼的實現,由於阿里雲上並無給出c++的DEMO,所以只好在網上搜尋解決方案,能夠參考:
總結與感想:
本次結對編程項目工程量明顯比我的項目要大不少,所以也更加考驗兩人的實力與配合,並且半路上出的問題也是很多,經過本身思考和查詢資料與網絡,一個個解決,感受
仍是收穫了很多,也讓我感受到了合做的重要性。而相信在接下來的團隊項目中相信合做也會變得愈加重要。