1樓:全方面人才
給你編完了;在vc6下可以執行
#include
#include
using namespace std;
void cheng(int a,int b,int w)for(int q=w;q>=0;q--) }cout<=0;l--)
cheng(x,y,i);}
2樓:匿名使用者
給個**你
2.3 應用:一元多項式(加法和乘法)
2.3.1 基礎知識
我們使用一元多項式來說明單鏈表的應用。假設有兩個一元多項式:
p1(x) = x^2 + 2x + 3
以及p2(x) = 3x^3 + 10x + 6
現在運用中學的基礎知識,計算它們的和:
p1(x) + p2(x) = (x^2 + 2x + 3) + (3x^3 + 10x + 6)
= 3x^3 + 1x^2 + 12x^1 + 9
以及計算它們的乘積:
p1(x) * p2(x) = (x^2 + 2x + 3) * (3x^3 + 10x + 6)
= 3x^5 + 6x^4 + 19x^3 + 26x^2 + 42x^1 + 18
怎麼樣,很容易吧?:) 但我們是靈長類動物,這麼繁瑣的計算怎麼能用手工來完成呢?(試想一下,如果多項式非常大的話……)我們的目標是用計算機來完成這些計算任務,**就在下面。
2.3.2 **實現
//// filename : poly.cpp
// version : 0.10
// author : luo cong
// date : 2004-12-30 17:32:54
// comment :
#include
#include "slist.h"
#define max(x,y) (((x)>(y)) ? (x) : (y))
typedef struct tagpolynomial
* polynomial;
static void addpolynomial(
polynomial polysum,
const polynomial poly1,
const polynomial poly2)}
static void mulpolynomial(
polynomial polymul,
const polynomial poly1,
const polynomial poly2)}
}static void printpoly(const polynomial poly)
int main()
if (poly2)
if (polyresult)
}2.3.3 說明
原書中只給出了一元多項式的陣列實現,而沒有給出單鏈表的**。實際上用單鏈表最大的好處在於多項式的項數可以為任意大。(當然只是理論上的。
什麼?你的記憶體是無限大的?好吧,當我沒說……)
我沒有實現減法操作,實際上減法可以轉換成加法來完成,例如 a - b 可以換算成 a + (-b),那麼我們的目標就轉變為做乙個負號的運算了。至於除法,可以通過先換算「-」,然後再用原位加法來計算。(現在你明白加法有多重要了吧?
^_^)有興趣的話,不妨您試試完成它,我的目標只是掌握單鏈表的使用,因此不再繼續深究。
C語言寫多項式相加怎麼寫,兩個多項式相加運算(用c語言)
2007 3 22 一元多項式的加法 include include include typedef struct polynodenode node createpoly void h next null tail h printf 請輸入每一項額係數和指數 中間以逗號隔開 n printf co...
c語言向量的運算,用C語言編寫乙個計算兩個向量叉積的程式
根據題意可得如下代專碼 屬 include int main for i 0 i n i for i 0 i n i printf d n ans return 0 c語言如何實現兩向量叉乘 根據叉乘的計算方法可知 因此可直接通過計算三階行列式的方法來計算兩向量的叉乘 include void cp...
七年級1班小明同學做一道題已知兩個多項式AB,A
a x2 2x 1,內2a b 2 x2 2x 1 b x2 5x 4,b x2 5x 4 2 x2 2x 1 容 x2 5x 4 2x2 4x 2,x2 x 2,a 2b x2 2x 1 2 x2 x 2 x2 4x 5.七年級 1 班冬冬同學做一道題 已知兩個多項式a,b。a x的平方 2x 1...