这是我为检查armtrong nos而编写的代码,但是无法访问check()函数中返回的值。
错误:找不到符号 - 变量和
我该如何解决这个问题..
还要告诉我这是否应该使用main方法来访问执行程序并从一个函数跳转到另一个函数,或者是否有另一种更好的方法。
import java.util.Scanner;
class Arm_check
{
int n=0;
public void main()
{
getnum();
}
void getnum()
{
System.out.println("Enter a No.");
Scanner Prakhar=new Scanner(System.in);
n=Prakhar.nextInt();
check();
int ori=n;
}
int check()
{
int digits=(int)Math.floor(Math.log10(n)+1);
System.out.println("No of Digits :"+digits);
int a[]=new int[digits];
int sum=0;
for(int i=0;i<digits;i++)
{
a[i]=n%10;
n=n/10;
}
for(int i=0;i<a.length;i++)
{
sum=(int)Math.pow(a[i],3)+sum;
}
System.out.println(sum);
return sum;
dispsum();
}
void dispsum()
{
int z=check(sum);
if(z==ori)
{
System.out.println("No. is Armstrong");
}
else
System.out.println("No. is not Armstrong");
}
}
谢谢..
答案 0 :(得分:1)
...
System.out.println(sum);
dispsum(sum);
return sum;
}
void dispsum(int z)
{
if(z==ori)
...
答案 1 :(得分:0)
您实际上并未从“检查”功能“返回”某个值。尝试类似......
int thissum = check ();
然后你可以将'thissum'传递给其他函数。