标题:求助各位高手,今晚10点要交
只看楼主
dr3364895
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2013-10-15
结帖率:0
已结贴  问题点数:20 回复次数:4 
求助各位高手,今晚10点要交
外国老师没教我们C#让我们自学写程序。。。题目是翻译过来的,可能有点不通顺,凑活看看吧。
在平面坐标上直线运动的点以速度1.0、移动方向 30°、执行Method Move 、显示10.0 秒后的坐标,用C#,利用以下提示写程序。
Property: 现在的坐标 double x, y;
Field: 速度 double velocity;
方向(radian) double direction;
Method: 现在的坐标经过时间 t 之后的新坐标 void Move(double t);
Constructer: 坐标的初始值 用 double x, double y 当做参数。
搜索更多相关主题的帖子: direction double 新坐标 平面 
2013-10-15 15:37
shangsharon
Rank: 9Rank: 9Rank: 9
来 自:湖北武汉
等 级:蜘蛛侠
威 望:7
帖 子:221
专家分:1261
注 册:2012-3-25
得分:5 
程序代码:
class Program
    {
        static void Main(string[] args)
        {
            Point p = new Point(0.0, 0.0)
            {
                //弧度和角度转换
                Radian = Math.PI / 180 * 30.0,
                Speed = 1.0
            };

            Console.WriteLine("P当前坐标,X:{0},Y:{1}", p.X, p.Y);

            p.Move(10.0);

            Console.WriteLine("P当前坐标,X:{0},Y:{1}", p.X, p.Y);

            p.Move(10);

            Console.WriteLine("P当前坐标,X:{0},Y:{1}", p.X, p.Y);
        }
    }

    class Point
    {
        double x = 0.0;

        double y = 0.0;

        double speed = 0.0;

        double radian = 0.0;

        public Point(double x = 0.0, double y = 0.0)
        {
            this.x = x;
            this.y = y;
        }

        public double X
        {
            get { return Math.Round(x, 2); }
            set { x = value; }
        }

        public double Y
        {
            get { return Math.Round(y, 2); }
            set { y = value; }
        }

        public double Speed
        {
            get { return speed; }
            set { speed = value; }
        }

        /// <summary>
        /// 弧度,非角度
        /// </summary>
        public double Radian
        {
            get { return radian; }
            set { radian = value; }
        }

        /// <summary>
        /// 移动
        /// </summary>
        /// <param name="time">移动时间</param>
        public void Move(double time)
        {
            double s = speed * time;

            x += s * Math.Sin(radian);

            y += s * Math.Cos(radian);
        }
    }
2013-10-15 17:21
尾巴007
Rank: 1
等 级:新手上路
帖 子:5
专家分:5
注 册:2013-9-29
得分:5 
回复 2楼 shangsharon
好人呀!
2013-10-15 22:02
wp231957
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:神界
等 级:版主
威 望:422
帖 子:13681
专家分:53296
注 册:2012-10-18
得分:5 
好人

DO IT YOURSELF !
2013-10-17 08:59
hzm716
Rank: 1
等 级:新手上路
帖 子:6
专家分:9
注 册:2013-10-17
得分:5 
好手啊,不是看得很明白,不过,辛苦了!!
2013-10-18 15:24



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-421934-1-1.html




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

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