c++程序設(shè)計(jì)實(shí)驗(yàn)報(bào)告實(shí)驗(yàn)一_第1頁
c++程序設(shè)計(jì)實(shí)驗(yàn)報(bào)告實(shí)驗(yàn)一_第2頁
c++程序設(shè)計(jì)實(shí)驗(yàn)報(bào)告實(shí)驗(yàn)一_第3頁
c++程序設(shè)計(jì)實(shí)驗(yàn)報(bào)告實(shí)驗(yàn)一_第4頁
c++程序設(shè)計(jì)實(shí)驗(yàn)報(bào)告實(shí)驗(yàn)一_第5頁
全文預(yù)覽已結(jié)束

下載本文檔

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

文檔簡介

C++實(shí)驗(yàn)報(bào)告課程名稱C++程序設(shè)計(jì) 成績?cè)u(píng)定實(shí)驗(yàn)項(xiàng)目名稱幾何形體練習(xí)1 指導(dǎo)教師實(shí)驗(yàn)項(xiàng)目編號(hào)1實(shí)驗(yàn)項(xiàng)目類型實(shí)驗(yàn)地點(diǎn)學(xué)生姓名學(xué)號(hào)學(xué)院計(jì)算機(jī)與信息工程學(xué)院專業(yè)計(jì)算機(jī)科學(xué)與技術(shù)實(shí)驗(yàn)時(shí)間2011年11月26日一、實(shí)驗(yàn)?zāi)康氖煜ふ莆疹惖脑O(shè)計(jì)與實(shí)現(xiàn);用類的方法計(jì)算出一系列幾何圖形的面積和周長,從而熟練的掌握了基類與派生類之間的關(guān)系,同時(shí)熟悉構(gòu)造函數(shù)與析構(gòu)函數(shù)。二、實(shí)驗(yàn)環(huán)境P42.4G計(jì)算機(jī)一臺(tái),Ubuntu11.04操作系統(tǒng),code::Blocks10.05-g++編程環(huán)境。實(shí)驗(yàn)內(nèi)容及分析⒈題意描述:編寫一個(gè)程序,計(jì)算任給一個(gè)幾何形體的面積和周長。幾何形體可以是矩形、三角型、圓形、扇型、梯形。要求:由用戶通過鍵盤輸入要處理的幾何形體,每次輸入一個(gè)幾何形體。輸入規(guī)則是:程序輸出提示信息,請(qǐng)用戶選擇要處理的幾何形體的類型。如果輸入字母“E”,表示要退出程序的運(yùn)行;根據(jù)用戶選擇的幾何形體類型,輸出提示信息,請(qǐng)用戶輸入幾何形體的描述數(shù)據(jù)。例如圓形的中心點(diǎn)坐標(biāo)和半徑。要求在提示信息中說明輸入數(shù)據(jù)的格式。由程序根據(jù)規(guī)定的格式讀入數(shù)據(jù),如果輸入數(shù)據(jù)的格式不對(duì)、或錯(cuò)誤(例如把一個(gè)負(fù)數(shù)作為圓形的半徑輸入),要輸出提示信息請(qǐng)求用戶輸入正確的數(shù)據(jù)、并再次讀入。在用戶輸入一個(gè)幾何形體后,程序輸出該幾何形體的面積和周長,要求在輸出中注明哪個(gè)數(shù)據(jù)是面積、哪個(gè)數(shù)據(jù)是周長。然后回到上一步,繼續(xù)處理新的幾何形體,直到用戶選擇退出程序運(yùn)行為止。⒉問題分析與解決:建立一個(gè)基類然后編寫派生類求解圖形的面積和周長。⒊調(diào)試、測(cè)試運(yùn)行情況及結(jié)果分析⑴實(shí)驗(yàn)中碰到的問題及解決方法:遇到的問題是基類和派生類不能很好的協(xié)調(diào)使用,解決方法是通過看書了解基類和派生類的關(guān)系,可以知道基類中的成員在派生類中可以訪問,很好的利用他們之間的關(guān)系,編寫程序。⑵測(cè)試數(shù)據(jù)及運(yùn)行結(jié)果⑶結(jié)果分析與結(jié)論基本準(zhǔn)確,誤差基本不影響結(jié)果。⑷程序代碼#include<iostream>#include<cmath>usingnamespacestd;classrectangle//基類{public:rectangle(doublel,doublew)//構(gòu)造函數(shù)//構(gòu)造函數(shù)造成的警告信息{length=l;width=w;}rectangle(){cout<<"rectangle'sdefaultconstructorscalled"<<endl;}~rectangle(){}doublearea(doublel,doublew){returnl*w;}//成員函數(shù)doublegirth(doublel,doublew){return2*(l+w);}//成員函數(shù)private:doublelength,width;};classsquare:publicrectangle//定義square類{public:square(inte){edge=e;}square()//派生類的構(gòu)造函數(shù){cout<<"square'sdefaultconstructorscalled"<<endl;}~square(){}doublesarea(doublee){returne*e;}//計(jì)算正方形面積doublesgirth(doublee){return4*e;}doubleaarea(doublee){returne*e;}//圓形的面積doubleagirth(doublee){return2*e;}doublebarea(doublec,doubleb){returnc*b;}//扇形的面積doublebgirth(doublec,doubleb){returnc+2*b;}doublecarea(doublee,doublef,doubleg){return(e+f+g)/2*((e+f+g)/2-e)*((e+f+g)/2-f)*((e+f+g)/2-g);}//三角形的面積doublecgirth(doublee,doublef,doubleg){returne+g+f;}doubledarea(doubleup,doublelo,doubleg){return(up+lo)*g/2;}doubledgirth(doubleup,doublelo,doublej,doublem){returnup+lo+j+m;}private:intedge;};//1unresolvedexternals,main;intmain(){doublepi=3.14;inti;doublel,w,ed,a,b,r,h,c,f,up,lo,j,g,m;squares;while(1){cout<<"請(qǐng)選擇輸入i:1是矩形,2是正方形,3是圓形,4是扇形,5是三角形,6是梯形,7退出程序:"<<endl;cin>>i;if(i==1){cout<<"輸入矩形的長和寬:"<<endl;cin>>l>>w;if(l>0&&w>0){cout<<"矩形的面積等于"<<s.area(l,w)<<endl;cout<<"矩形的周長等于"<<s.girth(l,w)<<endl;}elsecout<<"數(shù)據(jù)不合法"<<endl;}elseif(i==2){cout<<"輸入正方形的邊長:"<<endl;cin>>ed;if(ed>0){cout<<"正方形的面積等于"<<s.sarea(ed)<<endl;cout<<"正方形的周長等于"<<s.sgirth(ed)<<endl;}elsecout<<"數(shù)據(jù)不合法"<<endl;}elseif(i==3){cout<<"輸入圓形的半徑:"<<endl;cin>>r;if(r>0){cout<<"圓形的面積等于"<<pi*s.aarea(r)<<endl;cout<<"圓形的周長等于"<<pi*s.agirth(r)<<endl;}elsecout<<"數(shù)據(jù)不合法"<<endl;}elseif(i==4){cout<<"輸入扇形的半徑和弧長:"<<endl;cin>>f>>h;if(f>0&&h>0){cout<<"扇形的面積等于"<<s.barea(f,h)/2<<endl;cout<<"扇形的周長等于"<<s.bgirth(f,h)<<endl;}elsecout<<"數(shù)據(jù)不合法"<<endl;}elseif(i==5){cout<<"輸入三角形的三邊:"<<endl;cin>>a>>b>>c;if(a+b>c&&a+c>b&&b+c>a&&a-b<c&&a-c<b&&b-c<a){cout<<"三角形的面積等于"<<sqrt(s.carea(a,b,c))<<endl;cout<<"三角形的周長等于"<<s.cgirth(a,b,c)<<endl;}elsecout<<"數(shù)據(jù)不合法"<<endl;}elseif(i==6){cout<<"輸入梯形的上底、下底、左腰、右腰、高:"<<endl;cin>>up>>lo>>j>>m>>g;if(up>0&&lo>0&&j>0&&m>0&&g>0){cout<<"梯形的面積等于"<<s.darea(up,lo,g)<<endl;cout<<"梯形的周長等于"<<s.dgirth(up,lo,j,m)<<en

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(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ǔ)空間,僅對(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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論