PAT 乙級 1010.一元多項式求導 C++/Java

設計函數求一元多項式的導數。(注:xn​​(n爲整數)的一階導數爲nxn1​​。)html

輸入格式:

以指數遞降方式輸入多項式非零項係數和指數(絕對值均爲不超過 1000 的整數)。數字間以空格分隔。ios

輸出格式:

以與輸入相同的格式輸出導數多項式非零項的係數和指數。數字間以空格分隔,但結尾不能有多餘空格。注意「零多項式」的指數和係數都是 0,可是表示爲 0 0函數

輸入樣例:

3 4 -5 2 6 1 -2 0

輸出樣例:

12 3 -10 1 6 0

分析:

1. 用一個flag標誌是否已經輸出過一個結果了,若是已經輸出過一個結果,再輸出結果以前要先輸出一個空格。這樣就能控制結尾沒有多餘的空格。spa

2. 對於$a^b$求導,先輸出a*b,而後輸出b - 1設計

3. 若是指數和係數都是0,那就 輸出0 0code

C++實現:

 1 #include <iostream>
 2 using namespace std;
 3 
 4 int main()
 5 {
 6     int a, b, flag = 0;
 7     while (cin >> a >> b)
 8     {
 9         if (b != 0)
10         {
11             if (flag == 1)
12             {
13                 //flag = 1則表示已經有過輸出
14                 //在前面要先輸出一個空格
15                 cout << " ";
16             }
17             cout << a * b << " " << b - 1;
18             flag = 1;
19         }
20     }
21 
22     if (flag == 0)
23     {
24         cout << "0 0";
25     }
26     return 0;
27 }
相關文章
相關標籤/搜索