小视野课程2 第一讲进制转换 代码整理
1.《进制转换(N进制转10进制)》
将任意一个 n 进制 x 转换成十进制。
#include<bits/stdc++.h>
using namespace std;
int hhhj;
int main(){
int n;
int a,b[105];
char c[105];
int k = 0;
cin >> n >> c;
a=strlen(c);
for(int i = 0; i < a; i++){
if(c[i]>='0'&&c[i]<='9'){
b[i]=c[i]-'0';
}
else b[i]=c[i]-'A'+10;
}
for(int i = a-1; i >= 0; i--){
hhhj+=b[i]*pow(n,k);
k++;
}
printf("%d",hhhj);
return 0;
}
2.《双重回文数》
如果一个数从左往右读和从右往左读都是一样的,那么这个数就叫做“回文数”,当然,回文数的首和尾都是非0的。事实上,有一些数,在十进制时不是回文数,但在其他进制时可能就是回文数。
给定两个十进制数n,s,然后找出前n个大于s且在至少两种进制(二进制至十进制)上是回文数的十进制数。.
#include<stdio.h>
int isDoubleHW(int num);
int isHW(int num,int x);
int a[6];
int main(void) {
int n,s;
scanf("%d %d",&n,&s);
int cnt=0;
for(int i=s+1; cnt<n; i++) { </