50,求助,诸位
查看原帖
50,求助,诸位
1468964
czp666楼主2025/1/2 03:30
#include<iostream>
using namespace std;
int main(void){
    int n, pos=-1;
    cin >> n;
    int a[101];
    for (int i = n; i >= 0; i--) {
        cin >> a[i];
    }
    //先输出第一个数
    for (int i = n; i >= 1; i--) {
        if (a[i] != 0) {
            if (a[i] > 0 && a[i] != 1) {
                cout << a[i] << "x^" << i;
            }
            else if (a[i] == 1) {
                cout << "x^" << i;
            }
            else if (a[i] == -1) {
                cout << "-" << "x^" << i;
            }
            else {
                cout << "-" << -a[i] << "x^" << i;
            }
            pos = i;
            break;
        }
    }
    if (pos == -1) {
        pos = 0;
        if(a[0]!=0){
            if (a[0] > 0)cout << "+";
            cout << a[0];
        }
    }
    for (int i = pos-1; i >= 1; i--) {
        if (a[i] != 0) {
            if (a[i] > 0 && a[i]!=1) {
                cout << "+" << a[i] << "x^" << i;
            }
            else if(a[i]==1) {
                cout << "+" << "x^" << i;
            }
            else if (a[i] == -1) {
                cout << "-" << "x^" << i;
            }
            else {
                cout << "-" << -a[i] << "x^" << i;
            }
        }
    }
    if (pos != 0 && a[0] != 0) {
        if (a[0] > 0)cout << "+";
        cout << a[0];
    }
}
2025/1/2 03:30
加载中...