
摘 要:平面內(nèi)兩點(diǎn)間距離的計(jì)算方法很多,該文提出了利用面向?qū)ο蟮某绦蛟O(shè)計(jì)方法,通過(guò)VC++6.0編譯。介紹了計(jì)算兩點(diǎn)間距離的編程方法,并給出了源程序代碼。該文的目的在于使讀者可以利用此種方法處理一些比較復(fù)雜的問(wèn)題。以便在今后的學(xué)習(xí)和工作中提高生產(chǎn)效率,降低成本。
關(guān)鍵詞:數(shù)據(jù) 程序 代碼 工程
中圖分類號(hào):TP31 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1674-098X(2015)10(b)-0157-02
已知平面內(nèi)兩點(diǎn)間的坐標(biāo)去求兩點(diǎn)間的距離有很多方法。比如可以直接用計(jì)算器求兩點(diǎn)的橫縱坐標(biāo)的平方和,然后在開方。也可以利用EXCEL表格進(jìn)行計(jì)算。但這些方法處理簡(jiǎn)單的問(wèn)題還可以,對(duì)于處理一些比較復(fù)雜的問(wèn)題就很繁瑣了,而且數(shù)據(jù)的輸入和輸出也很麻煩。筆者經(jīng)過(guò)實(shí)踐,總結(jié)出了新的方法。即利用面向?qū)ο蟮某绦蛟O(shè)計(jì)方法,通過(guò)VC++6.0編譯。
1 面向?qū)ο蠓椒ê?jiǎn)介
面向?qū)ο蠓椒ǖ漠a(chǎn)生,是計(jì)算機(jī)科學(xué)發(fā)展的要求。隨著軟件規(guī)模進(jìn)一步的擴(kuò)大,對(duì)軟件可靠性和代碼可重用性的要求也進(jìn)一步提高。就是在這樣的背景下,面向?qū)ο蟮某绦蛟O(shè)計(jì)方法應(yīng)運(yùn)而生。和傳統(tǒng)的程序設(shè)計(jì)方法相比,面向?qū)ο蟮某绦蛟O(shè)計(jì)具有抽象、封裝和多態(tài)性等特征,是通過(guò)為數(shù)據(jù)和代碼建立分塊的內(nèi)存區(qū)域,以便提供對(duì)程序進(jìn)行模塊化的一種程序設(shè)計(jì)方法。
2 C++編程程序介紹
每個(gè)C++程序都由一個(gè)或多個(gè)文件組成,根據(jù)約定,用于存儲(chǔ)代碼的文件有兩類:頭文件和源文件。頭文件可以包含描述程序所需的數(shù)據(jù)類型的代碼,以及其它類型的聲明。頭文件擴(kuò)展名為.h。源文件的擴(kuò)展名為.cpp,它包含了函數(shù)聲明,即程序的可執(zhí)行代碼。
3 DOS操作系統(tǒng)下程序編制方法
打開VC++6.0后,選擇:文件|新建,在打開的對(duì)話框中選擇“工程”,在選擇“Win32 Console Application”->填寫“工程名稱”->選擇“位置”->“確定”。然后在選擇:文件|新建,在打開的對(duì)話框中選擇“文件”,在選擇“C++Source file”->填寫“文件名稱”->“確定”。這樣就建好了一個(gè).cpp文件。然后你在.cpp文件中寫入你的程序代碼就可以了。
下面是筆者編制的求平面上兩點(diǎn)間距離程序的部分源代碼。
#include
#include
#include
const double PI=3.14;
using namespace std;
void main()
double x1,y1,x0,y0,A,B,i,j;
……
A=x1-x0;
B=y1-y0;
i=A*A+B*B;
j=sqrt(i);
cout<<”兩點(diǎn)間距離為:”< 該代碼可以通過(guò)VC++6.0,編譯,組件,執(zhí)行生成擴(kuò)展名為.exe的可執(zhí)行文件。此文件只能在DOS操作系統(tǒng)下執(zhí)行。 4 WINDOWS操作系統(tǒng)下程序編制方法 4.1 新建MFCAPP工程 雙擊VC++6.0圖標(biāo),新建工程,選擇MFC APPWizard[exe],工 程名稱寫成JL點(diǎn)確定。選擇基本對(duì)話框,下一步,下一步,再下一步,選擇完成,點(diǎn)擊確定。 4.2 安排窗口界面中的控件 出現(xiàn)設(shè)計(jì)界面,在對(duì)話框中添加控件。加入4個(gè)靜態(tài)文本控件和編輯框控件,分別用于輸入兩點(diǎn)的橫縱坐標(biāo);1個(gè)“計(jì)算”按鈕,將來(lái)點(diǎn)擊后可以完成求解。加入1個(gè)靜態(tài)文本控件和編輯框控件,用于輸出兩點(diǎn)間距離的數(shù)值。 4.3 將編輯框控件與變量綁定 為了讓程序從窗口的編輯框中提取出輸入的值,要設(shè)置變量,并與控件綁定。在設(shè)計(jì)窗口中點(diǎn)右鍵,選擇Class Wizard(建立類向?qū)Вc(diǎn)擊Member Variables標(biāo)簽,設(shè)置各個(gè)控件對(duì)應(yīng)的變量。如編輯框控件1的ID為IDC_EDIT1,為其添加對(duì)應(yīng)的變量,變量名為m_x0,變量類型為double。同法為其他控件設(shè)置變量。 4.4 為按鈕設(shè)置將來(lái)點(diǎn)擊后要執(zhí)行的程序 切換到Message Maps標(biāo)簽頁(yè),為按鈕添加BN_CLICKED消息映射,點(diǎn)擊Messages框中的BN_CLICKED,再單擊右側(cè)“Add Function…”按鈕,在新出現(xiàn)的彈出式窗口中點(diǎn)OK。之后可以看到加入了Member Functions,雙擊新增加的成員函數(shù),現(xiàn)在需要輸入程序了。如下: void CMyDlg::OnButton1() double x1,y1,x0,y0,A,B,i,j; UpdateData(); A=m_x1-m_x0; B=m_y1-m_y0; i=A*A+B*B; m_j=sqrt(i); UpdateData(FALSE); 4.5 運(yùn)行程序 運(yùn)行程序,結(jié)果是見(jiàn)圖1。 我們可以輸入相應(yīng)的兩點(diǎn)坐標(biāo),點(diǎn)擊計(jì)算,兩點(diǎn)間距離自動(dòng)算出。 5 結(jié)語(yǔ) 該文提出了兩種新的計(jì)算兩點(diǎn)間距離的編程方法:一種在DOS操作系統(tǒng)下執(zhí)行;另一種在WINDOWS操作系統(tǒng)下執(zhí)行。相比之下后者更直觀,操作更簡(jiǎn)便,但需要以前者為基礎(chǔ)。可以利用此種方法處理一些比較復(fù)雜的問(wèn)題,達(dá)到舉一反三的目的。 參考文獻(xiàn) [1]劉振安.面向?qū)ο蟪绦蛟O(shè)計(jì)[M].北京:經(jīng)濟(jì)科學(xué)出版社,2002. [2]Ivor Horton,著.C++入門經(jīng)典[M].李予敏,譯.北京:清華大學(xué)出版社,2006:10-13. [3]侯俊杰.深入淺出MFC[M].武漢:華中科技大學(xué)出版社,2001:196-200.