首页 > Java > java教程 > 正文

Java 中的快乐数字

PHPz
发布: 2024-08-30 16:28:40
原创
1069 人浏览过

快乐数字是非零正整数。如果我们找到每个数字的平方和,请重复该过程,直到该数字等于 1(一)。否则,它被称为“不快乐的数字”或“悲伤的数字”。因此,在本文中,我们将详细讨论 Java 中的快乐数字。

广告 该类别中的热门课程 JAVA 掌握 - 专业化 | 78 课程系列 | 15 次模拟测试

快乐数字的示例有 1、7、10、13、19、23、28、31、32 等

Java 中快乐数字背后的逻辑:

Example: 23 is a Happy Number or Not. Example: 11 is a Happy Number or Not.
Step1: 22 + 32 = 13 Step1: 12 + 12 = 2
Step2: 12 + 32 = 10 Step2: 22 = 4
Step3: 12 + 02 =1
Output: 1(one), So 23 is a Happy number. Output: 4(four), So 11 is an Unhappy number.
示例:

23 是否是一个快乐的数字。

示例:

11 是否是一个快乐的数字。

第 1 步:

22 + 32 = 13

第 1 步: 12 + 12 = 2 第 2 步: 12 + 32 = 10 第 2 步:

22 = 4

第 3 步: 12 + 02 =1 输出: 1(一),所以 23 是一个快乐的数字。 输出:

 4(四),所以 11 是一个不开心的数字。

表> Java 中查找快乐数字的算法 以下是在 Java 中查找快乐数字的不同步骤。

第 1 步:从键盘输入一个非零正数并将其分配给名为 number 的变量。

第 2 步: 将给定数字 (%) 除以 10 (%) 计算余数。

第 3 步: 计算剩余值的平方并将其添加到变量总和中。

第 4 步: 将数字除以 (/) 10。

第 5 步: 重复步骤:2 到步骤:4,直到得到给定数字的所有数字的平方和。

第 6 步: 最终相加值存储在变量 sum 中。

第 7 步:

定义一个名为 result 的变量,并使用数字值初始化它。
  • 第8步:
  • 如果结果值不等于1或4,我们将简单地调用创建的方法来重复它。

第 9 步:

如果结果值设置为 1,则打印“It is a Happy Number”;否则,它会打印“这不是一个快乐的数字。”

注意:

在快乐数字中,数字不受任何一边插入/删除零的影响。

import java.util.*;
public class HappyNumber
{
public static int checkHappyNumber (int number)
{
int rem = 0, sum = 0;
// calculate the sum of squares of each digits
while(number > 0)
{
rem = number %10;
sum = sum+(rem*rem);
number = number/10;
}
return sum;
}
public static void main(String[] args)
{
// Take number from KeyBoard
Scanner sc = new Scanner (System.in);
System.out.print("Enter a non-zero Positive Number:");
int number = sc.nextInt( );
int result = number;
while (result != 1 && result != 4)
{
result = checkHappyNumber(result);
}
if (result ==1)
{
System.out.println ("It is a Happy Number");
}
else
{
System.out.println (" It is not a Happy Number");
}
}
}
登录后复制
如果一个数字是快乐数字,即数字序列是快乐数字。例如,23是一个快乐的数字;它表明像 13,10,1 这样的数字序列应该是一个快乐数字。

如果最后它的数字的平方和等于4(四),即Unhappy。 示例

以下是在 Java 中检查快乐数字的不同示例。Java 中的快乐数字

示例#1

我们创建一个 checkHappyNumber ( ) 方法来验证给定的数字是否是 Happy Number。

代码:

import java.util. *;
public class Main
{
public static Boolean checkHappyNumber(int number)
{
Set<Integer> digits=new HashSet<Integer>();
while(digits.add(number))
{
int result = 0;
while(number > 0)
{
result += Math.pow(number % 10, 2);
number = number/10;
}
number = result;
}
return number == 1;
}
public static void main(String[] args)
{
Scanner sc = new Scanner(System.in);
System.out.println ("Enter a non-zero integer number :");
int number = sc.nextInt();
System.out.println(checkHappyNumber(number)?"It is a Happy Number":"It is an Unhappy Number");
}
}
登录后复制

输出:

示例#2Java 中的快乐数字

我们创建一个 checkHappyNumber ( ) 方法来验证给定的数字是否是 Happy Number。

代码:

输出
import java.util.*;
public class HappyNumber
{
public static int checkHappyNumber(int number)
{
int rem = 0,sum = 0;
// calculate the sum of squares of digits
while(number >0)
{
rem = number%10;
sum = sum + (rem*rem);
number = number/10;
}
return sum;
}
public static void main(String[] args)
{
// Take starting and ending number from keyboard
Scanner sc = new Scanner(System.in);
System.out.print("Enter the Starting Number:");
int i=sc.nextInt();
System.out.print("Enter the Ending Number:");
int j=sc.nextInt();
System.out.println("The happy numbers between "+i+" and "+j+" are: ");
for (int x=i ; x <= j; x++)
{
int result = x;
//Happy number always ends with 1 and unhappy number ends with 4
while(result != 1 && result != 4)
{
result = checkHappyNumber(result);
}
if(result == 1)
System.out.print(x + ",");
}
}
}
登录后复制

:
示例#3 我们创建一个 checkHappyNumber ( ) 方法来验证一系列数字之间的所有数字是否是快乐数字,并打印快乐数字列表。 代码:

Java 中的快乐数字

输出

: 结论 在这篇文章中,我们将专门讨论Java中的Happy Numbers。这是一个令人着迷的数字。各数字位数的平方和,重复同样的过程,最终得到1。编译完所有过程后,如果结果不等于1或4,则称为Unhappy Number或Sad Number。就像快乐的数字一样,如果一个数字不快乐,它的所有序列成员也会不快乐。我们提供不同的 Java 程序,使用不同的 Java 方法来检查快乐数字。

以上是Java 中的快乐数字的详细内容。更多信息请关注PHP中文网其他相关文章!

相关标签:
来源:php
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!