C++_n进制乘法和n进制转化成十进制函数
2013-07-29 17:53
246 查看
stack<char> pro_stack; string multi_single(string mplier,char mplicand,int base){ int len=mplier.size(); int mplicand_ten=0; if(mplicand-48<10) mplicand_ten=mplicand-48; else mplicand_ten=code[mplicand-65]; int mplier_ten=0; int product=0; char cpro=' '; string total_pro=""; int carry=0; int real_pro=0; for(int i=len-1;i>=0;i--){ if(mplier[i]-48<10) mplier_ten=mplier[i]-48; else mplier_ten=code[mplier[i]-65]; real_pro=carry+mplier_ten*mplicand_ten; product=real_pro%base; if(product>9) cpro=product-10+'A'; else cpro=(char)(product+48); pro_stack.push(cpro); carry=real_pro/base; } while(!pro_stack.empty()){ total_pro.append(1,pro_stack.top()); pro_stack.pop(); } return total_pro; }
//n进制转换成十进制 float transtoT(string str_n,float base){ float num_ten=0; int in; int exp; for(int i=str_n.size()-1;i>=0;i--){ if(str_n[i]-48<10) in=str_n[i]-48; else in=code[str_n[i]-65]; exp=str_n.size()-1-i; num_ten+=in*pow(base,exp); } return num_ten; }
相关文章推荐
- C++将十进制数字转化为X 进制的字符串
- C/C++自带十进制转其它进制函数接口itoa/_itoa_s
- C++中如何将十进制转化为二进制(使用外部函数)
- 十进制转化为其他进制(C语言)
- 我的第三十一个C++上机报告(转化成2进制)
- 十进制转化为任意进制数的简单实现
- C/C++语言实现十进制正整数转化为2-16进制的数并输出
- 将十进制无符号整数转化为任意进制数(大数)
- 十进制转换为任意进制(栈 c++版)
- C++常见的时间转化函数
- 将十进制转化为m进制。
- 将十进制转化为任意进制的程序(今天写的)
- C++ 类型转化(运算符重载函数)和基本运算符重载(自增自减)
- HDU-2051 Bitset 进制转化(十进制整数向二进制整数转化)
- c++常用函数之 十六进制字符串转换为十进制
- 11、十进制和N进制的转换 -- JAVA自带函数
- C++十进制到n进制的转换
- C++之桟的应用--十进制转化为二、八、十六进制
- cublas中执行矩阵乘法运算的函数 首先要注意的是cublas使用的是以列为主的存储方式,和c/c++中的以行为主的方式是不一样的。处理方法可参考下面的注释代码
- C/C++:十进制转为二进制(n进制转为十进制)