进制间的转换(c++类)
来源:互联网 发布:java多线程返回值 编辑:程序博客网 时间:2024/06/01 20:58
闲来无事,用c++类写了个进制间的转换。
//功 能:1、十进制转换为任意进制 2、任意进制转换为十进制#include <iostream>#include <cstdio>#include <cstring>#include <cmath>#include <windows.h>using namespace std;class SysConvert{public:SysConvert(){}SysConvert(char *_sysnum,int _sys);SysConvert(int _dnum,int _sys);void Convert(); //十进制转换为任意进制void Convertd(); //任意进制转换为十进制char* GetRes();int GetDnum();private:int dnum;int sys;char res[256];char sysnum[256];};SysConvert::SysConvert(int _dnum,int _sys){if(_sys>26){MessageBox(NULL,TEXT("The system is too large!"),TEXT("ERROR"),MB_ICONERROR);exit(0);}dnum=_dnum;sys=_sys;}SysConvert::SysConvert(char *_sysnum,int _sys){strcpy(sysnum,_sysnum);sys=_sys;}void SysConvert::Convert(){char _res[256];int num(dnum),i(0);while(num){int temp=num%sys;if(temp>9){_res[i++]='A'+(temp-10);}else _res[i++]=char(temp+'0');num/=sys;}int j;for(j=0;j<i;j++)res[j]=_res[i-j-1];res[j]=0;}char* SysConvert::GetRes(){return res;}int SysConvert::GetDnum(){return dnum;}void SysConvert::Convertd(){int len=strlen(sysnum),sum(0);for(int i=len-1;i>=0;i--){int temp;if(sysnum[i]>='A'){temp=10+(sysnum[i]-'A');}else temp=sysnum[i]-'0';sum+=temp*pow(sys*1.0,len-i-1);}dnum=sum;}int main(){int ncase;cin>>ncase;while(ncase--){int x1,y1;cin>>x1>>y1;SysConvert sysconvert1(x1,y1);sysconvert1.Convert();cout<<sysconvert1.GetRes()<<endl;char x[234];int y;scanf("%s%d",x,&y);SysConvert sysconvert(x,y);sysconvert.Convertd();cout<<sysconvert.GetDnum()<<endl;}return 0;}
- C语言 数字进制间的转换
- C/C++进制间的相互转换
- C++:类的自动转换和强制类型转换
- 注释转换(C到C++的注释转换)
- 繁体转换简体的程序(c#)
- c指针的强制转换(cast)
- C语言(字母大小写的转换)
- c语言的转换
- C语言的转换
- 注释转换(c转换为c++)
- C#(C sharp)字符串和时间的相互转换
- 字符串和数字之间的转换(C/C++)
- 字符串和数字之间的转换(C/C++)
- 注释转换(C->C++)
- 注释转换(C---->C++)
- 注释转换(C->C++)
- 注释转换(C --> C++)
- 注释转换(C->C++)
- LAPACK使用中出现问题的解决方案(VS平台下的)
- 【rzxt】高手分享:系统该如何优化呢?
- 【XP用户无需恼,文件关联变换有妙招】
- 装饰者设计模式----IO流
- uva 127 ``Accordian'' Patience(栈+模拟)
- 进制间的转换(c++类)
- POJ 2184 Cow Exhibition
- 业务需求、用户需求、功能需求、非功能需求
- 获取tomcat中web.xml中定义的环境变量(env-entry)
- Java之Servlet详解
- TP link 703N 刷openwrt+挂载USB 摄像头
- android面试题 不单单为了面试也是一次很好的学习
- 【rzxt】实例分析:u盘装系统的好处与不足
- Labyrinth (URAL 1033)