多项式输出pascal程序
題意
一個一個的輸入,按以下規(guī)則輸出:
1. 多項式中自變量為 x,從左到右按照次數(shù)遞減順序給出多項式。
2. 多項式中只包含系數(shù)不為 0 的項。
3. 如果多項式 n 次項系數(shù)為正,則多項式開頭不出現(xiàn)“+”號,如果多項式 n 次項系
數(shù)為負,則多項式以“-”號開頭。
4. 對于不是最高次的項,以“+”號或者“-”號連接此項與前一項,分別表示此項
系數(shù)為正或者系數(shù)為負。緊跟一個正整數(shù),表示此項系數(shù)的絕對值(如果一個高于 0 次的項,
其系數(shù)的絕對值為 1,則無需輸出 1)。如果 x 的指數(shù)大于 1,則接下來緊跟的指數(shù)部分的形
式為“x^b”,其中 b 為 x 的指數(shù);如果 x 的指數(shù)為 1,則接下來緊跟的指數(shù)部分形式為“x”;
如果 x 的指數(shù)為 0,則僅需輸出系數(shù)即可。
5. 多項式中,多項式的開頭、結(jié)尾不含多余的空格。
分析一個循環(huán)加判斷就可以了,寫判斷時,要理清思路。
var
n,i,s:longint;
begin
? ? read(n);
? ? for i:=n downto 0 do
? ? begin
? ? ? ? read(s);
? ? ? ? if abs(s)<>0 then
? ? ? ? begin
? ? ? ? ? ? if (s>0)and(i<>n) then write('+');
? ? ? ? ? ? if (i>1) then
? ? ? ? ? ? if (s=1) then write('x^',i) else
? ? ? ? ? ? if (s=-1) then write('-x^',i) else write(s,'x^',i) else
? ? ? ? ? ? if i=1 then
? ? ? ? ? ? if s=1 then write('x') else
? ? ? ? ? ? if s=-1 then write('-x') else write(s,'x') else
? ? ? ? ? ? if i=0 then write(s);
? ? ? ? end;
? ? end;
end.
轉(zhuǎn)載于:https://www.cnblogs.com/YYC-0304/p/9500222.html
總結(jié)
以上是生活随笔為你收集整理的多项式输出pascal程序的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 铺地毯pascal程序
- 下一篇: 均分纸牌pascal程序