标题:这是一道将任意进制数转换为10进制数的程序,请问为什么单单转换13进制数错 ...
只看楼主
lili3499
Rank: 1
等 级:新手上路
帖 子:18
专家分:0
注 册:2016-6-12
结帖率:14.29%
已结贴  问题点数:20 回复次数:4 
这是一道将任意进制数转换为10进制数的程序,请问为什么单单转换13进制数错了
这是一道将任意进制数转换为10进制数的程序,请问为什么单单转换13进制数错了(大于20的时候)?
#include<iostream>
#include<cstring>
#include<cmath>
using namespace std;
int main()
{
    int z,r,cc=0,n,result=0;
    cin>>z>>n;  //z表示要转换的数,n表示进制数
    do
    {
        r=z%10;z=z/10;  
        if(r>=n) break;
        result+=r*pow(n,cc);
        cc++;
    }while(z!=0);
    cout<<result;
    return 0;
}
搜索更多相关主题的帖子: include result 
2016-08-21 19:27
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:507
帖 子:8890
专家分:53117
注 册:2011-1-18
得分:10 
编译失败,你是怎么运行的?

pow(n,cc) 编译器不知道该调用哪个重载函数
2016-08-22 08:35
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:507
帖 子:8890
专家分:53117
注 册:2011-1-18
得分:0 
你用什么类型存储结果?或者这么说吧,对于十进制的25,转换为13进制后,你想输出什么?

[此贴子已经被作者于2016-8-22 10:02编辑过]

2016-08-22 08:38
sbwl
Rank: 2
等 级:论坛游民
威 望:2
帖 子:10
专家分:18
注 册:2016-8-22
得分:10 
我试了一下,没有错呀
2016-08-23 11:34
lili3499
Rank: 1
等 级:新手上路
帖 子:18
专家分:0
注 册:2016-6-12
得分:0 
哦,谢谢,我重写了pow函数就可以了
2016-08-30 17:34



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-468066-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 1.326773 second(s), 10 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved