郭少周和陳澤兩人合作課堂練習和課下作業

2022-09-03 02:57:07 字數 1042 閱讀 1803

1.要求程式必須能處理1000個元素;

2.每個元素是int32型別的,出現子陣列之和大於整型表示的最大範圍會出現什麼情況;

3.輸入乙個整形陣列,陣列裡面既有正數也有負數;

4.陣列中連續的乙個或多個整數組成乙個字陣列,每個子陣列都有乙個和;

5.求所有子陣列的和的最大值,要求時間複雜度為o(n)。

設計思想:

1.隨即生成陣列(含有正數和負數)。

2:求所有子陣列,按陣列長度進行陣列的劃分。

計算:從第乙個數開始做加法,若和大於第二個數,則繼續加下乙個數(若加上第三個數的和大於第三個數則重複進行此操作;小於第三個數,則捨掉前面的所有數,並繼續重複進行此操作);若小於第二個數,則捨掉第乙個數。

出現的問題:

1.在生成隨機數的時候,正負數沒有一起生成。

2.當出現子陣列之和大於整型表示的最大範圍會出現溢位情況,執行結果都為零

3.軟體沒有妥當儲存導致中途**糗事,稍微影響了完成進度。

程式源**:

#include

#include

#include

#define n 1000

using namespace std;

void randin(int intnum,int a)   //隨機生成陣列

}執行結果:

當出現子陣列之和大於整型表示的最大範圍時會出現溢位現象,執行結果都為零:

心得: 團結就是力量,相比於個人專案,團體協作的優勢十分明顯,但程式設計能力方面還是太弱這是硬傷,需要借助網路資源幫助,經過此次程式設計使得我倆的部分計算機語言運用的更加熟練,理解更加透徹,以後會多加練習努力學好這門課程,學以致用