博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
C# 科学计数法转换成数字
阅读量:7062 次
发布时间:2019-06-28

本文共 2417 字,大约阅读时间需要 8 分钟。

     ///         /// 判断输入的数是否是科学计数法。如果是的话,就会将其换算成整数并且返回,否则就返回false。        ///         ///         ///         /// 
private bool ChkNum(string num, ref decimal CompleteNum) { bool result = false; bool resultSymbol = num.Contains("*"); bool result0 = num.Contains("^"); if ((resultSymbol == true) && (result0 == true)) { //当数字中有*和^的时候,进行下面的判断 int IntSymbol = num.IndexOf("*"); int Symbol0 = num.IndexOf("^"); if (((Symbol0 - IntSymbol) == 3)) {
//当*在^前面的时候 string numA = num.Substring(0, IntSymbol);//截取*号前面的数字(基数); string numB = num.Substring(IntSymbol+1, Symbol0 - IntSymbol-1);//截取10; string numC = num.Substring(Symbol0+1, num.Length - Symbol0-1);//获得幂次数 Regex regNum0 = new Regex(@"^(\-|\+)?\d+(\.\d+)?$"); Regex regNum2 = new Regex(@"^-[1-9]\d*$|^[1-9]\d*$"); if ((regNum0.IsMatch(numA)) && (numB == "10") && (regNum2.IsMatch(numC))) { decimal dcNumA; decimal.TryParse(numA,out dcNumA); decimal dcNumC; decimal.TryParse(numC, out dcNumC);//将幂次数转换成decimal类型 decimal zhengshu = 10; if (dcNumC > 0) {
//当幂次数为整数的时候 for (int i = 0; i < dcNumC - 1; i++) { zhengshu *= 10; } } else {
//当幂次数为负数的时候 for (int i = 0; i < Math.Abs(dcNumC) + 1; i++) { zhengshu /= 10; } } CompleteNum = dcNumA * zhengshu; result = true; } else { result = false; } } else { result = false; } } else { result = false; } return result; }

 

转载于:https://www.cnblogs.com/vichin/p/6113999.html

你可能感兴趣的文章
在django中,执行原始sql语句
查看>>
Docker的基本操作与示例
查看>>
配置eclipse使能打开当前文件所在目录
查看>>
Repeater内RadioButton.GroupName失效
查看>>
【算法学习笔记】17.暴力求解法05 隐式图搜索1 迭代加深搜索 埃及分数
查看>>
如何高效利用GitHub
查看>>
2-sat基础题 BZOJ 1823
查看>>
centos6.5 mqtt安装
查看>>
Mongodb 笔记05 创建副本集
查看>>
转:Eclipse 各种小图标的含义
查看>>
javascript面向对象——构造函数和原型对象
查看>>
route 的标志位
查看>>
[转载]对于WebGrid第三方控件的使用
查看>>
[摘录]高效人士七习惯—以终为始原则
查看>>
angular 当使用ng-repeat 时出现 $$hashKey的键值对
查看>>
GoldenGate 性能优化方法
查看>>
正则表达式和re模块
查看>>
[区块链]Merkle Tree
查看>>
Token 认证
查看>>
搜索服务solr 一二事(1) - solr-5.5 使用自带Jetty或者tomcat 搭建单机版搜索服务器...
查看>>