1475 m进制转十进制
题目描述 Description
将m进制数n转化成一个十进制数 m<=16
题目保证转换后的十进制数<=100
输入描述 Input Description
共一行
n和m
输出描述 Output Description
共一个数
表示m进制的n化成十进制的数
样例输入 Sample Input
1010 2
样例输出 Sample Output
10
数据范围及提示 Data Size & Hint
乘权累加法
1 #include<iostream> 2 #include<cmath> 3 #include<cstring> 4 #include<cstdio> 5 using namespace std; 6 int a[1001]; 7 char a1[1001]; 8 int main() 9 { 10 int n; 11 int ans=0; 12 scanf("%s",&a1); 13 cin>>n; 14 int la=strlen(a1); 15 for(int i=0;i<la;i++) 16 { 17 if(a1[i]>=65) 18 a[i]=a1[i]-55; 19 else 20 a[i]=a1[i]-48; 21 } 22 int i=0; 23 int now=la-1; 24 while(i<la) 25 { 26 ans=ans+a[now]*(double)(pow(n,i)); 27 i++; 28 now--; 29 } 30 cout<<ans; 31 return 0; 32 }
作者:自为风月马前卒
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。