給定一系列正整數,請按要求對數字進行分類,並輸出以下 5 個數字:輸入格式:每個輸入包含 1 個測試用例。每個測試用例先給出乙個不超過 1000 的正整數 n,隨後給出 n 個不超過 1000 的待分類的正整數。數字間以空格分隔。a1 = 能被 5 整除的數字中所有偶數的和;
a2 =將被 5 除后餘 1 的數字按給出順序進行交錯求和,即計算 n1−n2+n3−n4⋯;
a3 = 被 5除后餘 2 的數字的個數;
a4 = 被 5 除后餘 3 的數字的平均數,精確到小數點後 1 位;
a5 = 被 5 除后餘 4的數字中最大數字。
輸出格式:
對給定的 n 個正整數,按題目要求計算 a1 ~ a5並在一行中順序輸出。數字間以空格分隔,但行末不得有多餘空格。
若其中某一類數字不存在,則在相應位置輸出n
。
輸入樣例 1:
1312
3456
78910
2016
18
輸出樣例 1:
30112
9.79
輸入樣例 2:
812
4567
916
輸出樣例 2:
n112
n9
**部分:
#include
#include
int main()
if(a[i]%5
==1)//pow(-1,count2)用來控制符號
if(a[i]%5
==2)if
(a[i]%5
==3)//sum4統計和,count4統計個數
if(a[i]%5
==4)if
(max5
if(sum1==0)
printf
("n ");
//sum1為0,表示初值沒變
else
printf
("%d "
,sum1);if
(count2==0)
printf
("n ");
//count2為0,表示初值沒變
else
printf
("%d "
,sum2);if
(count3==0)
printf
("n ");
//count3為0,表示初值沒變
else
printf
("%d "
,count3);if
(sum4==0)
printf
("n ");
//sum4為0,表示初值沒變
else
printf
("%.1f "
,sum4/count4)
;//'.1f'控制小數點後一位
if(max5==0)
printf
("n");
//max5為0,表示初值沒變
else
printf
("%d"
,max5)
;return0;
}
執行結果: PAT乙級1012 數字分類
見題知意,但是還是有幾點注意的地方 思路 很容易想到開闢乙個陣列,用陣列下標表示題中五類數字,然後對給出的每個數字分類處理就好 注意 a1 給出的都是正整數,故此類無需做特別處理 a2 因為是交錯求和,可能最後和為0,但不代表該類數字沒有 a3 簡單情況,即題意 a4 先求和,統計個數,最後計算平均...
PAT乙級 1012 數字分類
給定一系列正整數,請按要求對數字進行分類,並輸出以下5個數字 pat1012.cpp 定義控制台應用程式的入口點。include stdafx.h include using namespace std define n 1000 intmain ver n int flag 0,temp 0,k ...
PTA乙級1012,數字分類
分析 include using namespace std intmain t 6 t2 1 a i 用於儲存ai,t i 用於儲存a i 中滿足條件的個數 cin n for int i 0 i else if x 5 1 else if x 5 2 else if x 5 3 else if ...