[可视化编程]故宫博物院售票系统

Spring-_-Bear 的 CSDN 博客导航

故宫的门票实行的是淡季票价和旺季票价:

  • 淡季从 11 月 01 日 - 03 月 31 日,票价为 40 元/张
  • 旺季从 04 月 01 日 - 10 月 31 日,票价为 60 元/张

另外,故宫为一些特殊人群提供了门票优惠政策:

  1. 成年人全票
  2. 学生半价
  3. 儿童免票
  4. 离休人员免票
  5. 60 岁及以上老年人享受半价优惠

根据参观月份和参观者的类型(用户参观时间直接获取系统时间),输出实际的门票价格。

运行示例:

在这里插入图片描述

程序源码:

using System;

namespace ImperialPalaceTicket
{
    class ImperialPalaceTicket
    {
        static void Main(string[] args)
        {
            // 获取当前月份
            int month = Int32.Parse(DateTime.Now.Month.ToString());
            int ticketPrice = month > 4 && month < 10 ? 60 : 40;
            int count1 = 0, count2 = 0, count3 = 0, count4 = 0, count5 = 0;

            Console.WriteLine("欢迎进入故宫博物院售票系统!");
            int choice;
            do
            {
                Console.WriteLine("\n\t票价说明:\n淡季(11月1日-3月31日)全价40元/张   \n旺季(4月1日-10月31日)全价60元/张");
                Console.WriteLine("    当前时间:" + DateTime.Now.ToLongDateString().ToString());
                Console.WriteLine("\n=====售票菜单=====");
                Console.WriteLine("1-成人票(全价)");
                Console.WriteLine("2-学生票(半价)");
                Console.WriteLine("3-老人票(半价)");
                Console.WriteLine("4-儿童票(免费)");
                Console.WriteLine("5-离休票(免费)");
                Console.WriteLine("0-结束选票\n");
                Console.WriteLine("=================");

                Console.Write("请输入您的选择:");
                choice = Int32.Parse(Console.ReadLine());

                switch (choice)
                {
                    // 根据选择判断想要购买票种,提示输入张数
                    case 1: Console.Write("请输入您想要购买的张数:"); count1 = Int32.Parse(Console.ReadLine()); break;
                    case 2: Console.Write("请输入您想要购买的张数:"); count2 = Int32.Parse(Console.ReadLine()); break;
                    case 3: Console.Write("请输入您想要购买的张数:"); count3 = Int32.Parse(Console.ReadLine()); break;
                    case 4: Console.Write("请输入您想要购买的张数:"); count4 = Int32.Parse(Console.ReadLine()); break;
                    case 5: Console.Write("请输入您想要购买的张数:"); count5 = Int32.Parse(Console.ReadLine()); break;
                    case 0: Console.Write("\n选票结束!\n"); break;
                    default: Console.Write("\n您的输入有误!请重新输入!\n"); break;
                }
            } while (choice != 0);

            // 打印购票信息
            Console.WriteLine("您的购票信息如下:");
            Console.WriteLine("成人票(" + ticketPrice + "元):" + count1 + "张");
            Console.WriteLine("学生票(" + ticketPrice / 2 + "元):" + count2 + "张");
            Console.WriteLine("老人票(" + ticketPrice / 2 + "元):" + count3 + "张");
            Console.WriteLine("儿童票(0元):" + count4 + "张");
            Console.WriteLine("离休票(0元):" + count5 + "张");
            // 输出票价
            int totalPrice = count1 * ticketPrice + count2 * ticketPrice / 2 + count3 * ticketPrice / 2;
            Console.Write("您的票价为:" + totalPrice + "元\n");
        }
    }
}
  • 3
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 7
    评论
Unity可视化编程对话系统是一种在Unity引擎中使用的工具,帮助开发者轻松创建和管理对话内容。通过使用这个系统,开发者可以更加方便地设计游戏角色之间的交流对话,并且可以自定义各种对话选项和情节。 首先,使用Unity可视化编程对话系统可以提高开发效率。开发者可以通过简单的拖拽和连接节点的方式,创建对话树,而不需要手动编写大量的代码。这样可以节省开发时间,并且降低了出错的风险。 其次,Unity可视化编程对话系统提供了大量的功能和选项,使得对话内容更加丰富多样。开发者可以使用系统内置的各种节点来创建不同类型的对话,包括文本对话、选项对话、触发事件等。并且,开发者还可以自定义节点的外观和功能,以满足游戏的需求。 此外,Unity可视化编程对话系统还能够方便地管理对话情节的流程。开发者可以创建多个对话树,实现不同情节之间的跳转和切换。并且,系统还提供了条件节点和分支节点,可以根据游戏中的条件来动态改变对话的流程,增加了游戏的可玩性和复杂度。 总结起来,Unity可视化编程对话系统是一种强大的工具,可大大简化和改善游戏中对话内容的创建和管理过程。它不仅提高了开发效率,也增加了对话的多样性和流程控制的灵活性,为游戏提供了更加丰富和有趣的交互体验。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

春天熊

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值