|
发表于 2015-5-12 21:03:25
From FishC Mobile
|
显示全部楼层
|阅读模式
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 错过会难过 于 2015-5-12 23:04 编辑
算法差不多完善了,不过不能处理带有负数的算式,希望大家给点意见
由于函数都是自己写的,用到库函数的不多,所以代码有点长,里面的注释也挺长的,所以还是把链接贴上来
代码链接
http://pan.baidu.com/share/link?shareid=904190524&uk=338985857
main函数
#include <iostream>
#include <cstdio>
#include "equal.h"
using namespace std;
int main()
{
char s1[200]="12+5.5*1.5+5*1- (3.5+2*5+3)-((2.1+5.6)*2)";
// 012345678901234567890123450123456789012345
//
char s2[200]=" ( 1.6 --14)";
cout<<" = "<<makeEqu(s1)<<endl;
//cout<<"findFirBra "<<s1[findFirBra(s1)]<<" "<<findFirBra(s1)<<endl;
//cout<<makeSimEqu(s2)<<endl;
//cout<<braLen("())");
//cout<<checkEqu(s1)<<endl;
//cout<<"isNumEqu = "<<isNumEqu("2-")<<endl;
//makeMixEqu(s2);
//dou2str(s2,5.01+2.002);
//cout<<s2<<endl;
}
|
-
算法分析
|