數(shù)值轉換課程設計報告_第1頁
已閱讀1頁,還剩14頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、<p><b>  信息科學與技術學院</b></p><p>  程序設計基礎課程設計報告</p><p>  題目名稱: 數(shù)值轉換 </p><p>  學生姓名: </p><p>  學 號:

2、 </p><p>  專業(yè)班級: 2011級計算機與科學技術1班 </p><p>  指導教師: </p><p>  2012年 6 月 26 日</p><p><b>  目錄</b></p

3、><p>  1 課程設計題目及要求2</p><p><b>  1.1設計題目2</b></p><p><b>  1.2設計要求2</b></p><p><b>  2 總體設計3</b></p><p>  2.1程序功能描述3<

4、/p><p><b>  2.2設計思想4</b></p><p><b>  3 詳細設計5</b></p><p><b>  3.1類設計5</b></p><p>  3.2主模塊設計6</p><p>  3.2.1總體流程圖6</

5、p><p>  3.2.2 子功能流程圖7</p><p><b>  4 運行結果11</b></p><p>  5 課程設計總結13</p><p><b>  6 參考文獻14</b></p><p>  1 課程設計題目及要求</p><p&

6、gt;<b>  1.1設計題目</b></p><p><b>  數(shù)制轉換</b></p><p><b>  1.2設計要求</b></p><p>  問題描述(功能要求):</p><p>  定義一個數(shù)制轉換器,要求能夠實現(xiàn)二進制、十進制、八進制、十六進制間的相互轉

7、換。</p><p>  提示:將輸入的2進制數(shù)(一個非“0”即“1”的字符串)化為10進制數(shù)。用字符數(shù)組a盛放所輸入的二進制數(shù);而后從后往前逐一計算每一位的“位權”w (2的0次方、2的1次方、...),再計算“位權”乘以“位值”并累加到一個初值為0的變量value上,最后輸出該value。</p><p><b>  問題的解決方案:</b></p>

8、<p>  根據(jù)系統(tǒng)功能要求,可以將問題解決分為以下步驟: </p><p>  (1)分析系統(tǒng)中的各個實體之間的關系及其屬性和行為; </p><p> ?。?)根據(jù)問題描述,設計系統(tǒng)的類層次; </p><p> ?。?)完成類層次中各個類的描述(包括屬性和方法); </p><p> ?。?)完成類中各個成員函數(shù)的定義; &

9、lt;/p><p> ?。?)完成系統(tǒng)的應用模塊; </p><p><b> ?。?)功能調試; </b></p><p> ?。?)完成系統(tǒng)總結報告以及系統(tǒng)使用說明書。</p><p><b>  其他要求:</b></p><p>  只能使用C/C++語言,源程序要有適當

10、的注釋,是程序容易閱讀</p><p>  至少采用文本菜單界面(如果能使用圖形菜單界面更好)</p><p>  學生可以自動增加新功能板塊</p><p>  2 總體設計 </p><p><b>  2.1程序功能描述</b></

11、p><p>  在此程序中,程序的功能由一個個小的子程序組成,通過各個小程序之間的調用,完成數(shù)制轉換功能</p><p><b>  2.2設計思想</b></p><p>  此圖表達出此程序的轉換思想,應用位權法編寫二、八、十六進制到十進制的程序,應用除法和乘法的思想編寫十到二、八、十六的程序。當二、八、十六之間相互轉化時,調用兩個子程序進行轉

12、化。例如二進制轉化為八進制,先把二進制轉化為十進制在轉化為八進制。十進制在數(shù)值轉換程序中作為了一個橋梁的作用。在轉換小數(shù)部分時,程序默認輸出二十位小數(shù),不夠者用零補充。 </p><p><b>  3 詳細設計</b></p><p><b>  3.1類設計</b>

