Java 求解自幂数(水仙花数)

什么是自幂数

如果在一个固定的进制中,一个 n 位自然数等于自身各个数位上数字的 n 次幂之和,则称此数为自幂数。

例如:在十进制中,153 是一个三位数,各个数位的3次幂之和为

1^3+5^3+3^3=153,所以 153 是十进制中的自幂数。

在n进制中,所有小于n的正整数都为自幂数,比如2进制中1是自幂数,3 进制中

1 和 2 都是自幂数,4 进制中 1,2 和 3 都是自幂数......

Java pow() 方法扩展


pow() 方法用于返回第一个参数的第二个参数次方。

语法

double pow(double base, double exponent)

参数

base -- 任何原生数据类型。

exponent -- 任何原生数据类型。

返回值

返回第一个参数的第二个参数次方。

实例:


public class Test{
    public static void main(String args[]){
        double x = 11.635;
        double y = 2.76;

        System.out.printf("e 的值为 %.4f%n", Math.E);
        System.out.printf("pow(%.3f, %.3f) 为 %.3f%n", x, y, Math.pow(x, y));
    }
}

输出结果为:


e 的值为 2.7183
pow(11.635, 2.760) 为 874.008

如何求自幂数

代码如下:


package com.exercise.demo3;

public class Test1 {
    public static void main(String[] args) {

        System.out.println("范围内的自幂数有:");
        //自幂数查找的范围
        for (int i = 0; i

如图:

Java 求解自幂数(水仙花数)

什么是水仙花数

“水仙花数”也被称为:超完全数字不变数、自恋数、自幂数、阿姆斯壮数 或 阿姆斯特朗数

水仙花数是指一个 3 位数,它的每个位上的数字的 3 次幂之和等于它本身。

例如:1^3 + 5^3+ 3^3 = 153。

水仙花数只是自幂数的一种,严格来说 3 位数的 3 次幂数才称为水仙花数。

如何求水仙花数

代码如下:


package com.exercise.demo01;

public class Test03 {
    public static void main(String[] args) {

        int count = 0;
        System.out.print("水仙花数有:");
        //遍历指定范围内所有的数值
        for (int i = 100; i < 1000; i++) {
            //算出个位
            int a = i % 10;
            //算出十位
            int b = i / 10 % 10;
            //算出百位
            int c = i / 100;
            //判断每个位上的立方和是否等于i
            if ((a * a * a + b * b * b + c * c * c) == i) {
                //输出水仙花数
                System.out.print(i + " ");
                //计算个数加1
                count++;
            }
        }
        System.out.println();
        System.out.println("--------------------------");
        System.out.println("水仙花数的个数为:" + count);
    }
}

&#x5982;&#x56FE;&#xFF1A;

Java 求解自幂数(水仙花数)

附:常见水仙花数

独身数共有9个: 1,2,3,4,5,6,7,8,9;

水仙花数共有4个:153,370,371,407;

四叶玫瑰数共有3个:1634,8208,9474;

五角星数共有3个:54748,92727,93084;

六合数只有1个:548834;

北斗七星数共有4个:1741725,4210818,9800817,9926315;

八仙数共有3个:24678050,24678051,88593477

……

Original: https://www.cnblogs.com/wren/p/16710684.html
Author: 请叫我阿杰
Title: Java 求解自幂数(水仙花数)

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/615825/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • 迷途的野指针,都快找不着北了

    指针,C语言开发者表示很淦,指针的使用,很多人表示不敢直面ta,不像Java一样,有垃圾自动回收功能,我们不用担心那么多内存泄漏等问题,那C语言里边呢,指针又分为了”野…

    Java 2023年6月5日
    090
  • RabbitMQ部署指南

    RabbitMQ部署指南 1.单机部署 我们在Centos7虚拟机中使用Docker来安装。 1.1.下载镜像 方式一:在线拉取 docker pull rabbitmq:3.8-…

    Java 2023年6月13日
    074
  • 【代码优化】List.remove() 剖析

    一、犯错经历 1.1 故事背景 最近有个需求大致的背景类似: 我已经通过一系列的操作拿到一批学生的考试成绩数据,现在需要筛选成绩大于 95 分的学生名单。 善于写 bug 的我,三…

    Java 2023年6月5日
    098
  • 泛型的类型擦除后,fastjson反序列化时如何还原?

    原创:微信公众号 &#x7801;&#x519C;&#x53C2;&#x4E0A;,欢迎分享,转载请保留出处。 哈喽大家好啊,我是Hydra~ 在前…

    Java 2023年6月5日
    096
  • Java JavaMail通过SMPT发送邮件

    概述 本讲讲述如何使用JavaMail工具包,通过SMPT协议,在Java代码中发送邮件。 一、JavaMail简介 JavaMail API提供了一个独立于平台且与协议无关的框架…

    Java 2023年6月9日
    083
  • mybatis-plus忽略映射字段

    mybatis-plus使用对象属性进行SQL操作,经常会出现对象属性非表字段的情况,忽略映射字段使用以下注解: @TableField(exist = false):表示该属性不…

    Java 2023年5月30日
    072
  • 线性回归大结局(岭(Ridge)、 Lasso回归原理、公式推导),你想要的这里都有

    本文已参与「新人创作礼」活动,一起开启掘金创作之路。 线性模型简介 所谓线性模型就是通过数据的线性组合来拟合一个数据,比如对于一个数据 (X) [X = (x_1, x_2, x_…

    Java 2023年6月8日
    077
  • 1

    1 posted @2022-09-25 23:44 山海自有归期 阅读(21 ) 评论() 编辑 Original: https://www.cnblogs.com/ljq202…

    Java 2023年6月7日
    085
  • 第三篇-用Flutter手撸一个抖音国内版,看看有多炫

    前言 前一篇已经开发了大部分框架,包含视频上下滑动播放,这次将上次未完成的数据显示友好显示,以及底部音乐走马灯特效,另外优化了加载数据的bug,在dart语言里 & 会自动…

    Java 2023年6月7日
    0101
  • 【源码笔记】构建Spring源码环境

    IDEA构建Spring源码,不成功你来抓我 posted @2022-07-14 22:43 daheww 阅读(15 ) 评论() 编辑 Original: https://w…

    Java 2023年6月6日
    087
  • 【力扣】872. 叶子相似的树

    请考虑一棵二叉树上所有的叶子,这些叶子的值按从左到右的顺序排列形成一个 叶值序列 。 举个例子,如上图所示,给定一棵叶值序列为 (6, 7, 4, 9, 8) 的树。 如果有两棵二…

    Java 2023年6月8日
    098
  • java获取txt文件中以空格分割的字符串

    需求是用java程序获取txt文件中的数据并将姓名、职称、工资添加到新txt文件中,txt文件中数据的格式是固定的,如下: 添加后的格式是这样的: 这里不考虑工资是怎么算的,只说获…

    Java 2023年6月9日
    079
  • 面向对象ooDay8

    类中成员的默认访问权限———默认的 接口中成员的默认访问权限——public的 重写接口中的抽象方法时,必须加publi…

    Java 2023年6月13日
    083
  • rabbitmq简介

    RabbitMQ(Advanced Message Queuing Protocol,高级消息队列协议)是一个开源的消息代理和队列服务器,用来通过普通协议在完全不同的应用之间共享数…

    Java 2023年5月30日
    079
  • mongodb中出现_id字段重复记录的排查笔记

    近期在使用mongodb的过程中遇到一次表中有几百条_id字段重复的记录(相同_id的有两条),着实吓了一大跳,因为_id字段在mongodb里面已经默认创建了唯一索引,理论上是不…

    Java 2023年6月6日
    076
  • FFmpeg使用中经验总结

    命令摘抄自网络,最下面的图片和视频的操作是经过学习之后自己的使用心得。 我的需求是,把图片按照固定时间间隔生成视频,同时还要对视频进行切割,切割条件是根据背景图片的高度来裁剪,宽度…

    Java 2023年6月5日
    0101
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球