這個作業屬於哪個課程 | 計科二班 |
---|---|
這個作業要求在哪里 | 作業要求 |
這個作業的目標 | 要知道自己寫的代碼代表的含義,完成pta作業 |
學號 | 20208984 |
作業內容
1.PTA實驗作業
1.1求分數序列前N項和
題目內容:本題要求編寫程序,計算序列 2/1+3/2+5/3+8/5+... 的前N項之和。注意該序列從第2項起,每一項的分子是前一項分子與分母的和,分母是前一項的分子。
1.1.1實驗內容截圖
1.1.2數據處理
數據表達:定義了整形N,浮點型fenzi,fenmu,sum,item=fengzi/fenmu;見字知意,N是i的范圍,由用戶輸入。
數據處理:利用for循環求出每個分數 。定義浮點型item=fenzi/fenmu得出最終結果
1.1.3 PTA提交列表及說明
Q:答案錯誤
A:沒有定義item導致輸出結果不是想要的結果。
1.2 求簡單交錯序列前N項和
題目內容:本題要求編寫程序,計算序列 1 - 1/4 + 1/7 - 1/10 + ... 的前N項之和。
1.2.1 實驗代碼截圖
1.2.2 數據處理
數據表達:定義的整形d,flag,i,n;浮點型item,sum;d表示第i項的分母,初始值為1,flag表示第i項的正負,初始為正,i是第幾項,n位i的范圍。item表示第i項的值,sum累加第i項的值。
數據處理:使用了flag=-flag改變符號,d=d+2,為下一次循環做准備。
1.2.3 PTA提交列表及說明
因為不是很會做翻書找到了基本相似的沒有遇到問題。或者說都是問題!
1.3電子汪
題目內容:據說汪星人的智商能達到人類 4 歲兒童的水平,更有些聰明汪會做加法計算。比如你在地上放兩堆小球,分別有 1 只球和 2 只球,聰明汪就會用“汪!汪!汪!”表示 1 加 2 的結果是 3。
本題要求你為電子寵物汪做一個模擬程序,根據電子眼識別出的兩堆小球的個數,計算出和,並且用汪星人的叫聲給出答案。
1.3.1實驗內容截圖
1.3.2數據處理
數據類型:定義了整形a,b,n=0,i;輸入a,b賦給你,i為循環變量。
數據處理使用for循環輸出wang!wang!wang!
1.3.3PTA提交列表及說明
Q:格式錯誤
A:將最后那個空格輸出忽略了,在循環語句后加一句printf("\n")即可。
2.閱讀代碼
int* twoSum(int* nums, int numsSize, int target, int* returnSize) {
for (int i = 0; i < numsSize; ++i) {
for (int j = i + 1; j < numsSize; ++j) {
if (nums[i] + nums[j] == target) {
int* ret = malloc(sizeof(int) * 2);
ret[0] = i, ret[1] = j;
*returnSize = 2;
return ret;
}
}
}
*returnSize = 0;
return NULL;
}
作者:LeetCode-Solution
鏈接:https://leetcode-cn.com/problems/two-sum/solution/liang-shu-zhi-he-by-leetcode-solution/
來源:力扣(LeetCode)
代碼功能:計算兩數之和
可學習之處:作者使用了兩個for循環和一個if語句來確立自己的循環內容。其中N是數組中的元素數量。
使用了一個我沒有接觸過的暴力枚舉的方式值得我去研究我學習,當我們使用遍歷整個數組的方式尋找 target - x 時,需要注意到每一個位於 x 之前的元素都已經和 x 匹配過,因此不需要再進行匹配。而每一個元素不能被使用兩次,所以我們只需要在 x 后面的元素中尋找 target - x。
https://leetcode-cn.com/problems/two-sum/solution/liang-shu-zhi-he-by-leetcode-solution/
3.學習總結
3.1學習進度條
日期 | 這周所花時間 | 代碼行 | 學到的知識簡介 | 目前比較迷惑的問題 |
---|---|---|---|---|
第一周 | 14h | 100 | 概括的了解專業知識 | 暫無 |
第二周 | 16h | 200 | 學會提問 | 暫無 |
第三周 | 24h | 500 | for循環 | 暫無 |
3.2累積代碼行和博客字數
3.2學習感悟
在第三周我學習了for循環,可以更好的使用編程解決一下生活中的小問題。
我們學習的編程也將越來越復雜,不能掉以輕心,要用更多的時間來練習。
學習了新的知識也會遇到新的問題,for循環該如何循環?循環是產生下一個還是只是一部分還要重新定義一個整體,這都是我要繼續加強的。