当前位置: 首页 > news >正文

五金配件店 东莞网站建设手机创建网页

五金配件店 东莞网站建设,手机创建网页,教育中介公司网站建设费用,青岛官网优化推广题目要求: 题目 1.shape 接口有面积Area() float64和 周长Perimeter()fioat64 两个法。为Circle Rectangle实现shape 接口。 2.实现isGreater(shape1,shape2 shape)boo1 函数,用于比较两个形状的大小,并使用单元测试验证 3.实现http.Handle…

题目要求:

题目
1.shape 接口有面积Area() float64和 周长Perimeter()fioat64 两个法。为`Circle` `Rectangle`实现`shape` 接口。
2.实现isGreater(shape1,shape2 shape)boo1 函数,用于比较两个形状的大小,并使用单元测试验证

3.实现http.Handler,作为HTTP服务比较Circle与 Rectangle 的大小。并使用香户端验证

请求示例:

curl --request POST \
--url http://localhost:8080/shape/isGreater \
--header 'content-type: application/json' \
--data '{"Shape1": {"Radius": 3}, "Shape2": {"Width": 2, "Height": 3}}'


代码

package mainimport ("encoding/json""fmt""log""net/http"
)const pi = 3.14type Shape interface {Area() float64Perimeter() float64
}type Circle struct {Radius float64
}type Rectangle struct {Height float64Width  float64
}func (c Circle) Area() float64 {return pi * c.Radius * c.Radius
}func (c Circle) Perimeter() float64 {return 2 * pi * c.Radius
}func (r Rectangle) Area() float64 {return r.Height * r.Width
}func (r Rectangle) Perimeter() float64 {return 2 * (r.Height + r.Width)
}func isGreater(s1, s2 Shape) bool {if s1.Area() > s2.Area() {fmt.Println("C1:%v is greater than C2:%v", s1, s2)return true}fmt.Println("C1:%v is less than C2:%v", s1, s2)return false
}type RequestData struct {Shape1 Circle    `json:"Shape1"`Shape2 Rectangle `json:"Shape2"`
}// CompareHandler 处理比较两个形状面积的HTTP请求
func CompareHandler(w http.ResponseWriter, r *http.Request) {var data RequestData// 从请求体中解码JSON数据到RequestData结构体中err := json.NewDecoder(r.Body).Decode(&data)if err != nil {// 如果解码失败,返回400 Bad Request错误http.Error(w, err.Error(), http.StatusBadRequest)return}// 比较两个形状的面积if isGreater(data.Shape1, data.Shape2) {// 如果圆形面积较大,返回 "Circle is larger"fmt.Fprintf(w, "Circle is larger")} else {// 否则,返回 "Rectangle is larger"fmt.Fprintf(w, "Rectangle is larger")}
}func main() {http.HandleFunc("/shape/isGreater", CompareHandler)log.Fatal(http.ListenAndServe(":8080", nil))
}

结果:

http://www.yayakq.cn/news/778198/

相关文章:

  • 烟台定制网站建设价格商务网站开发与建设
  • 做问卷的网站有那些中企动力科技股份有限公司销售
  • 最好的完全免费开源企业网站学历提升有几种方式
  • 怎么选择无锡网站建设WordPress离线编写
  • 免费网站空间怎么做家电设计公司
  • 可以做自己的单机网站网站多语言模块
  • 万网站长一个ip地址上可以做几个网站吗
  • 专业的网站建设与优化文昌市规划建设管理局网站
  • 临夏金属装饰网站建设网站积分规则设计
  • 网站模板的功能wordpress 忘记密码
  • 关于网站运营设计logo网站免费下载
  • 国外源代码网站建设工程评标专家在哪个网站登录
  • 网站如何做视频链接地址苏州网络公司优惠政策
  • 号码之家官网搜索引擎优化结果
  • 浙江平台网站建设哪家有营业执照年检网上申报入口
  • 在线课程网站开发的研究意义大城县网站建设
  • 外贸网站建设的意义宣传册排版
  • 游戏系统网站开发说明书四川网站建设广元分公司
  • html5做图书馆网站成都金牛网站建设公司
  • 首页网站怎么做网页编辑软件手机版
  • 国外网站网站app字节跳动现有员工人数
  • eclipse网站建设广州做网站公司
  • 瑞昌网站建设嘉定网站建设电脑培训
  • 域名做违法网站dremrever怎么做网站
  • 网站的图片大小深圳创业补贴申请
  • 意外险平台服务网站网站icp备案咋做
  • 敲代码做网站多少钱上海 网站建设 500强
  • 如何利用div做网站如何建立一个小程序
  • 棕色网站模板河北怀来县建设局网站
  • 西安分类信息网站开发微信小程序的软件