ASP.NET交通信息网上查询系统的设计与实现是一个典型的Web应用程序项目,它涵盖了计算机科学与技术、尤其是软件工程领域的多个重要知识点。这个系统旨在提供一个在线平台,让用户能够方便地查询交通信息,例如公交路线、航班时刻、火车时刻等。在本项目中,开发者使用了ASP.NET框架,这是一种由微软开发的用于构建动态网站、Web应用和Web服务的技术。 1. ASP.NET框架:ASP.NET是.NET Framework的一部分,提供了丰富的服务器控件、事件驱动模型以及自动状态管理,使得开发者可以快速构建功能强大的Web应用。在这个交通信息查询系统中,ASP.NET可能被用来创建用户界面、处理用户请求和生成动态内容。 2. C#编程语言:ASP.NET通常与C#语言结合使用,C#是一种面向对象的编程语言,拥有现代编程语言的特性,如垃圾回收、类型安全和泛型。开发者可能利用C#来编写后台逻辑,处理数据访问、业务规则和用户交互。 3. 数据库设计与管理:交通信息的存储和检索必然涉及到数据库技术。可能使用了SQL Server或MySQL等关系型数据库管理系统,通过ADO.NET或者Entity Framework等数据访问技术来实现数据库操作。 4. Web服务:为了获取实时的交通信息,系统可能还集成了一些Web服务,比如API接口,这些接口可以从外部交通信息提供商处获取数据,然后展示在用户界面上。 5. 用户界面设计:良好的用户体验对于查询系统至关重要。开发者可能使用HTML、CSS和JavaScript来构建用户友好的界面,并通过AJAX技术实现页面的部分刷新,提升交互性。 6. 安全性考虑:在设计和实现过程中,还需要考虑系统的安全性,包括防止SQL注入、XSS攻击等,这通常通过验证输入、使用参数化查询和编码输出等方式来实现。 7. 性能优化:为确保系统在高并发情况下仍能稳定运行,可能实施了缓存策略、数据库索引优化、负载均衡等性能优化措施。 8. 开发工具与版本控制:Visual Studio作为主要的开发环境,可能被用于代码编写、调试和部署。同时,Git或其他版本控制系统用于团队协作和代码管理。 9. 测试与调试:在项目开发过程中,单元测试、集成测试和系统测试都是必不可少的,以确保所有功能正常工作且没有错误。 10. 文档编写:开题报告、设计文档和论文的编写反映了整个开发过程,包括需求分析、系统架构设计、实现细节以及系统评估。 这个ASP.NET交通信息网上查询系统的设计与实现项目涉及了Web开发的多个核心技术和实践,对于计算机专业的学生来说,是一个很好的学习和实践平台。
2025-06-03 08:49:20 1.14MB java 计算机网络 毕业设计
1
在当今数字化时代,电影评论网站作为电影爱好者交流观点、分享感受的重要平台,正变得越来越受欢迎。本项目旨在设计并实现一个基于Spring Boot框架的电影评论网站系统,此系统不仅要求实现电影评论的基本功能,还需具有良好的用户体验和高效的数据管理能力。通过采用MySQL作为后端数据库管理系统,以及Vue.js构建的前端页面,本系统旨在为用户提供一个快速、响应式的电影评论交互平台。 系统设计过程中,首先需要对需求进行详尽的分析,明确目标用户群体、功能需求以及性能需求。在此基础上,开发团队将遵循软件工程的原则,进行系统设计,包括数据库设计、前端界面设计、后端逻辑设计等。数据库设计将围绕电影评论网站的具体需求进行,合理地设计表结构以存储用户信息、电影信息、评论信息等数据。前端界面设计将注重用户体验,采用Vue.js框架实现动态网页效果,增强交互性。后端逻辑设计则利用Spring Boot框架的优势,快速搭建后台服务,处理用户请求,实现数据的增删改查等操作。 毕业论文部分将会详细记录整个开发过程,包括系统分析、系统设计、功能实现以及测试验证等多个阶段,其中也包括了开题报告和答辩PPT的设计与准备。开题报告将展示项目的研究背景、目标、研究内容和预期成果等关键信息,为项目的顺利开展奠定基础。答辩PPT则将系统地展示整个项目的核心内容,包括系统架构、主要功能模块、实现的关键技术以及最终的运行效果等,以直观、简洁的方式展示给评审老师和同学。 本系统的实现对于学习Java Web开发技术,特别是Spring Boot框架和Vue.js框架的结合使用,具有一定的指导意义。同时,它也能为其他开发者提供电影评论网站系统的设计与实现的参考。对于电影爱好者而言,一个功能完善、操作便捷的评论网站,可以极大地丰富他们的观影体验。 此外,本系统还需要关注安全性设计,包括用户数据的安全、评论内容的审核机制、防止恶意攻击等,以确保系统的稳定运行和用户信息的安全。在实际部署时,还需要考虑服务器的配置、负载均衡、数据备份与恢复等运维相关的技术细节。 基于Spring Boot的电影评论网站系统设计与实现是一个涉及前端、后端、数据库设计等多方面技术的综合性项目,它不仅锻炼了开发者的实际开发能力,同时也对系统的整体架构设计提出了较高的要求。通过本项目的完成,开发者能够全面提升个人的综合技术能力,并为未来的软件开发工作打下坚实的基础。
2025-06-02 13:47:24 21.11MB java 电影评论网站系统
1
实训报告详细阐述了如何通过使用Active Directory证书服务(AD CS)来实现企业网站的安全访问。报告介绍了实训目的,即掌握AD证书服务实现企业网站安全访问的技能。接着,报告详细罗列了实训环境的配置,包括所需的硬件、操作系统以及网络环境的要求。在此基础上,报告逐步指导了实训内容的实施步骤,涉及了Windows Server 2022的安装、TCP/IP参数设置、活动目录域和DNS服务的创建、Web服务器的搭建、SSL证书的申请与绑定,以及Windows防火墙规则的配置。 实训内容详细说明了如何创建DNS区域与记录、配置Web服务器的网站与首页,并如何在这些网站上绑定相应的主机名和证书。报告还指导了如何将另一台计算机加入到域中,以及如何在此计算机上使用http和https协议访问网站。此外,实训报告中也强调了对Windows防火墙进行设置的重要性,包括如何配置入站规则以拒绝或允许特定端口的访问。 实训要求部分突出了实训的各个重点,如AD证书服务管理、DNS和Web服务器的设置、证书的申请与绑定以及防火墙配置等方面的知识点。通过这些实训内容和要求,学员能够全方位地掌握安全的企业网站访问的实现方式,并能够独立完成相关服务的部署与管理。 实训项目分析与操作记录部分则更进一步地深化了实训内容。报告指导学员如何进行前期规划,安装并配置证书颁发机构,创建并颁发证书模板,以及对客户端进行证书配置。详细介绍了优化配置的必要性,以及如何根据测试结果调整证书服务和网络设置来提高系统的性能和安全性。 实训项目体会部分分享了学员在实训过程中的心路历程。学员一开始可能对复杂的技术要求和工具感到无所适从,但通过不断的学习和实践,学员逐渐克服了难点,不仅学会了操作AD证书服务,还深入理解了网络安全的重要性。此部分传达出一个重要的信息:持续学习对于适应技术发展和工作需求变化的重要性,以及在技术实施过程中对细节的关注,因为小错误也可能导致整个系统的失败。 此外,报告还体现了实训的教育价值,即通过实际操作来加深理论知识的理解,提高解决实际问题的能力。报告通过完整的实训步骤和详细的操作记录,为后续的实训操作和网络安全教学提供了宝贵的参考。
2025-06-01 20:23:58 1.57MB DNS服务 防火墙 实训报告
1
实验三共射放大电路增益、失真特性计算、仿真、测试分析报告 本实验报告的主要目的是掌握共射电路静态工作点的计算、仿真、测试方法;掌握电路主要参数的计算、中频时输入、输出波形的相位关系、失真的类型及产生的原因。 一、静态工作点计算 静态工作点是电子电路中一个基础概念,指的是晶体管在不受外部信号影响时的工作状态。为了计算静态工作点,需要获取晶体管的β值,可以通过万用表的β测试功能来获取。在本实验中,我们使用 2N5551 晶体管,通过测量获取的β值为 174。然后,我们可以根据 Multisim 模型中的参数修改方法,修改模型中的参数,以计算静态工作点。 计算结果显示,静态工作点的 IBQ、IEQ、VCEQ 分别为 12.11 μA、2.121 mA、2.109 mA。同时,我们还进行了仿真和测试,结果分别为 12.139 μA、2.124 mA、2.112 mA 和 11.657 μA、2.042 mA、2.051 mA。 通过对比分析,我们可以看到,计算值与仿真值的结果差距较小,而与实际测量值的结果差距较大。这是由于计算时我们使用了精确计算的方法,与 Multisim 仿真理想化测量结果受其他因素影响较小,而与实际用万用表测量所得结果差距较大。 二、波形及增益 在本实验中,我们还计算了电路的交流电压增益。我们输入 1kHz 50mV(峰值)正弦信号,计算正负半周的峰值。结果显示,计算值、仿真值和测试值分别为 14.37、13.86 和 13.66。 通过波形分析,我们可以看到,仿真与测试的波形有无明显饱和、截止失真。存在非线性失真使得波形正负半周峰值有差异,且正半周非线性失真比负半周大。同时,我们还可以看到,输出与输入的相位关系是反相的。 我们还分析了计算、仿真、测试的电压增益误差及原因。结果显示,计算与仿真两者的误差较小,而在实际测量时产生误差较大。其误差产生的可能原因包括电源电压的波动、环境温度的影响、仿真模型的精度和测量误差等。 本实验报告的主要内容是掌握共射电路静态工作点的计算、仿真、测试方法,并掌握电路主要参数的计算、中频时输入、输出波形的相位关系、失真的类型及产生的原因。
2025-06-01 16:13:12 1.11MB 北京邮电大学 实验报告 电子电路
1
北航并行课程作业: 在GPU 实现一个矩阵并行乘法程序,要求矩阵大小不小于8000*8000,且元素为双精度浮点数(double)类型;比较并行程序与串行程序的加速比,同时注意排除数据准备时间作程序运行时间。 在现代计算机科学领域,GPU计算已经成为提高程序性能的重要手段。特别是在科学计算和大数据处理领域,利用GPU强大的并行处理能力,可以显著提升程序的运行效率。本篇文章将探讨如何在GPU上实现矩阵乘法的并行计算,并对比并行程序与传统的串行程序在性能上的差异。 矩阵乘法是计算机科学中的一项基础操作,广泛应用于各个领域,如图形处理、物理模拟、机器学习等。然而,当矩阵的维度和元素数量达到一定规模时,串行算法的计算效率将变得低下。因此,采用并行计算技术来优化矩阵乘法变得尤为重要。 CUDA(Compute Unified Device Architecture)是由NVIDIA公司推出的一种通用并行计算架构,它使得开发者能够利用NVIDIA的GPU来解决复杂的计算问题。CUDA提供了丰富的编程接口,允许开发者编写能够在GPU上运行的并行程序。这不仅可以大幅提高计算性能,还可以使CPU从繁重的计算任务中解放出来,专注于处理其他任务。 在本作业中,北航并行课程要求学生使用CUDA实现一个矩阵乘法程序,并要求矩阵的大小不小于8000*8000,且元素类型为双精度浮点数。这是因为双精度浮点数能够提供更高的计算精度,适合科学计算的需求。同时,较大的矩阵大小可以充分发挥GPU的并行处理能力。 在实现并行矩阵乘法时,需要特别注意数据在CPU和GPU之间的传输效率。由于GPU拥有独立的内存空间,因此需要将矩阵数据从主机(CPU)内存复制到设备(GPU)内存中。计算完成后,再将结果从设备内存复制回主机内存。这一过程中涉及的数据传输可能会成为性能瓶颈,因此需要合理安排数据传输和计算的时间,以确保整体性能。 为了评估并行矩阵乘法程序的性能,本作业还要求学生比较并行程序与串行程序的加速比。加速比是衡量并行程序性能提升的一个重要指标,它反映了并行程序相对于串行程序的运行时间缩短了多少倍。由于GPU的并行计算能力,理论上加速比应当远大于1。在进行性能评估时,还需要特别排除数据准备时间,只考虑程序的实际运行时间,这样才能更准确地反映并行计算的性能优势。 在并行程序的开发中,需要注意GPU内存的使用效率,避免内存访问冲突和内存带宽的浪费。合理设计线程块的大小和数量,以及确保每个线程正确地执行其任务,都是实现高效并行矩阵乘法的关键因素。此外,优化算法的设计,比如采用分块算法来减少全局内存访问,也能有效提高程序的性能。 本作业的提交物包括一份详细的报告(HW-MP4-CUDA.pdf)、另一份报告(HW-MP4-SYCL.pdf)、源代码文件以及编译后的可执行程序。报告中将详细说明并行矩阵乘法程序的设计思路、实现方法、性能测试结果以及性能分析等。源代码文件将展示具体的编程实现,而可执行程序则可以直接运行以验证程序的正确性和性能。 本作业不仅要求学生掌握CUDA编程技术,还要求他们能够从理论到实践深入理解并行计算的原理和优化策略。通过这样的课程作业,学生将能够为未来的高性能计算应用打下坚实的基础。
2025-05-30 11:26:28 574KB cuda
1
110kV三段式相间距离保护电力系统继电保护 报告仿真 报告内容有距离保护参数整定计算,仿真分析,另外分析了过渡电阻和系统振荡对距离保护的影响,并搭建了模型进行仿真分析 题目见下图 ,核心关键词: 110kV; 三段式相间距离保护; 电力系统继电保护; 距离保护参数整定计算; 仿真分析; 过渡电阻; 系统振荡; 模型仿真。,110kV电力系统继电保护仿真报告:三段式相间距离保护参数整定及影响分析 在电力系统中,继电保护是保障电网稳定运行的关键技术之一,尤其在高压电网中,继电保护装置的性能直接影响着电网的安全性和可靠性。110kV三段式相间距离保护是电力系统继电保护中的一种常见方式,它能够在发生故障时迅速而准确地切断故障区域,以防止故障扩散影响整个电网。本文报告围绕110kV三段式相间距离保护展开,重点介绍了距离保护参数的整定计算,仿真分析,以及过渡电阻和系统振荡对距离保护的影响。 距离保护参数的整定计算是确保保护装置正确响应电网故障的基础。整定计算涉及到多个参数的设定,包括动作时间和动作电流的设定等,这些参数的准确设定能够保障保护装置在电力系统发生故障时能够及时动作。在实际应用中,需要根据电网的具体结构、负荷情况以及保护范围等因素综合考虑,选择最佳的整定值。 接着,仿真分析是验证距离保护参数整定正确性的必要手段。通过建立数学模型,模拟电力系统在不同工况下的运行状态,可以观察到保护装置在各种情况下是否能够正确动作。仿真分析还可以模拟各种复杂故障,如单相接地、两相短路等,分析保护装置在这些情况下的动作行为,从而验证保护方案的可靠性和适应性。 此外,过渡电阻和系统振荡是实际电力系统运行中可能遇到的两种特殊情况。过渡电阻通常出现在电弧接地等故障中,它的存在会改变故障点的电气特性,进而影响保护装置的动作。系统振荡则是在系统发生故障后,由于电磁力的剧烈变化,可能会引起电网的功率振荡,这也会对保护装置的性能产生影响。因此,在设计和整定保护参数时,必须考虑这些因素,确保保护装置在各种情况下都能正确动作。 报告中提到搭建了模型进行仿真分析,这表明研究者不仅依赖理论计算,还通过实际建模来测试和验证理论结果的正确性。这种方式能够更直观地展示保护装置的性能,为保护装置的实际应用提供了有力的技术支持。 110kV三段式相间距离保护电力系统继电保护的仿真报告,详细阐述了保护参数的整定计算、仿真分析,以及过渡电阻和系统振荡对保护效果的影响。通过搭建模型进行仿真,不仅增强了理论分析的可靠性,也为电力系统的安全稳定运行提供了重要的技术保障。报告中提到的核心关键词,如110kV、三段式相间距离保护、电力系统继电保护、距离保护参数整定计算、仿真分析、过渡电阻、系统振荡等,都是理解和掌握该报告内容的关键点。
2025-05-30 09:47:23 600KB istio
1
今日头条短视频数据爬取与预处理及数据分析(项目报告,源代码,演示视频)。使用用图形用户界面(GUI)。用户可以通过界面输入URL和爬取页面数量,并查看Top 10最受欢迎的视频详细信息。
2025-05-29 21:51:18 18.24MB 数据分析
1
ChatGPT市场反应热烈,国内外巨头纷纷入场 据统计,ChatGPT日活跃用户数的增速远超Instagram,1月份平均每天有超过1300万名独立访问者使用ChatGPT,是去年12月份的 01 两倍多;国内外科技巨头都非常重视ChatGPT引发的科技浪潮,积极布局生成式AI,国内厂商(百度、腾讯等)也高度关注ChatGPT, 积极探索前沿技术,相关深度应用也即将推出。 ChatGPT经历多类技术路线演化,逐步成熟与完善 02 ChatGPT所能实现的人类意图,来自于机器学习、神经网络以及Transformer模型的多种技术模型积累。Transformer建模方法成熟以后,使用一套统一的工具来开发各种模态的基础模型这种理念得以成熟,随后GPT-1、GPT-2、GPT-3模型持续演化升级,最终孵 化出ChatGPT文本对话应用。 03 AIGC跨模态产业生态逐步成熟,商用落地未来可期 AIGC产业生态当前在文本、音频、视频等多模态交互功能上持续演化升级,奠定了多场景的商用基础。跨模态生成技术也有望成为真 正实现认知和决策智能的转折点。 ChatGPT乘东风,商业架构日益清晰 04 ChatGPT,全名是Chat-based Generative Pre-trained Transformer,是由OpenAI公司研发的一款基于人工智能技术的文本对话应用。OpenAI成立于2015年,由包括埃隆·马斯克在内的多位硅谷知名人士共同创建,旨在推动人工智能的开放研究,并促进其安全发展。起初作为非营利组织,OpenAI在2019年后逐渐转向商业化,尤其在微软的投资支持下,其技术商业化进程显著加速。 ChatGPT的成功在于其背后的技术积累,尤其是Transformer模型的演进。Transformer模型由Vaswani等人在2017年提出,革新了序列建模的方法,极大地提升了机器翻译和其他自然语言处理任务的性能。随着GPT-1、GPT-2和GPT-3模型的相继推出,这一系列模型在预训练和微调的过程中不断优化,使得ChatGPT能够理解和生成更为复杂和自然的人类语言,从而实现更准确地理解和响应用户的意图。 AIGC,即人工智能生成内容,是ChatGPT所属的生成式AI领域的重要组成部分。随着技术的发展,AIGC不仅局限于文本领域,还拓展到了音频、视频等多模态交互,这为未来的广泛应用奠定了基础。跨模态生成技术的进步有望开启认知和决策智能的新篇章,让AI在更多场景下具备智能理解和生成的能力。 ChatGPT的商业价值日益显现,它不仅在传媒、影视、营销、娱乐等领域展现出巨大潜力,还能通过提升生产力曲线和赋能虚拟经济与实体经济,助力产业升级。例如,ChatGPT可以用于内容创作、客户服务、教育辅导等多个方面,实现个性化和高效的服务。随着ChatGPT Plus的发布,商业化布局已经开始,标志着生成式AI进入了一个全新的阶段。 ChatGPT作为生成式AI的代表,以其独特的技术优势和广泛的应用前景,正在引领一场科技变革。国内外科技巨头纷纷跟进,投入资源研发相关技术,预示着AI领域将迎来更加平民化和多样化的应用时代。随着技术的不断进步和完善,我们有理由期待ChatGPT及其类似技术将在未来产生更深远的影响,推动人工智能技术向更智能、更人性化的方向发展。
2025-05-29 11:45:10 4.25MB 人工智能 深度学习 机器学习
1
在本篇人工智能实验报告中,我们深入探讨了五个核心主题:决策树、循环神经网络、遗传算法、A*算法以及归结原理。这些是人工智能领域中的关键算法和技术,它们在解决复杂问题时扮演着重要角色。 让我们来了解**决策树**。决策树是一种监督学习方法,广泛应用于分类和回归任务。它通过构建一系列规则,根据特征值来做出预测。在报告中,可能详细介绍了ID3、C4.5和CART等决策树算法的构建过程,以及剪枝策略以防止过拟合。此外,实验可能涵盖了如何处理连续和离散数据、评估模型性能的方法,如准确率、混淆矩阵和Gini指数。 **循环神经网络(RNN)**是深度学习中的一类重要模型,特别适合处理序列数据,如自然语言处理。RNN的特点在于其内部状态可以捕获时间序列的信息,这使得它们在处理时间依赖性问题时表现优秀。长短期记忆网络(LSTM)和门控循环单元(GRU)是RNN的变体,有效解决了梯度消失和爆炸的问题。实验可能包括RNN的搭建、训练和应用,如文本生成或情感分析。 接下来,我们讨论**遗传算法**。这是一种基于生物进化理论的全局优化方法。在报告中,可能详细阐述了遗传算法的基本步骤,包括编码、初始化种群、选择、交叉和变异操作。实验可能涉及实际问题的求解,如旅行商问题或函数优化。 **A*算法**是一种启发式搜索方法,用于在图形中找到从起点到目标的最短路径。它结合了Dijkstra算法和启发式函数,以提高效率。A*算法的核心在于如何设计合适的启发式函数,使之既具有指向目标的导向性,又不会引入过多的开销。实验可能涉及实现A*算法,并将其应用在地图导航或游戏路径规划中。 **归结原理**是人工智能和逻辑推理中的基础概念。归结是证明两个逻辑公式等价的过程,常用于证明定理和解决问题。报告可能涵盖了归结的规则,如消除冗余子句、子句分解、单位子句消除等,并可能通过具体实例演示如何使用归结证明系统进行推理。 通过这些实验,参与者不仅能够理解各种算法的工作原理,还能掌握如何将它们应用到实际问题中,提升在人工智能领域的实践能力。报告中的流程图和实验指导书将有助于读者直观地理解和重现实验过程,进一步深化对这些核心技术的理解。
2025-05-28 19:27:34 3.2MB 人工智能
1
### 算法设计与分析实验报告知识点总结 #### 实验一:Coin-row problem 1. **问题定义**:给定一排硬币,每个硬币有一定的价值,求出一种方法在不拾取相邻硬币的前提下,可以拾取的最大价值。 2. **算法思想**:通过动态规划解决问题,从左到右计算每一个位置能获得的最大价值。对于每个硬币,有两种选择:拾取当前硬币和不拾取当前硬币,然后取两种选择中的最大值。 3. **时间复杂度**:O(n),因为只需要遍历一次硬币数组即可完成计算。 4. **空间复杂度**:O(1),由于只需要存储上一个位置和当前位置的两个值,可以使用固定空间完成计算。 5. **具体实现**:首先定义数组来存储每一步的最大值,然后从左到右遍历数组,每个位置上更新最大值,最后输出最后一个硬币的最大值作为答案。 #### 实验二:Coin-collecting by robot 1. **问题定义**:在一块棋盘上,机器人从左上角出发,到达右下角,中间有硬币分布,要求在不回头的前提下,拾取尽可能多的硬币。 2. **算法思想**:使用动态规划算法。机器人在每个格子时,有两种选择:向右或向下移动一格。在每次移动时,比较右边和下面的硬币数量,选择一个硬币数量多的方向移动,从而保证在到达右下角时,已经收集了最多的硬币。 3. **时间复杂度**:O(n*m),其中n是棋盘的行数,m是棋盘的列数,因为需要遍历整个棋盘。 4. **空间复杂度**:O(n*m),由于需要一个二维数组来记录每个位置的最大硬币数,空间复杂度与棋盘的大小成正比。 5. **具体实现**:定义一个二维数组来存储到每个位置时可能收集到的最大硬币数,然后遍历整个棋盘,记录从起点到每个格子的最大硬币数,最后输出右下角的最大硬币数。 #### 实验方案 1. **头文件和命名空间**:使用了头文件,这个头文件包含了几乎所有的C++标准库头文件,方便代码编写,但在生产环境中使用需要谨慎。 2. **变量声明和初始化**:声明了数组a来存储硬币的价值或硬币的分布,并初始化为0。 3. **输入处理**:使用cin来读取硬币的数量和每枚硬币的价值或硬币的分布矩阵。 4. **算法实现**:使用动态规划的方法进行数组的更新,得出最大价值或硬币数量。 5. **测试数据规模及生成方式**:设定不同的数据规模进行测试,手动输入测试数据,以验证算法的正确性和效率。 6. **运行时间和空间的采集方法**:使用clock_t数据类型和clock()函数来计算算法运行的时间,并通过sizeof运算符来获取程序运行时占用的内存空间。 #### 实验环境 实验环境配置为Windows 10系统,使用DEV开发环境进行代码的编写和测试。 ###
1