題目:計算器的改良
思路:把方程以=為界拆成兩段,對於每一段假設前面沒有 - 號,就新增乙個 + 號,且每一段的結尾加乙個 + 號。
再把兩段的未知數係數和常數項合併,移項,化係數為1求得。
注意當常數項為0時要特殊處理,避免出現精度問題。
**:
#includeusing namespace std;
string a;
int n;
int ssum=0,sk=0;
void readin()
int cut()
a[c]='+';
// cout<=0&&isnum(a[i-1]))
opr=1;
} else if(a[i]=='-')
opr=-1;
} else if(isnum(a[i]))
else if(isalpha(a[i]))
// cout<}// cout
else ssum+=sum,sk-=k;
}void print()
if(ssum==0)
double x=ssum,y=sk;
printf("%c=%.3lf",d,x/y);
}int main()
洛谷 P1022 計算器的改良
題目背景ncl是一家專門從事計算器改良與公升級的實驗室,最近該實驗室收到了某公司所委託的乙個任務 需要在該公司某型號的計算器上加上解一元一次方程的功能。實驗室將這個任務交給了乙個剛進入的新手zl先生。題目描述 為了很好的完成這個任務,zl先生首先研究了一些一元一次方程的例項 4 3x 8 6a 5 ...
洛谷 P1022 計算器的改良
題目背景 ncl是一家專門從事計算器改良與公升級的實驗室,最近該實驗室收到了某公司所委託的乙個任務 需要在該公司某型號的計算器上加上解一元一次方程的功能。實驗室將這個任務交給了乙個剛進入的新手zl先生。題目描述 為了很好的完成這個任務,zl先生首先研究了一些一元一次方程的例項 4 3x 8 6a 5...
洛谷P1022(計算器的改良)
ncl是一家專門從事計算器改良與公升級的實驗室,最近該實驗室收到了某公司所委託的乙個任務 需要在該公司某型號的計算器上加上解一元一次方程的功能。實驗室將這個任務交給了乙個剛進入的新手zl先生。為了很好的完成這個任務,zl先生首先研究了一些一元一次方程的例項 4 3x 8 6a 5 1 2 2a 5 ...