




已閱讀5頁,還剩11頁未讀, 繼續(xù)免費閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
課程設(shè)計(論文)任務(wù)書 軟件 學(xué)院 軟件+會計 專業(yè) 2013-3 班 一、 課程設(shè)計(論文)題目 : 求解有理數(shù)分式方程 二、課程設(shè)計(論文)工作自 2014 年 6 月 20 日起至 2014 年 6 月 26 日止 三、課程設(shè)計(論文) 地點: 創(chuàng)新樓 四、課程設(shè)計(論文)內(nèi)容要求:1. 本課程設(shè)計的目的(1)掌握C+語言的程序設(shè)計方法; (2)理論聯(lián)系實際,進一步提高學(xué)生的軟件開發(fā)技術(shù);(3)培養(yǎng)學(xué)生分析、解決問題的能力;(4)提高學(xué)生實踐論文撰寫能力。2. 課程設(shè)計的任務(wù)及要求1) 基本要求:(1) 對系統(tǒng)所需完成的功能分析;(2) 使用Visual C+編譯器進行程序編譯;(3) 提出系統(tǒng)的設(shè)計方案;(4) 對所設(shè)計源程序進行調(diào)試。2) 創(chuàng)新要求在基本要求達到后,可進行創(chuàng)新設(shè)計。3) 課程設(shè)計論文編寫要求(1)理論設(shè)計部分以課程設(shè)計論文的形式提交,格式必須按照課程設(shè)計論文標準格式進行書寫和裝訂。(2)課程設(shè)計報告(論文)包括設(shè)計任務(wù)分析(包括設(shè)計任務(wù)書、設(shè)計運行環(huán)境、同組人員及分工等)、系統(tǒng)總框圖、每個模塊的設(shè)計分析、列出所有定義的函數(shù)及說明、存在的問題與不足及對策、附上程序源代碼。(3)用A4紙打印出文檔(附上源代碼),封面到教務(wù)處購買;所寫的有效代碼不得少于50行;18周上機檢查程序并上交設(shè)計報告。4) 課程設(shè)計評分標準: (1)學(xué)習(xí)態(tài)度:20分;(2)系統(tǒng)演示:15分;(3)回答問題:15分;(4)論文撰寫:40分;(5)創(chuàng)新思想:10分成績評定實行優(yōu)秀、良好、中等、及格和不及格五個等級。不及格者需重做。5) 參考文獻:(1)謝昕等編著,C+程序設(shè)計,北京郵電出版社. 2010.12(2)譚浩強編著,C面向?qū)ο蟪绦蛟O(shè)計,清華大學(xué)出版社. 2006.16) 課程設(shè)計進度安排1.準備階段(4學(xué)時):選擇設(shè)計題目、了解設(shè)計目的要求、查閱相關(guān)資料。2.程序模塊設(shè)計分析階段(4學(xué)時):程序總體設(shè)計、詳細設(shè)計。3.代碼編寫調(diào)試階段(8學(xué)時):程序模塊代碼編寫、調(diào)試、測試。4.撰寫論文階段(4學(xué)時):總結(jié)課程設(shè)計任務(wù)和設(shè)計內(nèi)容,撰寫課程設(shè)計論文。7) 課程設(shè)計題目具體要求:設(shè)計一個Rational(有理數(shù))類,用來求解有理數(shù)分式方程。有理數(shù)就是兩個整數(shù)的比率,通常表示為a/b。其中a稱為分子、b稱為分母。分母不能為0。開發(fā)Rational類的目標就是創(chuàng)建一種類型,該類型的對象要像使用基本類型定義的對象那樣,讓人感覺到自然。學(xué)生簽名: 年 月 1日 課程設(shè)計(論文)評審意見(1)學(xué)習(xí)態(tài)度(20分):優(yōu)()、良()、中()、一般()、差(); (2)系統(tǒng)演示(15分):優(yōu)()、良()、中()、一般()、差();(3)回答問題(15分):優(yōu)()、良()、中()、一般()、差();(4)論文撰寫(40分):優(yōu)()、良()、中()、一般()、差();(5)創(chuàng)新思想(10分):優(yōu)()、良()、中()、一般()、差();綜合評定等級:評閱人: 職稱: 年 月 日目 錄第1章 設(shè)計任務(wù)分析1第2章 功能實現(xiàn)詳細設(shè)計2第3章 功能測試6第4章 源代碼9第5章 小結(jié)15參考文獻16第一章 設(shè)計任務(wù)分析功能分析:做求解有理數(shù)分式方程,設(shè)計一個Rational(有理數(shù))類,用來實現(xiàn)有理數(shù)分式方程的輸入和計算。所以針對這個程序設(shè)計,需要實現(xiàn)有理數(shù)的輸入輸出,有理數(shù)分式方程的系數(shù)輸入輸出及方程的求解,分式與浮點數(shù)的轉(zhuǎn)換,以及分式的化簡。此次設(shè)計,定義一個Rational類,并定義公有、私有成員函數(shù)、構(gòu)造函數(shù),以及使用重載輸入輸出流運算符。小組成員:梁欣儀 鄧雅倩 涂華小組分工:鄧雅倩:主菜單,分子分母的輸入輸出梁欣怡:分式的化簡,分式的浮點數(shù)的轉(zhuǎn)換涂 華:有理數(shù)的大小比較,有理數(shù)的四則運算,有理數(shù)分式方程的求解在本次課程設(shè)計中我主要負責(zé):主菜單,分子分母的輸入輸出。所以,需要考慮以下問題:v 如何設(shè)計主菜單界面v 分子與分母的輸入與輸出問題。例如,可以使用如下形式:cini; 1/3 /輸出 要實現(xiàn)這些操作,就需要重載輸入/輸出流運算符。 第2章 功能實現(xiàn)詳細設(shè)計設(shè)計思路與算法1. 設(shè)計主菜單界面首先編寫一個菜單驅(qū)動程序,輸入1-4之間的任意一個數(shù)字,即可進入相應(yīng)選擇項。思路提示:可使用for語句和switchcase語句實現(xiàn)主菜單功能的循環(huán)選擇。部分參考代碼:void main() for(; ;) switch(menu_select() case 1: Y0(); /輸入輸出有理數(shù) break; case 2: Y1(); /有理數(shù)換算 break; case 3: Y2(); /有理數(shù)求解方程 break;case 4: coutt再見!n; return; int menu_select() / 菜單選擇函數(shù) char s2; int cn; for(int i=0;i24;i+) cout* 1.檢測有理數(shù)輸入輸出.*n; cout* 2.有理數(shù)換算. *n; cout* 3.解有理數(shù)方程. *n; cout* 4.退出. *; coutendl; for(; ;) gets(s); cn=atoi(s); / 是為了使輸入的字符串轉(zhuǎn)變?yōu)閿?shù)字 return cn; 語句“cn=atoi(s);”是為了使輸入的字符串轉(zhuǎn)變?yōu)閿?shù)字,以便使switch中的case語句對應(yīng)數(shù)字1-3。對于不符合要求的輸入,將被要求重新輸入。2.分子分母的輸入重載流運算符-按格式構(gòu)造輸出/輸入。 /*重載輸出流運算符ostream& operator(ostream& ostr,const Rational& x) ostrx.num”/”x.den; return ostr; 輸入流需要保證正確的格式。首先保證分母不等于零;然后調(diào)用Standardize()和Reduce()函數(shù)調(diào)整格式。第3章 設(shè)計和調(diào)試分析【運行效果參考】1.主界面2.實現(xiàn)各種有理分數(shù)的輸入/輸出3 第4章 源代碼#include#include#includeclassRationalprivate:longnum,den;longgcd(longm,longn)const;public:Rational(longp=0,longq=1);Rational(doublex);voidStandardize(void);voidReduce(void);doublezhuanhua(void);voidPrintMixedNumber(void);friendistream&operator(istream&istr,Rational&x);friendostream&operator(ostream&ostr,constRational&x);Rationaloperator+(constRational&x);Rationaloperator-(constRational&x);Rationaloperator*(constRational&x);Rationaloperator/(constRational&x);Rationaloperator-(void);intoperator(constRational&x);intoperator(constRational&x);intoperator=(constRational&x);Rational:Rational(longp,longq)num=p;den=q;voidRational:Standardize(void)if(denn)if(n=0)x=m;elsegcd(n,m%n);elseif(m=0)x=n;elsegcd(m,n%m);returnx;voidRational:Reduce(void)longbigdivisor,tempnumerator;tempnumerator=(num1)num/=bigdivisor;den/=bigdivisor;istream&operator(istream&istr,Rational&x)charc;istrx.numcx.den;if(x.den=0)cerrAZerodenominatoriginvalidendl;exit(1);x.Standardize();x.Reduce();returnistr;ostream&operator(ostream&ostr,constRational&x)ostrx.num/x.den;returnostr;RationalRational:operator+(constRational&x)Rationala;a.num=den*x.num+x.den*num;a.den=x.den*den;a.Standardize();a.Reduce();returna;RationalRational:operator-(constRational&x)Rationala;a.num=num*x.den-x.num*den;a.den=x.den*den;a.Standardize();a.Reduce();returna;RationalRational:operator*(constRational&x)Rationala;a.num=num*x.num;a.den=den*x.den;a.Standardize();a.Reduce();returna;RationalRational:operator/(constRational&x)Rationala;a.num=num*x.den;a.den=den*x.num;a.Standardize();a.Reduce();returna;RationalRational:operator-(void)returnRational(-num,den);intRational:operatorden*x.num)return1;elsereturn0;intRational:operator=den*x.num)return1;elsereturn0;intRational:operator=(constRational&x)if(num*x.den=den*x.num)return1;elsereturn0;intRational:operator!=(constRational&x)if(num*x.den!=den*x.num)return1;elsereturn0;intRational:operator(constRational&x)if(num*x.denden*x.num)return1;elsereturn0;intRational:operator=(constRational&x)if(num*x.den=den*x.num)return1;elsereturn0;doubleRational:zhuanhua(void)returndouble(num)/den;voidRational:PrintMixedNumber(void)longwholepart=long(num/den);Rationalfractionpart;fractionpart.den=den;fractionpart.num=num-wholepart*den;if(fractionpart=Rational(0L)coutwholepartendl;elsefractionpart.Reduce();if(wholepart0)fractionpart=-fractionpart;if(wholepart!=0)coutwholepartfractionpartendl;elsecoutfractionpartendl;Rational:Rational(doublex)doublevall,val2;vall=100000000L*x;val2=10000000L*x;num=long(vall-val2);den=90000000L;Reduce();voidY0()Rationalx;cout請輸入有理數(shù)x:x;coutx=xendl;cout-x=-xendl;cout浮點數(shù)形式:x.zhuanhua()endl;voidY1()doublex,y;Rationali,j,k,l;coutx;cout其有理數(shù)形式為:Rational:Rational(x)endl;couti;cout其等效浮點數(shù)為:i.zhuanhua()endl;cout3.請輸入2個有理數(shù):jk;cout2數(shù)相加得j+k2數(shù)相減得j-k2數(shù)相乘得j*k2數(shù)相除得j/kendl;cout4.請輸入一個浮點數(shù):y;l=Rational:Rational(y);cout轉(zhuǎn)化為有理數(shù)為:lendl;cout再轉(zhuǎn)化為帶分數(shù)形式的有理數(shù)為:;l.PrintMixedNumber();voidY2()Rationalx,y,z;cout有理數(shù)方程形式如下:endl;cout(a/b)x+(c/d)=e/fendl;cout請輸入3個有理數(shù)系數(shù):xyz;if(x=Rational(0L)cout此方程無解.endl;elsecout其解為:(z-y)/xendl;intmenu_select()chars2;intcn;for(inti=0;i24;i+)cout*;coutendl;cout ”求解有理數(shù)菜單n”; cout”第八組:梁欣儀 鄧雅倩 涂華n”;cout”*-*n”;cout*1.有理數(shù)輸入輸出.*n;cout*2.有理數(shù)換算.*n;cout*3.解有理數(shù)分式方程.*n;cout*4.退出.*; cout”*-*n”;coutendl;for(intj=0;j24;j+)cout*;coutendl請選擇:;for(;)cin.getline(s,2);cn=atoi(s);if(cn4)coutnt輸入錯誤,重選,范圍1-4:;elsebreak;returncn;voidhandle_menu()for(;)switch(menu_sele
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 長梁熱壓銅掛鎖項目投資可行性研究分析報告(2024-2030版)
- 郁達夫的課件
- 安徽省蚌埠市第一中學(xué)2025屆物理高二下期末預(yù)測試題含解析
- 教育專家選拔與管理辦法
- 科協(xié)項目資金管理辦法
- 江北新區(qū)幼兒園管理辦法
- 防洪公務(wù)碼頭管理辦法
- 檔案代管合同管理辦法
- 防火監(jiān)控設(shè)施管理辦法
- 六盤水市選調(diào)生管理辦法
- 華潤守正評標專家考試試題及答案
- 高中區(qū)域地理:極地地區(qū)南極、北極
- 房地產(chǎn)開發(fā)全流程培訓(xùn)講義課件
- DB44-T 2163-2019山地自行車賽場服務(wù) 基本要求-(高清現(xiàn)行)
- 云南省特種設(shè)備檢驗檢測收費標準
- DB15T 933-2015 內(nèi)蒙古地區(qū)極端高溫、低溫和降雨標準
- 有鍵螺旋槳及尾軸安裝質(zhì)量要求標準
- 工傷責(zé)任保險單
- 固體廢物采樣培訓(xùn)
- 新概念英語第二冊單詞打印版
- 小學(xué)語文一到六年級生字表
評論
0/150
提交評論