第11周报告1

本博客展示了如何利用循环控制语句解决数学表达式的计算问题,通过编写三种不同类型的循环程序(while循环、for循环和do-while循环),求解特定数学表达式并输出结果。作者详细介绍了算法设计过程,强调了效率的重要性,提供了实现步骤和最终运行结果,旨在提高编程技能和解决问题的能力。
实验目的:学会使用循环控制语句解决实际问题,并强化注重效率的观念
实验内容:用循环控制语句编写程序,完成表达式的计算

* 程序头部注释开始(为避免提交博文中遇到的问题,将用于表明注释的斜杠删除了)
* 程序的版权和版本声明部分
* Copyright (c) 2011, 烟台大学计算机学院学生
* All rights reserved.
* 文件名称:<wbr><wbr><wbr>使用循环控制语句解决实际问题<wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><br> * 作<wbr><wbr><wbr> 者:雷恒鑫<wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><wbr><br> * 完成日期:<wbr><wbr><wbr><wbr><wbr><wbr>2011<wbr><wbr> 年<wbr><wbr><wbr>11<wbr><wbr><wbr> 月<wbr><wbr><wbr><wbr>01<wbr><wbr><wbr> 日<br> * 版 本号:<wbr><wbr><wbr>68<wbr><wbr><wbr><wbr><wbr><wbr><br><br> * 对任务及求解方法的描述部分<br> * 输入描述:无<br> * 问题描述:求 f=1-1/2!+1/3!-...+1/9!<br> * 程序输出:三种循环语句构造的程序求得的结果<br> * 问题分析:……<br> * 算法设计:为了提高效率,用单重循环完成,不用求幂函数pow()。……<br> * 程序头部的注释结束(此处也删除了斜杠)<br><wbr> //用while循环求解<br><br> #include &lt;iostream&gt;<wbr><wbr><br> using namespace std;<br> int main( )<br> {<br><wbr>int i=0,m,sign=1;<br><wbr>double sum=1,f;<br><wbr>i=i+1;<br><wbr>while (i&lt;=9)<br><wbr>{<br><wbr><wbr>i=i+1,f=1,m=1;<br><wbr><wbr>while (m&lt;=i)<br><wbr><wbr>{<br><wbr><wbr><wbr>f=f*m;<br><wbr><wbr><wbr>m=m+1;<br><wbr><wbr>}<br><wbr><wbr><wbr>sign=-sign;<br><wbr><wbr><wbr>sum=sum+sign/f;<br><wbr>}<br><wbr>cout&lt;&lt;"sum="&lt;&lt;sum&lt;&lt;endl;<br><wbr>return 0;<br> }<br> //用for循环求解<br><br> #include &lt;iostream&gt;<wbr><wbr><br> using namespace std;<br> int main( )<br> {<br><wbr><wbr><wbr> int i=0,m,sign=1;<br><wbr>double sum=1,f;<br><wbr>for (i=i+1;i&lt;=9;sign=-sign,sum=sum+sign/f)<br><wbr>{<br><wbr><wbr>i=i+1,f=1,m=1;<br><wbr><wbr><wbr><wbr><wbr><wbr><wbr> while (m&lt;=i)<br><wbr><wbr>{<br><wbr><wbr><wbr>f=f*m;<br><wbr><wbr><wbr>m=m+1;<br><wbr><wbr>}<br><wbr>}<br> cout&lt;&lt;"sum="&lt;&lt;sum&lt;&lt;endl;<br> return 0;<br> }<br><wbr>//用do~while循环求解<br><br> #include &lt;iostream&gt;<wbr><wbr><br> using namespace std;<br> int main( )<br> {<br><wbr>int i=0,m,sign=1;<br><wbr>double sum=1,f;<br><wbr><wbr><wbr> i=i+1;<br><wbr>do<br><wbr>{<br><wbr><wbr><wbr><wbr><wbr><wbr><wbr> i=i+1,f=1,m=1;<br><wbr><wbr>while (m&lt;=i)<br><wbr><wbr>{<br><wbr><wbr><wbr>f=f*m;<br><wbr><wbr><wbr>m=m+1;<br><wbr><wbr>}<br><wbr><wbr><wbr>sign=-sign;<br><wbr><wbr><wbr>sum=sum+sign/f;<br><wbr>}<br><wbr>while (i&lt;=12);<br> cout&lt;&lt;"sum="&lt;&lt;sum&lt;&lt;endl;<br> return 0;<br> }<br><br><br> 运行结果:<a href="http://photo.blog.sina.com.cn/showpic.html#blogid=8db23fd10100v52b&amp;url=http://s5.sinaimg.cn/orignal/8db23fd14b0bcf99aebd4" target="_blank"></a><br><br><a href="http://photo.blog.sina.com.cn/showpic.html#blogid=8db23fd10100v52b&amp;url=http://s13.sinaimg.cn/orignal/8db23fd14b0bcfa33981c" target="_blank"><img title="第11周报告1" height="180" alt="第11周报告1" src="http://s13.sinaimg.cn/middle/8db23fd14b0bcfa33981c&amp;690" width="240" name="image_operate_6701320225667609"></a><br><br><br><br> 经验积累:<br> 1.我学会了用Do--While和for循环。<br> 2.<br> 3.<br><br> 上机感言:<br><br><br></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>
内容概要:本文提出了一种基于融合鱼鹰算法和柯西变异的改进麻雀优化算法(OCSSA),用于优化变分模态分解(VMD)的参数,进而结合卷积神经网络(CNN)与双向长短期记忆网络(BiLSTM)构建OCSSA-VMD-CNN-BILSTM模型,实现对轴承故障的高【轴承故障诊断】基于融合鱼鹰和柯西变异的麻雀优化算法OCSSA-VMD-CNN-BILSTM轴承诊断研究【西储大学数据】(Matlab代码实现)精度诊断。研究采用西储大学公开的轴承故障数据集进行实验验证,通过优化VMD的模态数和惩罚因子,有效提升了信号分解的准确性与稳定性,随后利用CNN提取故障特征,BiLSTM捕捉时间序列的深层依赖关系,最终实现故障类型的智能识别。该方法在提升故障诊断精度与鲁棒性方面表现出优越性能。; 适合人群:具备一定信号处理、机器学习基础,从事机械故障诊断、智能运维、工业大数据分析等相关领域的研究生、科研人员及工程技术人员。; 使用场景及目标:①解决传统VMD参数依赖人工经验选取的问题,实现参数自适应优化;②提升复杂工况下滚动轴承早期故障的识别准确率;③为智能制造与预测性维护提供可靠的技术支持。; 阅读建议:建议读者结合Matlab代码实现过程,深入理解OCSSA优化机制、VMD信号分解流程以及CNN-BiLSTM网络架构的设计逻辑,重点关注参数优化与故障分类的联动关系,并可通过更换数据集进一步验证模型泛化能力。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值