【洛谷】P1067 多項式輸出
阿新 • • 發佈:2018-12-24
原題連結:P1067 多項式輸出
題目分析:學長推薦的OJ網站 —— 洛谷,發現挺好用的還可以下載提交出錯的資料。
廢話就不多說了,這道題屬於基礎題。提交出錯主要是因為一些小細節不到位,這裡就不一一贅述了,直接上程式碼吧!
程式碼如下:
#include <bits/stdc++.h> using namespace std; const int MAX = 105; int n; int num[MAX]; int main() { int flag; cin >> n; for (int i = 0; i <= n; i++) // 輸入多項式的次數 cin >> num[i]; for (int i = 0; i <= n; i++) // 把 第一個不為 0 的項數賦值給 flag if (num[i] != 0) { flag = i; break; } /* 非常數項的輸出 */ for (int i = 0; i < n; i++) { if (num[i] > 0) { // 係數大於 0 if (i != 0 || i != flag) cout << "+"; if (num[i] != 1) cout << num[i]; n - i == 1 ? cout << "x" : cout << "x^" << n - i; } else if (num[i] < 0) { // 係數小於 0 if (num[i] != -1) cout << num[i]; else cout << "-"; n - i == 1 ? cout << "x" : cout << "x^" << n - i; } else continue; // 係數為 0 時,跳過 } /* 常熟項的輸出 */ if (num[n] > 0) cout << "+" << num[n]; else if (num[n] < 0) cout << num[n]; cout << endl; return 0; }