/*
 * java验证卡布列克常数
 */
package test1;

import java.util.Scanner;

public class demo {
public static void main(String[] args)
{
Scanner in=new Scanner(System.in);
System.out.print("请输入一个数:");
int num = in.nextInt();
KaBuLieKe(num);
}
public static void KaBuLieKe(int n)
{
int count = 0;
int cha = 0;
while(cha!=6174)
{
cha=getTheMaxOrMin(n,1)-getTheMaxOrMin(n,0);
System.out.println(count +":"+getTheMaxOrMin(n,1) + 
"-" + getTheMaxOrMin(n,0) + "=" + cha);
n=cha;
count++;
}
System.out.println("验证通过!");
}
public static int getTheMaxOrMin(int n,int MaxOrMin)
{
if(n<1000 || n>9999)
return -1;
int a = getThe(n,4);
int b = getThe(n,3);
int c = getThe(n,2);
int d = getThe(n,1);
int temp = 0;
int[] list = new int[]{a,b,c,d};
for(int i=0;i<4;i++)
{
for(int j=i;j<4;j++)
{
if(MaxOrMin==1?(list[i]<list[j]):(list[i]>list[j]));
{
temp=list[i];
list[i]=list[j];
list[j]=temp;
}
}
}
return list[0]*1000+list[1]*100+list[2]*10+list[3];
}
public static int getThe(int num,int i)
{
if(i>getBitCount(num) || i<1)
return -1;
else
{
return (num%((int)Math.pow(10, i)))/(int) Math.pow(10, i-1);
}
}
public static int getBitCount(int n)
{
int i = 1;
while(n/10 >0)
{
i++;
n/=10;
}
return i;
}
}

java验证卡布列克常数相关推荐

  1. Python笔记 | 卡布列克常数

    文章目录 0x00 前言 0x01 问题分析 0x02 代码设计 0x03 代码流程 0x04 完整代码 0x05 运行效果 0x06 参考文献 0x07 总结 0x00 前言 任意一个不是由完全相同 ...

  2. 100个python算法超详细讲解:卡布列克常数

    [100个python算法超详细讲解]@谷哥技术 1.问题描述 对于任意一个4位数n,进行如下的运算: 1)将组成该4位数的4个数字由大到小排列,形成由这4个数字构 成的最大的4位数. 2)将组成该4 ...

  3. C语言编程验证卡布列克,C语言生趣程序百例精解之JAVA实现(83):卡布列克常数...

    C语言趣味程序百例精解之JAVA实现(83):卡布列克常数 C语言趣味程序百例精解之JAVA实现: public class Test83{ public static void main(Strin ...

  4. java卡布列克运算_求验证卡布列克运算的代码及详解

    网络搜索的(Pascal版.C版.C 版):看了一下,根据卡布列克常数的定义,下面的几种程序实现包括输入数.数的各位取出.排序以求最大和最小.求差最后获取该常数. 卡布列克常数 验证卡布列克运算. 任 ...

  5. C语言编程验证卡布列克,C趣味程序百例(26)卡布列克常数

    83.卡布列克常数 验证卡布列克运算.任意一个四位数,只要它们各个位上的数字是不全相同的,就有这样的规律: 1)将组成该四位数的四个数字由大到小排列,形成由这四个数字构成的的四位数: 2)将组成该四位 ...

  6. c语言验证卡不列克常数,卡布列克数

    卡布列克数(Kaprekar number)是具有以下性质的数: 对于某个正整数X {\displaystyle X} 在n进位下存在正整数 A, B 及 m,且0 < B < b n { ...

  7. c语言 验证卡布列克运算,pasca编程验证卡布列克运算

    公告: 为响应国家净网行动,部分内容已经删除,感谢读者理解. 话题:pasca编程验证卡布列克运算 问题详情:验证卡布列克运算,对给定的四位数的各位数字重新排序,构成一回答:var a:array[1 ...

  8. [慈溪2010]卡布列克常数

    题目描述 最近,小Q在数学兴趣课中了解了"卡布列克常数".卡布列克是一位数学家,他在研究数字时发现:任意一个不是用完全相同数字组成的四位数,如果对它们的每位数字重新排序,组成一个最 ...

  9. C语言基础题OJ 验证卡布列克运算

    文章目录 题目描述 题目背景 输入输出提示 程序运行实例 一.解题思路 二.题解 源代码 写在最后 题目描述 题目背景 美国有位数学家叫卡布列克,他整日埋头在数学计算中.一天,他忽然发现一个有趣的数学 ...

最新文章

  1. elasticsearch query delete 方法
  2. 在MFC中使用Cstring
  3. 将远程计算机上的文件夹,如何将现有网站上虚拟目录创建到驻留在远程计算机上的文件夹...
  4. 广州.Net俱乐部第二次聚会报道
  5. spark中local模式与cluster模式使用场景_Spark内核及通信框架概述-针对面试(后面有源码分析)...
  6. Jsp Layout 布局页
  7. 开发信模板之失联跟进样品篇
  8. QFD质量机能展开,了解一下呀!
  9. 视频目标检测入门介绍
  10. 斗鱼爬虫,爬取颜值频道的主播图片和名字
  11. html图片靠右浮动 文字左侧环绕,CSS实现模拟float: center文字左右环绕图片的效果...
  12. c语言航标知识点,问题——阅读教学的航标
  13. 教你一招永久去除WPS广告
  14. 富士通scan按钮自动扫描设置
  15. 推荐系统3--FM和FFM
  16. Contiki学习——HelloWorld
  17. 2020年数学建模国赛B题解题思路
  18. 阅文java面试_【上海阅文集团Java面试】阅文后端Java,二轮技术一轮HR-看准网
  19. 基于Java的人员信息管理系统
  20. Windows平台上达梦数据库的ODBC安装与配置

热门文章

  1. 计算机上静音快捷键是什么,Win7如何设置静音快捷键?Win7系统设置静音快捷键的方法...
  2. 关于 TUN/TAP 设备
  3. stem在计算机课程中的应用,STEM教育视角下的计算机专业课程教学活动构建
  4. 22 泛型 Collection List Set
  5. mycat mysql程序_MyCat + MySQL 主从部署流程(上)
  6. JQuery EasyUI(47)
  7. mongodb(让你成为高手高高手)
  8. 参考文献都要查重? 细数某CCF会议不常见操作!
  9. java特殊字符分隔字符串_Java 根据一些特殊分割规则分割字符串
  10. 类微信APP,移动互联网第三大入口?