`
linpz
  • 浏览: 5594 次
  • 性别: Icon_minigender_1
  • 来自: 广州
文章分类
社区版块
存档分类
最新评论

关于雷劈数的Java实现

阅读更多
雷劈数:有位叫卡普利加的印度数学家。他在一次旅行中,遇到猛烈的暴风雨,电闪雷鸣过后,他看到路边一块牌子,被雷电劈成了两半,一半上写着30,另一半写着25。这时,卡普利加的脑中忽然发现了一个绝妙的数学关系:30+25=55 55^2=3025,把劈成两半的数加起来,再平方,正好是原来的数字。按照第一个发现者的名字,这种怪数被命名为“卡普利加数”或“雷劈数”。

package com.gzitc.plnum;

public class Demon {
	/**
	 * isDemo(long num)判断参数num是否为雷劈数
	 * @param num
	 * @return
	 */
	public boolean isDemon(long num) {
		
		//num1、num2是分出来的数
		long num1,num2,t_num;
		
		String ts = String.valueOf(num);
		int length = ts.length();
		
		//负数
		if(ts.startsWith("-")) {
			return false;
		}
		
		//位数小于两位
		if(ts.length() < 2) {
			return false;
		}
		
		//奇数位
		if(length % 2 != 0) {
			return false;
		}
		
		num1 = Long.parseLong(ts.substring(0,length/2));
		num2 = Long.parseLong(ts.substring(length/2,length));
				
		t_num = num1 + num2;
		
		if(t_num * t_num == num) {
			return true;
		} else {
			return false;
		}
		
	}
	
	public static void main(String args[]) {
		Demon d = new Demon();
		for(long i = 10; i < 999999999; i++) {
			if(d.isDemon(i)) {
				System.out.print(i+"  ");
			}
		}
	}
}
分享到:
评论
4 楼 linpz 2011-04-29  
加瓦人生 写道
你这个方法好像缺少55*55=3025 “3025”="30"+"25"的验证


运行结果:
81  2025  3025  9801  494209  998001  24502500  25502500 ……
3 楼 加瓦人生 2011-04-26  
你这个方法好像缺少55*55=3025 “3025”="30"+"25"的验证
2 楼 无根V稻草 2011-04-26  
有点意思哈
1 楼 苍山洱海 2011-04-23  
这个雷劈数确实有意思。

相关推荐

    所有1-42位(加数的位数,总位数应为2-84位)的雷劈数

    所有1-42位(加数的位数,总位数应为2-84位)的雷劈数

    基于雷劈网表单设计器的动态表单源码,融合CSS、JavaScript、HTML、Java技术

    本项目为基于雷劈网表单设计器的动态表单源码,融合了CSS、JavaScript、HTML、Java等多重技术。项目文件总计989个,其中包含314个PNG图片、252个CSS样式文件、184个GIF图片、74个JavaScript脚本文件、66个HTML文件、...

    RuoYi 3.0 + 雷劈表单设计 + UFLO工作流

    《RuoYi 3.0:集成雷劈表单设计与UFLO工作流的高效管理系统》 RuoYi 3.0是一款强大的企业级应用框架,它集成了先进的表单设计工具“雷劈表单”以及流程管理组件“UFLO工作流”,为企业提供了全面的信息化解决方案。...

    43--[装逼遭雷劈].zip源码scratch2.0 3.0编程项目源文件源码案例素材源代码

    43--[装逼遭雷劈].zip源码scratch2.0 3.0编程项目源文件源码案例素材源代码43--[装逼遭雷劈].zip源码scratch2.0 3.0编程项目源文件源码案例素材源代码43--[装逼遭雷劈].zip源码scratch2.0 3.0编程项目源文件源码案例...

    scratch2源码装逼遭雷劈

    scratch2源码装逼遭雷劈本资源系百度网盘分享地址

    装逼遭雷劈-少儿编程scratch项目源代码文件案例素材.zip

    《装逼遭雷劈——少儿编程Scratch项目源代码解析》 在当今信息化时代,编程教育已经不再局限于成人世界,而是逐渐向低龄化发展,其中Scratch编程语言以其直观、易学的特点,成为了少儿编程的首选。"装逼遭雷劈"这个...

    基于PHP的雷劈流程设计器开源源码

    该项目是一款基于PHP的雷劈流程设计器开源源码,集成了PHP、JavaScript、CSS、HTML、Shell、C和C等多种编程语言。整个项目包含538个文件,其中PHP文件占347个,JavaScript文件32个,CSS文件26个,HTML文件26个,PNG...

    基于PHP的雷劈网二维码生成器设计源码

    该项目是一款基于PHP的雷劈网二维码生成器开源源码,总文件量达434个,涵盖340个PHP文件、14个HTML文件、12个CSS文件、9个JavaScript文件,以及其他C, C语言相关文件。软件由驰骋公司收购并维护,继续秉持开源精神。...

    formdesign:Ueditor + Bootstrap Jquery Javascript 雷劈网web表单设计器 Leipi Formdesign

    雷劈网 WEB表单设计器 简介 Ueditor Formdesign Plugins leipi.org 百度Ueditor表单设计器扩展插件,开源免费表单设计器,它通常在、OA系统、问卷调查系统、考试系统、等领域发挥着重要作用,你可以在此基础上任意...

    劈尖matlab实现.rar

    1.版本:matlab2014/2019a/2021a 2.附赠案例数据可直接运行matlab程序。 3.代码特点:参数化编程、参数可方便更改、代码编程思路清晰、注释明细。 4.适用对象:计算机,电子信息工程、数学等专业的大学生课程...

    找出一组数据中连续出现数据最长的算法

    这段代码实现了一个名为`GetResult`的函数,其功能是找出一个整数数组中连续递增子序列最长的长度,并返回该序列的起始位置和长度。具体来说: ```cpp int C SerdesAnalyseDlg::GetResult(int *nData, int nCount) ...

    java实现模拟RPG格斗

    在Java编程中,模拟RPG格斗是一种常见的练习,它能帮助开发者理解对象-oriented编程(OOP)概念,如类、对象、继承和抽象方法。在这个场景中,我们创建了三个英雄角色:BM、DH和MK,每个角色都有特定的生命值、攻击...

    UEditor-DEMO:自定义拖拽表单

    【UEditor-DEMO:自定义拖拽表单】是一个基于百度UEditor和雷劈网表单设计器的示例项目,旨在展示如何结合这两款工具创建一个可自定义、可拖拽的表单构建器。这个DEMO为开发者提供了一个交互式的平台,允许用户通过...

    表单设计器,需要有一定的JS开发基础

    在表单设计器的上下文中,JS可以帮助实现动态表单行为,如实时验证、数据处理和自定义事件响应。开发者需要掌握基础的JS语法,理解DOM操作,以及如何利用AJAX进行异步数据传输,以便能够充分利用这些工具。 描述中...

    高级数据库操作java指南

    在Java数据库操作中,工厂模式是一种非常重要的设计模式,它在创建对象时提供了更大的灵活性和可扩展性。工厂模式的核心思想是将对象的创建过程封装起来,使得客户端无需关心具体的实现细节,只需调用工厂方法即可...

    正版李逵劈鱼源码

    "正版李逵劈鱼源码"是一个涉及到网络游戏开发和编程的资源,主要集中在棋牌游戏领域,特别是打渔类的游戏。李逵劈鱼是一款基于中国民间故事《水浒传》中的角色李逵而设计的电子游戏,玩家在游戏中扮演李逵,通过控制...

    李逵劈鱼HGE游戏源码

    【李逵劈鱼HGE游戏源码】是一个关于棋牌游戏开发的资源,主要包含了"李逵劈鱼"这款基于HGE(Happy Game Engine)的游戏的源代码。HGE是一款开源的游戏开发引擎,它提供了丰富的功能,使得开发者能够快速构建2D游戏。...

    老版本李逵劈鱼各种素材

    【标题】"老版本李逵劈鱼各种素材"所涉及的知识点主要集中在游戏开发和设计领域,特别是针对一款名为“李逵劈鱼”的老版本游戏。这款游戏可能是一款电子娱乐产品,如手机游戏或网络休闲游戏,以中国古代水浒传中的...

    新版李逵劈鱼源代码

    5. **游戏逻辑**:"李逵劈鱼"的具体游戏规则,如玩家射击、鱼类移动、得分计算等,都需要在源代码中进行详细定义和实现。这部分可能涉及到复杂的逻辑判断和状态机设计。 6. **数据库操作**:游戏数据的持久化通常...

    劈尖干涉MATLAB源代码pijian.m

    劈尖干涉:根据薄膜干涉的道理,可以测定平面的平直度.测定的精度很高,甚至几分之一波长那么小的隆起或下陷都可以从条纹的弯曲上检测出来.若使两个很平的玻璃板间有一个很小的角度,就构成一个楔形空气薄膜,用...

Global site tag (gtag.js) - Google Analytics