




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、簡(jiǎn)單圖形處理系統(tǒng)程序設(shè)計(jì)基礎(chǔ)課程設(shè)計(jì)報(bào)告專 業(yè): 電子信息工程 班 級(jí): 2007級(jí) 2 班 學(xué) 號(hào): 2007082051姓 名:楊 淼 軍指導(dǎo)教師:常 耀 輝2008年6月28日目 錄1.課程設(shè)計(jì)目的32.課程設(shè)計(jì)題目描述和要求32.1課程題目32.2課程要求33.課程設(shè)計(jì)報(bào)告內(nèi)容33.2 運(yùn)行結(jié)果114. 課程設(shè)計(jì)總結(jié)125.參考書(shū)目121.課程設(shè)計(jì)目的開(kāi)拓思維,檢查和鞏固所學(xué)的知識(shí),為以后的學(xué)習(xí)和編程打下基礎(chǔ)。2.課程設(shè)計(jì)題目描述和要求2.1課程題目簡(jiǎn)單圖形處理系統(tǒng)2.2課程要求設(shè)某個(gè)圖形處理程序只考慮點(diǎn)、直線、圓三種基本圖形。對(duì)于點(diǎn),給出點(diǎn)的橫縱坐標(biāo);對(duì)于直線,給出直線方程ax+by
2、+c0的三個(gè)系數(shù)a,b,c;對(duì)于圓,給出圓心坐標(biāo)和半徑。(為敘述性文字,告訴我題目要求做些什么)試說(shuō)明圖形的幾何形狀類型,并編寫(xiě)輸入和輸出圖形數(shù)據(jù)、求兩點(diǎn)距離、求兩直線交點(diǎn)、 已知點(diǎn)和半徑形成圓、已知兩點(diǎn)形成直線等函數(shù)。(后面這些為具體的要求)3.課程設(shè)計(jì)報(bào)告內(nèi)容#include<iostream>#include<cmath>#include<string>using namespace std;class point public: friend void point_count(point *p);/聲明為友員函數(shù),便于引用類的私有數(shù)據(jù) friend
3、void build_line(point *p); void set_value() /作用:輸入點(diǎn)的坐標(biāo)cout<<"請(qǐng)輸入點(diǎn)的坐標(biāo)"<<endl;cin>>x>>y;void show() /作用:輸出點(diǎn)的坐標(biāo)cout<<"點(diǎn)的坐標(biāo)是:("<<x<<","<<y<<")"<<endl;private:float x,y;void point_count(point *p) /作用:計(jì)算兩點(diǎn)間
4、的距離cout<<"兩點(diǎn)間的距離為:"<<endl;cout<<sqrt(*p).x-(*(p+1).x)*(*p).x-(*(p+1).x)+(*p).y-(*(p+1).y)*(*p).y-(*(p+1).y)<<endl;void build_line(point *p) /作用:用兩點(diǎn)構(gòu)造直線cout<<"兩個(gè)點(diǎn)的坐標(biāo)為:("<<(*p).x<<","<<(*p).y<<"),("<<(*
5、(p+1).x<<","<<(*(p+1).y<<")"<<endl;cout<<"參數(shù):a="<<(*p).y-(*(p+1).y<<",b="<<(*(p+1).x-(*p).x<<",c="<<(*(p+1).y*(*p).x-(*p).y*(*(p+1).x<<endl;cout<<"直線方程是:"<<(*p).y
6、-(*(p+1).y<<"x+"<<(*(p+1).x-(*p).x<<"y+"<<(*(p+1).y*(*p).x-(*p).y*(*(p+1).x<<"=0"<<endl;class linepublic:friend void line_count(line *p);/聲明為友員函數(shù)void set_value() /作用:輸入直線的三個(gè)參數(shù)cout<<"請(qǐng)輸入直線的三個(gè)參數(shù)"<<endl;cin>>a
7、>>b>>c;void show() /作用:輸出直線的方程if(a=1&&b!=1)cout<<"直線的方程為:x+"<<b<<"y+"<<c<<"=0"<<endl;else if(a!=1&&b=1)cout<<"直線的方程為:"<<a<<"x+y+"<<c<<"=0"<<
8、endl;else if(a=1&&b=1)cout<<"直線的方程為:x+y+"<<c<<"=0"<<endl;else cout<<"直線的方程為:"<<a<<"x+"<<b<<"y+"<<c<<"=0"<<endl;private:float a,b,c;void line_count(line *p) /作用:
9、計(jì)算兩直線的交點(diǎn)if(*p).a/(*(p+1).a=(*p).b/(*(p+1).b)cout<<"兩直線平行,沒(méi)有交點(diǎn)"<<endl;else cout<<"兩直線的交點(diǎn)是:"<<endl; cout<<"("<<(*p).b*(*(p+1).c-(*p).c*(*(p+1).b)/(*p).b*(*(p+1).a-(*p).a*(*(p+1).b)<<","<<(*p).a*(*(p+1).c-(*p).c*(*(
10、p+1).a)/(*p).a*(*(p+1).b-(*p).b*(*(p+1).a)<<")"<<endl;class circlepublic:void set_value() /作用:輸入圓心坐標(biāo)和半徑cout<<"請(qǐng)輸入圓的坐標(biāo)和半徑"<<endl;cin>>x>>y>>r;void show() /作用:輸出圓的圓心坐標(biāo)、半徑和方程(構(gòu)造圓)cout<<"圓心坐標(biāo):("<<x<<","&l
11、t;<y<<"),半徑:"<<r<<endl;if(x=0&&y=0)cout<<"圓的方程:xx+yy="<<r*r<<endl; else if(x=0&&y!=0)cout<<"圓的方程:xx+(y-"<<y<<")(y-"<<y<<")="<<r*r<<endl; else if(y=0&
12、&x!=0)cout<<"圓的方程:"<<"(x-"<<x<<")(x-"<<x<<")+yy="<<r*r<<endl; else cout<<"圓的方程:(x-"<<x<<")(x-"<<x<<")+(y-"<<y<<")(y-"<<y
13、<<")="<<r*r<<endl;private:float x,y,r;int main()point poi2;line lin2;circle cir;int i;string choose; /choose 選擇是否繼續(xù)輸入string typ; /typ:圖形的形狀 / while(1)無(wú)限循環(huán),讓用戶自己選擇for(;)cout<<"請(qǐng)輸入圖形類型"<<endl;cin>>typ; /出現(xiàn)過(guò):'cin' : ambiguous(不明確的,多定義的) sy
14、mbolcout<<"圖形為:"<<typ<<endl;/處理點(diǎn)的問(wèn)題if(typ="point")for(i=0;i+) /注意要讓程序跳出poii.set_value();cout<<"是否繼續(xù)輸入點(diǎn)的坐標(biāo)?"<<endl;cin>>choose;if(choose="no")break;if(i=0)poi0.show();else if(i=1)for(i=0;i<2;i+)poii.show();point_count(poi)
15、;build_line(poi);else break;/處理直線的問(wèn)題else if(typ="line")for(i=0;i+)lini.set_value(); cout<<"是否繼續(xù)輸入直線的參數(shù)?"<<endl;cin>>choose;if(choose="no")break;/只有選擇了不輸入時(shí),才能跳出if(i=0)lin0.show();else if(i=1)for(i=0;i<2;i+)lini.show(); line_count(lin);/處理圓的問(wèn)題else if(
16、typ="circle")cir.set_value();cir.show();/處理其他圖形的問(wèn)題else cout<<"圖形不在指定的范圍內(nèi)"<<endl;cout<<"是否繼續(xù)輸入圖形的類型?"<<endl;cin>>choose; if(choose="no")break; /同樣只有選擇了不輸入時(shí),才能跳出return 0;3.2 運(yùn)行結(jié)果4. 課程設(shè)計(jì)總結(jié)終于,激動(dòng)人心的期末考試如期而至,從未感受過(guò)的課程設(shè)計(jì)就在眼前,既有幾分新奇,又有幾分神秘,但更多的是莫名的擔(dān)心,既擔(dān)心自己不會(huì)動(dòng)手去做,又擔(dān)心自己做的不是很好。終于,在擔(dān)心與被動(dòng)中,在考完C+程序設(shè)計(jì)后,我坐在了電腦前,一點(diǎn)點(diǎn)地構(gòu)思算法、輸入、編譯、運(yùn)行,不懂的就問(wèn)同學(xué),忘了的就看書(shū)。在編程中,慢慢地弄懂了題意,漸漸地就能構(gòu)思出算法。終于,有了算法
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 排氣溫度管理考核試卷
- 健康工作場(chǎng)所案例分析考核試卷
- 醫(yī)學(xué)模擬培訓(xùn)在傳染病防控中的應(yīng)用考核試卷
- 會(huì)展物流配送中的大數(shù)據(jù)分析應(yīng)用考核試卷
- 體育經(jīng)紀(jì)人職業(yè)壓力與心理疲勞的關(guān)系分析考核試卷
- 兒童節(jié)活動(dòng)總結(jié)(集錦15篇)
- 保健醫(yī)生個(gè)人工作總結(jié)(集合13篇)
- 會(huì)計(jì)基礎(chǔ)知識(shí)
- 樓盤(pán)送菜活動(dòng)方案
- 桂園開(kāi)業(yè)活動(dòng)方案
- 重要概念一胎產(chǎn)式胎兒身體縱軸與母體縱軸之間的關(guān)系
- 人力資源 公司勞務(wù)派遣招聘流程及制度
- 降低住院患者壓力性損傷發(fā)生率
- 三年級(jí)上冊(cè)《貴州省生態(tài)文明城市建設(shè)讀本》小學(xué)中年級(jí)版教案
- 廣東省韶關(guān)市2023-2024學(xué)年八年級(jí)下學(xué)期期末歷史試題(解析版)
- 08D800-8民用建筑電氣設(shè)計(jì)與施工防雷與接地
- 福建省醫(yī)療機(jī)構(gòu)三伏貼醫(yī)療技術(shù)備案表
- JBT 14645-2023 低溫裝置用密封墊片 (正式版)
- DZ∕T 0213-2020 礦產(chǎn)地質(zhì)勘查規(guī)范 石灰?guī)r、水泥配料類(正式版)
- 2024年廣東省香港大學(xué)深圳醫(yī)院財(cái)務(wù)部崗位招聘歷年高頻考題難、易錯(cuò)點(diǎn)模擬試題(共500題)附帶答案詳解
- 中國(guó)歷史地理智慧樹(shù)知到期末考試答案章節(jié)答案2024年北京大學(xué)
評(píng)論
0/150
提交評(píng)論