C#实现物体动量和动能的计算

编写C#控制台应用程序,在其中创建物体类PhysicalObject,通过其私有字段来存放重量和体积,通过公有属性来访问其重量、
体积、密度,并通过公有方法来判断该物体是否会在水中下沉。
  提示:(1)浮力计算公式:ρ物>ρ液, 下沉 ,G物>F浮   
                         ρ物=ρ液,  悬浮 ,G物=F浮 (基本物体是空心的)  
                         ρ物<ρ液, 上浮,(静止后漂浮)G物<F浮   
       (2)纯水的密度是1k/cm3,一克每立方厘米,1升水的重量为1kg.
          (3)比重(ρ)=物体的重量/物体的体积
.编写C#控制台应用程序,对第2题进行扩展,从PhysicalObject中派生出移动物体类MovingObject,在其中增加物体的速度信息,
并实现物体动量和动能的计算。
   提示:动量计算公式p=m*v(物体质量*速度)
         动能计算公式p=m*v*v/2

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication1
{
    class PhysicalObject
    {
        private double g;
        private double v;
        public double G
        {
            set { g = value; }
            get { return g; }
        }
        public double V
        {
            set { v = value; }
            get { return v; }
        }
        public bool Up()
        {
            if (g / v > 1)
                return false;
            return true;
        }
    }
    class MovingObject : PhysicalObject
    {
        private double s;
        private double m;
        public double M
        {
            get { return m; }
            set { m = value; }
        }
        public double S
        {
            get { return s; }
            set { s = value; }
        }
        public double E()
        {
            return m * s * s;
        }
        public double MS()
        {
            return m* s;
        }
    }
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("请输入物体的重量(kg):");
            double g = double.Parse(Console.ReadLine());
            Console.WriteLine("请输入物体的体积(m3):");
            double v = double.Parse(Console.ReadLine());
            PhysicalObject wuti = new PhysicalObject();
            wuti.G = g;
            wuti.V = v;
            if (wuti.Up())
                Console.WriteLine("物体会浮在水上。");
            else
                Console.WriteLine("物体会下沉。");
            Console.WriteLine("请输入物体的质量(kg):");
            double m = double.Parse(Console.ReadLine());
            Console.WriteLine("请输入物体的速度(m/s):");
            double s = double.Parse(Console.ReadLine());
            MovingObject wu = new MovingObject();
            wu.M = m;
            wu.S = s;
            Console.WriteLine("物体的动能为:{0}",wu.E());
            Console.WriteLine("物体的动量为:{0}", wu.MS());
            Console.ReadKey();
        }
    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值