只有首次输入才正常运行

首先定义一个类:

class Ticket
    {
        private int distance;

        public int Distance
        {
            get { return distance; }
           
        }
        //private decimal price;

        public decimal Price
        {
            get
            {
                if (distance>=2000)
                {
                    return 1.0m * distance * 0.6m;
                }
                else if (distance >= 1500)
                {
                    return distance * 0.7m;
                }
                else if (distance >= 1000)
                {
                    return distance * 0.8m;
                }
                else if (distance >= 500)
                {
                    return distance * 0.9m;
                }
                else
                {
                    return distance * 1.0m;
                }
            }
           
        }
        public Ticket(int distance)
        {
            if (distance < 0)
            {
                Exception error = new Exception("距离不能为负数!");
                throw error;
            }
            else
            {
                this.distance = distance;
            }
        }

        public void showPrice()
        {
            Console.WriteLine("距离为{0}的票价为{1}", distance, Price);
        }
    }

 

这是Main函数:

 static void Main(string[] args)
        {
            while (true)
            {
                string input = Console.ReadLine();
                if (input == "exit")
                {
                    Console.WriteLine("程序结束");
                    break;
                }
                else
                {
                    int inputnumber = Convert.ToInt32(input);
                    Ticket car = new Ticket(inputnumber);
                    car.showPrice();
                    Console.ReadKey();
                }
            }
        }

问题一:当第一次输入exit程序正常结束运行,若非第一次输入则报错。

问题二:当第一次输入数字时正常,若再继续输入则第一位会丢失。比如输入500则成了0,输入57则成了7

这两个问题感觉是同一个问题,不知道怎么会这样?

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值