首页 > 基础资料 博客日记
JAVA——水仙花数问题
2024-07-12 17:00:03基础资料围观142次
本篇文章分享JAVA——水仙花数问题,对你有帮助的话记得收藏一下,看Java资料网收获更多编程知识
2024/07/12
1.问题
2.错误解法
3.错误分析
4.正确解法
5.其他:关于Java中幂函数的用法
6.参考
1.问题
2.错误解法
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int A = nextInt();
**if (A>=100&&a<=999)**
{
int a = A/100%10;
int b = A/10%10;
int c = A%10;
**if (A==pow(a,3)+pow(b,3)+pow(c,3))**
{
System.out.println("1");
}
else
{
System.out.println("0");
}
}
else
{
System.out.println("您输入的不是三位数!");
}
}
}
3.错误分析
nextInt()
方法应该由scanner
调用,而不是直接调用nextInt()
。- 在判断条件中,变量
a
的使用有误,应该是A
。 pow
函数在Java中不是直接可用的,需要使用Math.pow
方法。
4.正确解法
import java.util.Scanner;
import java.lang.Math; // 导入Math类以使用pow函数
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);// 使用scanner调用nextInt()
int A = scanner.nextInt();
//变量A是一个三位数
if (A >= 100 && A <= 999)
{
int a = A/100%10;
int b = A/10%10;
int c = A%10;
//A为int类型,使用Math.pow计算立方和后,强制转换为int类型后才能与A做比较
if (A == (int)(Math.pow(a,3)+Math.pow(b,3)+Math.pow(c,3)))
{
System.out.println("1");
}
else
{
System.out.println("0");
}
}
else
{
System.out.println("您输入的不是三位数!");
}
scanner.close(); // 关闭scanner
}
}
5.其他:关于Java中幂函数的用法
* import java.lang.Math; // 应先导入导入Math类以使用pow函数。
* Math.pow(a,3)//表示a的三次方。
6.参考
https://blog.csdn.net/bbDreamdotrue/article/details/113410365
文章来源:https://www.cnblogs.com/lidadudu/p/18298857
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:jacktools123@163.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:jacktools123@163.com进行投诉反馈,一经查实,立即删除!
标签: