计算器的加减乘除处理ok,按键的位图,声音制作,加载均已经ok,该括号进入表达式了,括号优先级最高,先处理,括号有两种,一种并行,比如:(1+2)+(3+4)+(5+6),另一种嵌套,比如:(3*(4+5*(6+7/(8+9))))),看到嵌套,一种熟悉的感觉油然而生,在以前,可是避之不及,首先想到的是堆栈,其次想到的是递归,傅里叶变换中已经用到(奇偶拆分序号排序),再就是findblob(找斑)的染色算法中也用到,参考后(前面章节有讲到),反复修改测试后,'('')'括号优先级处理递归算法如下:

1,假定有字符串, string str = "(3+4*(8+2))*5/(6-2*(8-4))+8*(3+2)";

2,然后调用, 括号优先级处理递归算法(ref str);

public void  括号优先级处理递归算法(ref  string tempstr)
        {

if (tempstr[n] == '(')             
                {
                    //截取字符串,调用自己
                    string subpstr = tempstr.Substring(n+1 , tempstr.Length - n-1);
                    string subpstr1 = tempstr.Substring(0,  n )+"?";

括号优先级处理递归算法(ref subpstr);
                    for (int i = 0; i < subpstr.Length; i++)
                    {
                        if (subpstr[i] == ')')
                        {
                            
                            char[] tempchar = subpstr.ToCharArray();                         
                                                 
                            tempchar[i] = '?';
                            string char2str = "";
                            for (int i1 = 0; i1 < tempchar.Length; i1++)
                            {
                                char2str += tempchar[i1];
                            }                       
                            tempstr = subpstr1  + char2str;
                          i = subpstr.Length;
                        }
                       
                    }
                
                }

}

}

3,需要说明的是,这个递归算法从最内层的括号起,使用两个?代替(),一直到最外层括号,有了这样一个递归顺序,下一步,字符串变操作数和操作符,然后加入运算加减乘除,先消化,这一步下一节讲。

注,并行的括号处理,这个递归程序一并处理了。先是三个(((,然后处理最后一个),倒数第二个),倒数第三个),处理结束。

待续(慢慢来!...........)每天一点小改变☺

我的邮箱liuganggang_1978@163.com;734523623@qq.com

写给父亲的语音计算器(‘(‘‘)‘括号优先级处理递归算法c#,一)相关推荐

  1. 写给父亲的语音计算器(位图的加载,忽然领悟了资源编译器的加载c#,五)

    用小画家制作了,加,减,乘,除,0,1,2,3,4,5,6,7,8,9,=,(,)等,手绘的,48*48位图,保存为.bmp形式. 加载是这样的,好像抄写连连看程序时,抄过,直接上代码: string ...

  2. 写给父亲的语音计算器(加减乘除的处理C#,三)

    曾给孩子写了一个计算器把我累坏了,四个操作数,三个操作符,只有加减乘除四则运算,我的个神,三个操作符一共4*4*4=64种组合,这样写计算器,没完没了,今天写给父亲的语音计算器终于突破了.上代码: p ...

  3. 写给父亲的语音计算器(语音的加载播放C#,四)

    前面我们展示过语音识别时,语音片段的制作,保存,加载,那么加载后只有波形,如何播放出来?看代码: 首先,加载保存的.mch波形文件: string curFileName = "d:\\加. ...

  4. C# 控制台语音计算器

    记得上高中时,给人当会计,帮忙结算月度工资:用的就是带语音功能的计算器! 当时用起来倍儿爽,于是速度加倍,效率加速:结果让老板赔了不少钱! 就是因为这个,才对语音计算器有了深刻印象!可能是这货坑了我! ...

  5. 【PowerShell语音计算器】

    [PowerShell语音计算器] 带中文发音功能的计算器程序,支持鼠标和小键盘输入,支持多种数值转人民币 大写,如:123.4--->壹佰贰拾叁点肆圆. 版本号 1.51 下载: http:/ ...

  6. 语音计算机软件,语音计算器

    应用介绍 语音计算器是一款快速语音播报计算器,可以实时播报计算过程和结果.扩展功能强大,集计算器.科学计算器.分数计算器.汇率换算.亲戚计算器.房贷计算器.五险一金.日期计算器.进制转换.理财计算.自 ...

  7. 有声语音计算机软件,有声语音计算器

    有声语音计算器可以用来计算三角函数.四则运算等等的计算公式,集成了超多公式并且还有语音播放功能,在输入公式及相关数值后就可以马上得到最终的结果,应用广泛. 软件介绍 有声语音计算器是一款页面简洁美观. ...

  8. android语音记账,爱彼语记语音计算器记账记事本

    爱彼语记语音计算器记账记事本是一款非常实用的手机记账工具.智能语音输入技术,集多种功能于一体,还有超多贴心小功能.感兴趣的朋友不要错过了,快来下载体验吧. 应用详情: 能听懂您说出的运算表达式并秒出结 ...

  9. Android-使用SoundPool实现语音计算器

    Android计算器的代码直接使用Android系统里面的Calculator.先找到Android 工程源码中的 Calculator(./package/app/Calculator).导入到Ec ...

  10. C语言写的一个简单的计算器

    大学的第一学期就这样结束了.前阵子临近放假,不知道该干嘛,就分别用java和C语言写了两个东西.java写了个文件查找的程序.C语言写了个简易的计算器.至于为什么写计算器~因为刚学C语言的时候,还没摸 ...

最新文章

  1. 如何打破30岁职业瓶颈?
  2. 手把手教你刷新BACKUP Bios
  3. 《探索需求》阅读笔记1
  4. coreldraw水涟漪怎么做_曹晓岚:水公园的主题文化营销怎么做?
  5. 互联网日报 | 3月13日 星期六 | 蚂蚁集团公布碳中和目标;小鹏汽车累计交付突破50000台;阿迪达斯发未来五年新战略...
  6. UI设计进阶干货|切图命名
  7. 长短期记忆网络_科研成果快报第181期:改进的长短期记忆网络用于长江上游干支流径流预测...
  8. 理想的正方形 HAOI2007(二维RMQ)
  9. mac存储空间管理与df命令看到的剩余空间不一样的问题
  10. Logisim实现计算机硬件系统设计(一)
  11. python3之url编码互转
  12. 路普达-区块链技术的本质与未来应用趋势
  13. windbg符号下载
  14. wifi android透传源代码,【终极版】ESP8266远程控制wifi透传模块带调试app
  15. Wordpress商品详情页新增Buy on amazon/ebay跳转按钮
  16. 网页二维码生成器纯js代码带logo图纯前端合成
  17. Android学习网址大全
  18. wordpress博客搭建-保姆教程
  19. ITFriend创业败局(一):选择创业方向和寻找合伙人,创业失败的2个关键点
  20. eyoucms自媒体新闻资讯类网站模板

热门文章

  1. 我的项目day04:首页,轮播图前后端,登录注册功能设计,cgi,uwsgi,多方式登录接口,手机号是否存在接口,腾讯云短信,模态框,腾讯短信功能二次封装,短信验证接口,短信注册接口,断行注册接口
  2. 敏捷DoD和DoR的多种形态
  3. 常用的《短信中心号码》收集
  4. 接入物流快递单号自动识别查询接口API
  5. iOS小技能:iOS15适配导航条主题: 背景颜色、标题颜色
  6. 国产操作系统银河麒麟V10桌面版新手小白常见问题
  7. SCCM推送升级Win10
  8. php+mysql实现简易博客系统
  9. Javascript特效之向左滚动的广告
  10. latex 定义作者,通讯作者,联系地址宏包,package,authblk