銷售波動統計
任務描述
本關任務:假定有一組數據記錄着賣場每天(不超過3030天)的銷售額(假設都是整數),要求你統計並輸出銷售的波動情況,即計算每天相對於前一天的銷售額的增減情況(即后項減前項的差值)。
例如連續55天的銷售額分別是:23 56 12 76 43
,則銷售波動情況的輸出為:33 -44 64 -33
。
其中:33 = 56 - 23
,-44 = 12 - 56
,以此類推。
具體“犯二的程度”定義如下:
- 該數字中包含 2 的個數與其位數的比值;
- 如果整數是負數,則程度增加 0.5 倍;
- 如果整數是偶數,則再增加 1 倍。
提示:對於本關要求計算不超過100100位的整數,很顯然不能使用 int 類型,但可以把輸入的一串數字當做字符串處理,使用字符數組來接收輸入的整數。
測試輸入:8 34 56 234 87 43 98 109 234
(第一個數據表示有 8 天的銷售額分,剩下的數據為具體額分)
預期輸出:22 178 -147 -44 55 11 125
測試輸入:4 0 89 190 289
預期輸出:89 101 99
源代碼:
#include <stdio.h>
#include <iostream>
using namespace std;
int main()
{
int n, a[30], i; // 定義變量及數組,n-銷售額個數,a-銷售額
cin >> n; // 輸入銷售額數量,n <= 30
// 輸入n個銷售額,分別存入a[0]到a[n-1]
for(i = 0; i < n; i++)
cin >> a[i];
// 請在此添加代碼,計算並輸出銷售額的波動情況
/********** Begin *********/
for(i=0;i<=n-3;i++){
cout<<a[i+1]-a[i]<<" ";
}
cout<<a[i+1]-a[i];
/********** End **********/
return 0;
}