寒假專案4-點與距離
/*
* Copyright (c) 2014, 煙臺大學計算機學院
* All rights reserved.
* 檔名稱:test.cpp
* 作 者:劉暢
* 完成日期:2015 年 1 月 31 日
* 版 本 號:v1.0
*
* 問題描述:讀程式,寫出函式的定義,注意其中列舉型別的用法。
* 輸入描述:
* 程式輸出:按照需求輸出。
程式碼如下:
#include <iostream>
#include <cmath>
using namespace std;
enum SymmetricStyle {axisx,axisy,point};//分別表示按x軸, y軸, 原點對稱
struct Point
{
double x; // 橫座標
double y; // 縱座標
};
double distance1(Point p1, Point p2); // 兩點之間的距離
double distance0(Point p1);
Point symmetricAxis(Point p,SymmetricStyle style); //返回對稱點
int main( )
{
Point p1= {1,5},p2= {4,1},p;
cout<<"兩點的距離為:"<<distance1(p1,p2)<<endl;
cout<<"p1到原點的距離為:"<<distance0(p1)<<endl;
p=symmetricAxis(p1,axisx);
cout<<"p1關於x軸的對稱點為:"<<"("<<p.x<<", "<<p.y<<")"<<endl;
p=symmetricAxis(p1,axisy);
cout<<"p1關於y軸的對稱點為:"<<"("<<p.x<<", "<<p.y<<")"<<endl;
p=symmetricAxis(p1,point);
cout<<"p1關於原點的對稱點為:"<<"("<<p.x<<", "<<p.y<<")"<<endl;
return 0;
}
// 求兩點之間的距離
double distance1(Point p1,Point p2)
{
double d;
d=sqrt((p1.x-p2.x)*(p1.x-p2.x)+(p1.y-p2.y)*(p1.y-p2.y));
return d;
}
// 求點到原點的距離
double distance0(Point p)
{
double d;
d=sqrt(p.x*p.x+p.y*p.y);
return d;
}
// 求對稱點
Point symmetricAxis(Point p1,SymmetricStyle style)
{
Point p;
p.x=p1.x;
p.y=p1.y;
switch(style)
{
case axisx:
p.y=-p1.y;
break;
case axisy:
p.x=-p1.x;
break;
case point:
p.x=-p1.x;
p.y=-p1.y;
}
return p;
}
執行結果:
做得時候發現distance那總是出錯,不知道是怎麼了。後來看老師的解答改為了distance1才通過編譯,但還是不知道為什麼,希望有大神能解釋下。
相關文章
- 曼哈頓距離與切比雪夫距離
- 曼哈頓距離與切比雪夫距離的互化
- 寒假專案2-猴子選大王
- 微軟雅黑,還有點兒距離微軟
- python 對城市距離自動化爬取-小型專案Python
- 寒假專案5-讀懂“共同體"
- JavaScript 元素距離視窗頂部的距離JavaScript
- 專家釋出正常髮際線距離,專案經理都在偷偷自測
- 寒假專案3-應用列舉(示例)
- 寒假補充專案-回溯法走迷宮
- PostgreSQL遺傳學應用-矩陣相似距離計算(歐式距離,…XX距離)SQL矩陣
- 編輯距離及編輯距離演算法演算法
- JavaScript獲取元素距離文件頂部的距離JavaScript
- Laravel 距離排序Laravel排序
- unit原子距離
- 【Python】距離Python
- 最小距離分類器,互動式選取影像樣本分類資料,進行最小距離分類(實現歐式距離,馬氏距離,計程距離)
- 原生JS獲取DOM 節點到瀏覽器頂部的距離或者左側的距離JS瀏覽器
- 利用空間資料庫求兩點距離資料庫
- javascript獲取元素距離網頁頂部的距離JavaScript網頁
- Google For SaaS - 谷歌與SaaS企業零距離Go谷歌
- 寒假專案3-應用列舉(設計)
- 計算地圖中兩點之間的距離地圖
- 微信小程式——計算2點之間的距離微信小程式
- 距離度量學習
- 【DP】編輯距離
- 液晶尺寸與點距的關係
- 寒假補充專案-雜湊法的儲存與查詢(開發地址法)
- git倉庫與專案原始碼分離Git原始碼
- Vijos1680距離/openjudge2988計算字串的距離[DP]字串
- 你與小程式開發的距離有多遠?
- 空間距離計算
- 寒假專案1-動態連結串列體驗(示例)
- 第四周【專案4-圓柱表面積】
- 第2周專案4-圖書館的書
- 打造專屬測試平臺4-使用Docker部署Django專案DockerDjango
- 技術支援與專案開發分離薦
- milvus 使用 l2 歐式距離計算向量的距離,計算出來的距離的最大值是多少?