; 一圆形游泳池。需在其周围建一圈过道,并且在最外边围上栅栏,栅栏价格为每英尺3.5美元,过道造价每平方英尺0.5美元。过道宽度为3英尺,游泳池半径由键盘输入。要求编程计算并输出过道和栅栏的造价。

global PI := 3.141592
global FencePrice := 3.5
global ConcretePrice := 0.5

InputBox, radius, 输入, 输入游泳池的半径:
Pool := new Circle(radius)
PoolRim := new Circle(radius+3)
;~ MsgBox % Pool.Circumference()
FenceCost := PoolRim.Circumference() *FencePrice
ConcreteCost := (PoolRim.Area() -Pool.Area() )*ConcretePrice
 
MsgBox,, 输出, 游泳池的半径是 %radius%`n围栏成本为 $ %FenceCost% `n混凝土过道成本为 $ %ConcreteCost%
Return


class Circle {  ;声明类Circle及其数据和方法
  ; Methods 
  ; creates a new instance of the Circle object
  __New(radius) {   ;构造函数
    this.radius := radius ;数据成员
  }
   
  Circumference() {  ;计算周长的函数
    Return 2*PI*this.radius
  }

  Area() {
    Return PI*this.radius*this.radius
  }

  ToString() {
    Return "Circle.radius: " . this.radius
  }
}

 

声明:站内资源为整理优化好的代码上传分享与学习研究,如果是开源代码基本都会标明出处,方便大家扩展学习路径。请不要恶意搬运,破坏站长辛苦整理维护的劳动成果。本站为爱好者分享站点,所有内容不作为商业行为。如若本站上传内容侵犯了原著者的合法权益,请联系我们进行删除下架。