私はブール値法を使って完全な数値を見つけるためにJavaコーディングに問題があります。私はこのように印刷したい: 例: '6は完璧な数字です。 6は、1,2,3 'の合計です それ以外の場合: ' 9は完璧な数字ではありません 'ブール値を使って完璧な数値を調べる
しかし、私は6のコーディング方法を知りません。1,2,3 "誰でも助けてくれますか?ここで は私のコーディングです:
import java.util.Scanner;
public class trial
{
public static void main(String[] args)
{
// TODO Auto-generated method stub
Scanner perfect = new Scanner(System.in);
System.out.print("Enter any integer number : ");
int n = perfect.nextInt();
if(isPerfectNumber(n))
{
System.out.println(n+" is a perfect number");
}
else
{
System.out.println(n+" is not a perfect number");
}
}
public static boolean isPerfectNumber(int n)
{
int sum = 0;
for (int i=1; i<n; i++)
{
if (n%i == 0)
{
sum = sum + i;
}
}
if (sum == n)
{
return true;
}
else
{
return false;
}
}
}
:その後、両方が要因が含まれており、
n
が完全であるかどうかを判断するために使用することができ、単一の結果を持っていますか?コードは次のようになります。 – FATimport java.util.Scanner; import org.apache.commons.lang3。StringUtils; パブリッククラステスト {\t公共の静的な無効メイン(文字列[]引数) \t {\t \t // TODO自動生成方法スタブ \t \t ArrayListの numbsは=新しいArrayListを()。 \t \tスキャナ完璧=新しいスキャナ(System.in); \t \t System.out.print( "任意の整数を入力してください:"); \t \t int n = perfect.nextInt(); \t \t \t \t IF(isPerfectNumber(N)) \t \t { \t \t \tするSystem.out.println(N + "完全数です")。\t \t \t "System.out.println(n +"は "+ StringUtils.join(numbs、"、 "))の合計です。他 \t \t} \t \t \t \t { \t \tするSystem.out.println(N + "完全数ではありません")。 \t \t} \t} –
FAT
パブリック静的ブールisPerfectNumber(int型N) \t {\t \t INT和= 0。 (; iがN <; I = 1をint型私は++)のため \t \t \t \t { \t \t \t(N%I == 0) \t \t \t { \t \t \t \t numbs.add(I)であれば、 \t \t \t \t合計= sum + i; \t \t \t} \t \t} \t \t(和== N) \t \t { \t \t \tリターン場合はtrue;偽他 \t \t} \t \t \t \t { \t \t \tリターン。 \t \t \t } – FAT