C#-密度较量

/* 
 * 编写控制台应用程序,在其中创建物体类PhysicalObject,通过其私有字段来存放重量和体积,通过公有属性来访问其重量、体积、密度
 * ,并通过公有方法来判断该物体是否会在水中下沉。
 * 提示:(1)浮力计算公式:  物体密度>液体密度,下沉,G物>F浮
 *                            物体密度=液体密度,悬浮,G物=F浮(基本物体是空心的)
 *                            物体密度<液体密度,上浮,(静止后漂浮)G物<F浮
 *        (2)纯水密度是1克每立方厘米,1升水的重量为1kg.
 *        (3)比重(密度)=物体的重量/物体的体积。
*/
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Text.RegularExpressions;

namespace ConsoleApplication2
{
    class PhysicalObject
    {
        private double zl,tj;
        public PhysicalObject(double zl, double tj)
        {
            this.zl = zl;
            this.tj = tj;
        }
        public double Zl
        {
            get { return zl; }
            set
            {
                if (value > 0)
                    zl = value;
                else
                    Console.WriteLine("输入错误!");
            }
        }
        public double Tj
        {
            get { return tj; }
            set
            {
                if (value > 0)
                    tj = value;
                else
                    Console.WriteLine("输入错误!");
            }
        }
        public double md
        {
               get {
                   if (tj != 0)
                       return zl / tj;
                   else
                       return 0;
               }
        }
        public string judge()
        {
            if (md > 1)
                return "下沉";
            else if (md == 1)
                return "悬浮";
            else
                return "上浮";
        }
    }
    class Program
    {
        static void Main(string[] args)
        {
            for (; ; )
            {
                Console.WriteLine("请输入重量和体积:");
                string s = Console.ReadLine();
                string[] ns = s.Split(' ');
                double[] n = new double[3];
                for (int i = 0; i < ns.Length; i++)
                    n[i] = Convert.ToDouble(ns[i]);
                if (n[0] == 1 && n[1] == 1)
                    break;
                PhysicalObject p = new PhysicalObject(n[0], n[1]);
                Console.WriteLine("物体在水中的状态:{0}\n", p.judge());
            }
            Console.WriteLine("结束!");
            Console.ReadKey();
        }
    }
}

运行结果:


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值