13、;</p><p>  class Turnform</p><p><b>  {</b></p><p><b>  public:</b></p><p>  Turnform(){}; //構造函數(shù)</p><p>

14、;  ~Turnform(){}; //析構函數(shù)</p><p>  void Tenton( char c[], double m) ; //10十進制數(shù)據(jù)轉換成其他進制</p><p>  double Ntoten( char c[], int n); //其他進制數(shù)據(jù)轉換成10進制數(shù)據(jù)&

15、lt;/p><p>  void Begin(); //主界面 函數(shù)</p><p>  void End(); //界面結束 函數(shù)</p><p>  void N_to_n_form(); //調用一般函數(shù)進行各進制間

16、的轉換</p><p>  int Head(); //調用其他函數(shù)應用函數(shù)</p><p><b>  private:</b></p><p>  void Smtobletter(char* c); //將小寫字母a-z轉換為A-Z</p>

17、<p>  void Numtointform( int m, int n) ; //轉換數(shù)據(jù)的整數(shù)部分</p><p>  void Numto_sma_form( double m, int n); //轉換數(shù)據(jù)的小數(shù)部分 </p><p>  void Combine_intsma( double m, int n) ; //合并轉換成的整

18、數(shù)和小數(shù)部分</p><p><b>  };</b></p><p><b>  3.2主模塊設計</b></p><p>  3.2.1總體流程圖</p><p>  3.2.2 子功能流程圖</p><p>  I.將小寫字母a-z轉換為A-Z</p>&

19、lt;p>  此函數(shù)是把輸入的字符串中的字母統(tǒng)一轉化為大寫,便于后面的統(tǒng)一計算 減輕工作量</p><p>  如果按大寫字母編寫一個函數(shù)再按小寫字母編寫一個程序 會大大加大了程序的繁瑣冗長,不簡便。</p><p>  II.其他進制數(shù)據(jù)轉換成10進制數(shù)據(jù)</p><p>  其他進制轉化為十進制的算法相同,利用位權進行計算 在計算到小數(shù)部分是 以數(shù)組名做地

20、址對數(shù)據(jù)進行讀取,然后進行加法計算</p><p>  III.十進制轉化為其他進制</p><p> ?、?轉換數(shù)據(jù)的整數(shù)部分</p><p>  十進制是一個橋梁 在十進制轉化為其他進制過程中 要把整數(shù)部分和小數(shù)部分分開計算,然后再合并在一起</p><p>  ② 轉換數(shù)據(jù)的小數(shù)部分</p><p>  此程序接

21、受的是小數(shù)部分 并把其轉化為二八十六進制,然后合并整數(shù)部分一起輸出。</p><p><b>  4 運行結果</b></p><p>  主界面 提示操作信息</p><p>  選擇需要轉換的數(shù)的進制</p><p><b>  輸入數(shù)</b></p><p>  結果

22、 輸出各種數(shù)制</p><p><b>  5 課程設計總結</b></p><p>  通過對數(shù)值轉換系統(tǒng)的編寫,我認識到結構設計的對C++程序設計的重要性。在編寫程序時要考慮好程序的結構、各個函數(shù)之間的相互調用,在適當?shù)奈恢米龊煤瘮?shù)的聲明。在類的設計過程中,考慮好各個函數(shù)之間的聯(lián)系,有些函數(shù)需要定義為公有,有些需要定義為私有。在本程序,未用到類的派生與繼承,是一

23、個相對簡單的程序。</p><p>  在編寫程序中,可以先對一個個小功能進行分別調試,運行通過后再把所有的程序組合在一起,設計整理函數(shù)之間的參數(shù)傳遞,利用函數(shù)名作為實參進行傳遞就像 Tenton( c, Ntoten(c,n))。各個程序聯(lián)系緊密。</p><p>  在這次小小的課程設計過程中,通過查找資料,仔細研究各個進制之間的轉化關系,然后結合數(shù)組等的特點進行算法設計。我們都知道,

24、算法是一個程序的靈魂,一個好的簡潔的算法可以節(jié)省運算空間,這對程序設計人員提出了更高的要求,只有勤奮思考學習,才能設計好程序,這也是我們下一步學習的方向。</p><p><b>  6 參考文獻</b></p><p> ?。?] 譚浩強,《C++程序設計》,北京,清華大學出版社 </p><p> ?。?] 湛為芳 《C++程序設計技

溫馨提示

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

評論

0/150

提交評論