025:求特殊自然数
总时间限制: 1000ms 内存限制: 65536kB
描述
一个十进制自然数,它的七进制与九进制表示都是三位数,且七进制与九进制的三位数码表示顺序正好相反。编程求此自然数,并输出显示。
输入
无。
输出
三行:
第一行是此自然数的十进制表示;
第一行是此自然数的七进制表示;
第一行是此自然数的九进制表示。
样例输入
(无)
样例输出
(不提供)
代码
#include<iostream>
using namespace std;
int main()
{
int n,m,j=0,sum=0;
int s[10]; //定义存放七进制每一位的数组
for(int i=100;i<1000;i++){
n=i;
while(n>=7){s[j]=n%7;n=n/7;j++;} //计算并存储七进制每一位
for(int l=0;l<j;l++){
m=s[l];
for(int k=j-1;k>=0;k--){ m*=9;}
sum+=m;
}
//输出结果
if(i==sum+n){
cout<<i<<endl;
cout<<n;
for(int l=j-1;l>=0;l--){
cout<<s[l];}
cout<<endl;
for(int l=0;l<=j-1;l++){
cout<<s[l];}
cout<<n<<endl;
}
sum=0;
j=0;
}
return 0;
}
注意:每一位都需要一个变量存储;七进制表示为/ns[j-1]s[0]/