C# 科学计数法转换成数字
2024-10-13 23:39:28
/// <summary>
/// 判断输入的数是否是科学计数法。如果是的话,就会将其换算成整数并且返回,否则就返回false。
/// </summary>
/// <param name="num"></param>
/// <param name="CompleteNum"></param>
/// <returns></returns>
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) == ))
{//当*在^前面的时候
string numA = num.Substring(, IntSymbol);//截取*号前面的数字(基数);
string numB = num.Substring(IntSymbol+, Symbol0 - IntSymbol-);//截取10;
string numC = num.Substring(Symbol0+, num.Length - Symbol0-);//获得幂次数
Regex regNum0 = new Regex(@"^(\-|\+)?\d+(\.\d+)?$");
Regex regNum2 = new Regex(@"^-[1-9]\d*$|^[1-9]\d*$");
if ((regNum0.IsMatch(numA)) && (numB == "") && (regNum2.IsMatch(numC)))
{
decimal dcNumA;
decimal.TryParse(numA,out dcNumA);
decimal dcNumC;
decimal.TryParse(numC, out dcNumC);//将幂次数转换成decimal类型
decimal zhengshu = ;
if (dcNumC > )
{//当幂次数为整数的时候
for (int i = ; i < dcNumC - ; i++)
{
zhengshu *= ;
}
}
else
{//当幂次数为负数的时候
for (int i = ; i < Math.Abs(dcNumC) + ; i++)
{
zhengshu /= ;
}
}
CompleteNum = dcNumA * zhengshu;
result = true;
}
else
{
result = false;
}
}
else
{
result = false;
}
}
else
{
result = false;
}
return result;
}
最新文章
- Understand Lambda Expressions in 3 minutes(翻译)
- 分布式追踪系统dapper
- 如何把一个android工程作为另外一个android工程的lib库
- php 通过变量 来调用函数
- Python time datetime常用时间处理方法
- DNA Sorting 分类: POJ 2015-06-23 20:24 9人阅读 评论(0) 收藏
- css之margin &;&; padding讲解
- Keil uCos 2.52 stm32 【worldsing笔记】
- Mysql 批量建表存储过程
- jQuery validate api(转)
- Nginx详解二十:Nginx深度学习篇之HTTPS的原理和作用、配置及优化
- 一步一步学习Swift之(三):巧用AutoLayout布局
- delete_failed_internal_error安装失败
- bzoj1092
- weblogic之CVE-2018-3246 XXE分析
- python全栈开发从入门到放弃之迭代器生成器
- [NOIP2017]逛公园 最短路图 拓扑序DP
- sql生成一个日期表
- C#开发微信公众平台-就这么简单(转载)
- [sharepoint]文档库,文件夹授权
热门文章
- HTML5学习总结
- AndroidStudio中activity实现去掉标题栏
- PCI Express(六) - Simple transactions
- 解决linux 无法下载 oracle 官网 java的 安装包
- C学习笔记
- 5、SQL Server数据库、T-SQL
- ZXingObjC 64位 集成到自己的项目中(xcode 6.4)
- springMVC: java.lang.ClassNotFoundException: javax.servlet.jsp.jstl.core.Config
- shell 脚本杀死后台由php脚本控制运行的所有php脚本和java程序
- delphi判断文件类型