| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1287 人关注过本帖
标题:[求助]写个判断语句
只看楼主 加入收藏
er72681085
Rank: 1
等 级:新手上路
帖 子:28
专家分:0
注 册:2005-10-30
收藏
 问题点数:0 回复次数:5 
[求助]写个判断语句

/*要求判断每个图形是二维的还是三维的。如果一个图形是二维的,显示它的Area,如果一个图形是三维的,显示它的Area和Volume。*/
using System;

namespace _6._2
{
public abstract class Shape
{
public abstract double GetArea();//计算图形面积的抽象方法
public abstract double GetVolume();//计算图形体积的抽象方法
}

public abstract class TwoDimensionalShape:Shape//写一个二维图象抽象类
{
public double a;
public TwoDimensionalShape(double a)//构造函数
{
this.a=a;
}
public abstract double Noodles//抽象属性成员
{get;set;}
}

public class Circle:TwoDimensionalShape//定义二维派生类-圆类
{
public Circle(double a):base(a)//调用抽象类构造函数
{}
public override double Noodles//重写抽象类属性成员
{
get{return a;}
set{a=value;}
}
public override double GetArea()//调用抽象方法
{
Console.Write("圆的面积为:");
return Math.PI*a*a;
}
}

public class Square:TwoDimensionalShape//定义二维派生类-正方形类
{
public Square(double a):base(a)
{}
public override double Noodles
{
get{return a;}
set{a=value;}
}
public override double GetArea()
{
Console.Write("正方形的面积为:");
return a*a;
}
}

public class Triangle:TwoDimensionalShape//定义二维派生类-三角形类
{
public Triangle(double a):base(a)
{}
public override double Noodles
{
get{return a;}
set{a=value;}
}
public override double GetArea()
{
Console.Write("三角形的面积为:");
return Math.Sin(Math.PI/3)*a*a*1/2;
}
}

public abstract class ThreeDimensionalShape:Shape//定义三维图形类
{
public double b;
public ThreeDimensionalShape(double b)//构造函数
{
this.b=b;
}
public abstract double Body//抽象属性成员
{get;set;}
}

public class Sphere:ThreeDimensionalShape//定义三维派生类-球体类
{
public Sphere(double b):base(b)//调用抽象类构造函数
{}
public override double Body//重写抽象类属性成员
{
get{return b;}
set{b=value;}
}
public override double GetArea()//调用抽象方法
{
Console.Write("球体的表面积为:");
return Math.PI*4*b*b;
}
public override double GetVolume()
{
Console.Write("球体的体积为:");
return Math.PI*b*b*b*4/3;
}
}

public class Cube:ThreeDimensionalShape//定义三维派生类-正方体类
{
public Cube(double b):base(b)//调用抽象类构造函数
{}
public override double Body//重写抽象类属性成员
{
get{return b;}
set{b=value;}
}
public override double GetArea()//调用抽象方法
{
Console.Write("正方体的表面积为:");
return 6*b*b;
}
public override double GetVolume()
{
Console.Write("正方体的体积为:");
return b*b*b;
}
}

public class Cylinder:ThreeDimensionalShape//定义三维派生类-圆柱类
{
public Cylinder(double b):base(b)//调用抽象类构造函数
{}
public override double Body//重写抽象类属性成员
{
get{return b;}
set{b=value;}
}
public override double GetArea()//调用抽象方法
{
Console.Write("圆柱体的表面积为:");
return Math.PI*2*b*b+Math.PI*2*b*b;
}
public override double GetVolume()
{
Console.Write("圆柱体的体积为:");
return Math.PI*b*b*b;
}
}

class runApp
{
static void Main(string[] args)
{
for(int i=1;i<=10;i++)
{
Console.WriteLine("\n当边长为{0}个单位长度时",i);
Circle s = new Circle(i);
Console.WriteLine(s.GetArea());
Square s1=new Square(i);
Console.WriteLine(s1.GetArea());
Triangle s3=new Triangle(i);
Console.WriteLine(s3.GetArea());
Sphere s4=new Sphere(i);
Console.WriteLine(s4.GetArea());
Cube s5=new Cube(i);
Console.WriteLine(s5.GetArea());
Cylinder s6=new Cylinder(i);
Console.WriteLine(s6.GetArea());
}

Console.ReadLine();
}
}
}

搜索更多相关主题的帖子: public 三维 abstract 语句 图形 
2006-05-08 15:57
er72681085
Rank: 1
等 级:新手上路
帖 子:28
专家分:0
注 册:2005-10-30
收藏
得分:0 

怎么就是没人来帮忙解决下啊


好好学习,天天向上!
2006-05-09 22:41
niuxan0822
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2006-5-20
收藏
得分:0 
就是你写的这个东西都够我学习的了..
    一定要努力````````
2006-05-24 10:54
an163126
Rank: 1
等 级:新手上路
帖 子:95
专家分:0
注 册:2005-3-19
收藏
得分:0 
俺主要是不会,所以不好意思,你还是请教高手吧!

 发哥:透在骨里的酷
2006-05-24 11:40
googleknow
Rank: 1
等 级:新手上路
帖 子:64
专家分:0
注 册:2006-5-19
收藏
得分:0 
楼主厉害呀,写这么多的代码!弄得我不懂!
2006-05-24 11:44
月夜枫华
Rank: 4
等 级:贵宾
威 望:12
帖 子:437
专家分:42
注 册:2006-1-2
收藏
得分:0 
我读了一下楼主的代码,感觉就是把1到10个单位的正方形面积,正三角形 面积,圆面积以及圆柱体积,球体积和正方体的表面积和体积求出.不涉及到需要判断的地方啊

2006-05-24 18:20
快速回复:[求助]写个判断语句
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.020598 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved