月下檸檬樹解題報(bào)告_第1頁
月下檸檬樹解題報(bào)告_第2頁
月下檸檬樹解題報(bào)告_第3頁
月下檸檬樹解題報(bào)告_第4頁
已閱讀5頁,還剩8頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、月下檸檬樹問題描述 知道每一層的高度為h1,h2,hn1 層圓臺(tái)的下底面距地面的高度為h0月下檸檬樹問題描述 知道每一層的高度為h1,h2,hn1 層圓臺(tái)的下底面距地面的高度為h0下底面的圓的半徑r1,r2,rn11 的。輸入格 3行包含n個(gè)實(shí)數(shù)r1,r2,rn1頁/13輸出格輸入樣2 10.0 10.00 輸出格輸入樣2 10.0 10.00 4.00 輸出樣數(shù)據(jù)范1n500,0.3alpha/2,0hi100,0ObjectType=FT_Line) elseboolTFigure:better(TFigurereturn tmp;returnnewvoid Throw(TFigure *

2、X) if (X-ObjectType=FT_Line) elseboolTFigure:better(TFigure*X) real px=X-p2.x;realcross(constp0,constp1,constp2return(p1.x-p0.x)*(p2.y-p0.y)(p1.y-p0.y)*(p2.x-bool TLine:ersect(TFigure *X) if (X-ObjectType=FT_Line) return (cross(p1, X-p1, p2) * cross(p1, p2, X-p2) zero) & (cross(X-p1,p1,X-p2)*cross(X

3、-p1,X-p2,p2)zero);returnX-ersector(TFigure *X) if (X-ObjectType=FT_Line) realA=cross(X-p1,p1,X-p2), tmp.x=(p2.x-p1.x)*A+tmp.y=(p2.y-p1.y)*A+6頁/13returnreturnX-return(p1.y+returnreturnX-return(p1.y+p2.y)*(p2.x-p1.x)/objecttype /x return(x-p1.x)/(p2.x-p1.x)*(p2.y-p1.y)+TFigure*TLine:cut(realx) tmp-p1

4、= p; tmp-p2 = p2;p2=returnTLine *TCir:tangent(TCir *X) if (X-x_c x_c+X-rx_c-X-rr)/(X-x_c-_sin=sqrt(1-_cos*_cos); tmp-p1.x = _cos * r + x_c; tmp-p1.y = _sin * r;tmp-p2.x=_cos*X-r+X-x_c; tmp-p2.y = _sin * X-r;return7頁/13real sqr(real x) return x*x;bool TCir:ersect(TFigure *X) if (X-ObjectType=FT_Line)

5、 realtmp1=sqr(X-p1.x-x_c)+sqr(X-p1.y), real sqr(real x) return x*x;bool TCir:ersect(TFigure *X) if (X-ObjectType=FT_Line) realtmp1=sqr(X-p1.x-x_c)+sqr(X-p1.y), if (!(tmp1 r2 + zero) & (tmp2 r2 - zero) | (tmp1r2+zero)returnpreturn p.xp1.x & p.x=X-p1.y & p.yp2.y |p.x!=X-p1.x & p.x!=X-p2.x;elseTCir*tmp

6、=(TCirrealtmp2=(tmp-x_c-x_c)*2; if (tmp2=0) return false;realtmp1=(sqr(r)-sqr(tmp-r)+sqr(tmp-x_c)-sqr(x_c)/tmp2; return (p1.x tmp1 + zero) & (X-p1.xp2.x tmp1 + zero);ersector(TFigure *X) if (X-ObjectType=FT_Line) reala=sqr(X-p2.x-X-p1.x)+sqr(X-p2.y-X-b=2 * (X-p1.x - x_c) * (X-p2.x - X-p1.x) + (X-* (

7、X-p2.y c=sqr(X-p1.x - x_c) + sqr(X-p1.y) - sqr(r), lambda=(-b+sqrt(sqr(b)-4*a*c)/(2*a);if(lambdalambda=(-b-sqrt(sqr(b)-4*a*c)/(2*tmp.x=X-p1.x+(X-p2.x-X-p1.x)*lambda; tmp.y=X-p1.y+(X-p2.y-X-p1.y)*return8頁/13elseTCir *ctmp=(TCir tmp.x=(sqr(r)-sqr(ctmp-r)+sqr(ctmp-x_c)elseTCir *ctmp=(TCir tmp.x=(sqr(r)

8、-sqr(ctmp-r)+sqr(ctmp-x_c)-sqr(x_c)/(2*(ctmp-x_c-x_c); tmp.y=sqrt(sqr(r) - sqr(x_c - tmp.x);returnreal TCir:getAngle(real x, real y) if (y=0) if(x0)return0;elsereturnelserealreturnrealTCir:areareturn (sqr(r) * (getAngle(p1.x, p1.y) - getAngle(p2.x, p2.y) + (p2.x - x_c) * p2.y - (p1.x - x_c) * p1.y)

9、/ 2;TCir:TCir()/objecttype /xyreturnsqrt(sqr(r)-sqr(x_c-TFigure*TCir:cut(realx)p.x=p.y=tmp-p1 = p;tmp-p2 = p2; tmp-r = r;p2=return9頁/13class THeap longclass THeap longTHeap()th=0;void Push(TFigure *X); TFigure*Top()returnq1; TFigure *Pop();boolnull()returnth=0;longvoidTHeap:Push(TFigure*X /加入元素,向上調(diào)整

10、,p1.x(即左邊的端點(diǎn)x坐標(biāo))的 TFigure *THeap:Pop() TFigurelong i=1,j=2;if(jp1.xp1.x)while(jp1.xX- if(jp1.xp1.x)return10頁/13long n; TCirvoid init() FILE *f=fopen(inf, rt); long n; TCirvoid init() FILE *f=fopen(inf, rt); long i;for (i=0;i=n;+i) realreal tmp=0,for (i=0;in;+i) fscanf(f, %lf, &h); tmp+=h * _cot;for (i=0;ir = 0;for(i=0;ip1.x=tmpCiri-x_c-tmpCiri-r; tmpCiri-p1.y = 0;tmpCiri-p2.x=tmpCiri-x_c+tmpCiri-r; tmpCiri-p2.y = 0;THeapvoidlongforfor (i=0;ip1.xcur-p1.x+zero)if(next-p1.xp2.x-/從next-p1.x的地方割斷,else/curnext的起始點(diǎn)的xif(cur-ersect(next)TFigure*a=cur-i

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論