10进制的四位数中有几个符合如下特征:将其分别表示为16进制、10进制、12进制,在每种状态下,分别将各个位上的数相加,能得到3个相等10进制数。输出所有符合这样特征的10进制的四位数。
2018-03-08 17:10
351 查看
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
// TODO Auto-generated method stub
for(int i=1000;i<10000;i++){
int sJZ=i%10+i/10%10+i/100%10+i/1000;
int lJZ=toL(i);
int eJZ=toE(i);
if((sJZ==lJZ)&&(eJZ==lJZ))
System.out.println(i+" ");
}
}
public static int toL(int a){
int i=0,sum=0;
int []aa=new int [100];
do{
aa[i]=a%16;
a/=16;
i++;
}while(a>0);
for(int j=0;j<i;j++){
sum+=aa[j];
}
return sum;
}
public static int toE(int b){
int i=0,sum=0;
int [] bb=new int[100];
do{
bb[i]=b%12;
b/=12;
i++;
}while(b>0);
for(int k=0;k<i;k++){
sum+=bb[k];
}
return sum;
}
}
public class Main {
public static void main(String[] args) {
// TODO Auto-generated method stub
for(int i=1000;i<10000;i++){
int sJZ=i%10+i/10%10+i/100%10+i/1000;
int lJZ=toL(i);
int eJZ=toE(i);
if((sJZ==lJZ)&&(eJZ==lJZ))
System.out.println(i+" ");
}
}
public static int toL(int a){
int i=0,sum=0;
int []aa=new int [100];
do{
aa[i]=a%16;
a/=16;
i++;
}while(a>0);
for(int j=0;j<i;j++){
sum+=aa[j];
}
return sum;
}
public static int toE(int b){
int i=0,sum=0;
int [] bb=new int[100];
do{
bb[i]=b%12;
b/=12;
i++;
}while(b>0);
for(int k=0;k<i;k++){
sum+=bb[k];
}
return sum;
}
}
相关文章推荐
- POJ-2196 Specialized Four-Digit Numbers-10,12,16进制的各个位数相加彼此相等的数
- [soj1014]Specialized Four-Dig(10进制,12进制和16进制各位相加相等)
- 尽管是一个CS专业的学生,小B的数学基础很好并对数值计算有着特别的兴趣,喜欢用计算机程序来解决数学问题。现在,她正在玩一个数值变换的游戏。她发现计算机中经常用不同的进制表示同一个数,如十进制数123表达为16进制时只包含两位数7、11(B),用八进制表示时为三位数1、7、3。按不同进制表达时,各个位数的和也不同,如上述例子中十六进制和八进制中各位数的和分别是18和11。
- 获取系统当前时间,完成格式化,得到一个字符串。例如”201608130743”(指年月日时分)。再随机取3个小于10的整数,分别插入到 字符串的年、月、日后面,完成输出。
- 输入一个整数,求该整数的二进制表达中有多少个1。例如输入10,由于其二进制表示为1010,有两个1,因此输出2。
- 随机给定10个小于10的数字(出现的数字可能重复),从其中取出3个各不相同的数字可组合出多个不同的3位数,请输出这些3位数中最大的那个3位数
- c++第二次作业 1,个人所得税计算器 2,输出1000-10000之间,个位和千位相等的所有质数
- 华为机试样题解析:已知2条地铁线路,其中A为环线,B为东西向线路,线路都是双向的。经过的站点名分别如下,两条线交叉的换乘点用T1、T2表示。 编写程序,任意输入两个站点名称,输出最少需要经过的站点数
- 28.整数的二进制表示中1的个数 题目:输入一个整数,求该整数的二进制表达中有多少个1。 例如输入10,由于其二进制表示为1010,有两个1,因此输出2。
- 将16进制的数按字符格式存储,转换为10进制数输出-C语言
- 10进制转16进制输出
- 输出如下;153=1^3+5^+3^3的所有三位数
- 问题五十三: 求满足条件n=a!+b!+c!的所有三位数n(a,b,c分别是n的百位十位个位)并输出,要求用自定义函数实现求阶乘。
- 如何将16进制字符串转化成10进制输出
- 输出所有三位数中,能被11整除,并且各位数字和为10的数
- 怎么将一个16进制字符串转化为10进制输出?
- 杭电 acm 1720 输入16进制,输出10进制
- 1,2,3……,9组成3个三位数abc,def和ghi,每个数字恰好使用一次,要求abc:def:ghi=1:2:3.输出所有解的两种解法
- 输入数字n,按顺序输出从1最大的n位10进制数。比如输入3,则输出1、2、3一直到最大的3位数即999
- 彩球分配问题:共有12个彩球,4个红的,4个白的,4个黄的,从中挑出8个球放入3个不同的口袋(口袋编号分别为a、b、c)编写程序打印输出所有可能的放法。