簡體   English   中英

輸出中的整數數量? 簡單的java程序

[英]number of integers in output? simple java program

我正在研究一個簡單的java代碼,它輸出用戶輸入數字的所有因子。 我如何計算然后顯示輸出的因子數?

System.out.println("Enter an integer to be factored:");
int d = Stdin.readInt();

System.out.println("The Factors of " + d + " are:");
for(int w = 1; w <= d; w++ ){
    if(d % w == 0){
        System.out.println(w);
    } 
} 

在上面的代碼中,它是'w'中輸出的整數的數量。例如,如果輸入的數字是8且其因子是1,2,4,8,我該如何編寫一個代碼,其中“8有4個因子” ?

謝謝

您只需要一個變量來計算因子:

System.out.println("Enter an integer to be factored:");
int d = Stdin.readInt();
int nFactors = 0;

System.out.println("The Factors of " + d + " are:");
for(int w = 1; w <= d; w++ ){
    if(d % w == 0){
        System.out.println(w);
        ++nFactors;
    } 
}
System.out.println(d + " has " + nFactors + " factors");

你需要一個計數器變量。 這是代碼:

int counter =0;

for(int w = 1; w <= d; w++ ){
        if(d % w == 0){
        counter++;   
        System.out.println(w);

        } 

System.out.println(d + " has " + counter + "factors ");

試試這段代碼:

import java.util.Scanner;

public class EmbalzadoFactorial {
    public static Scanner sc;

    public static void main(String[] args) {
        int Number, i;
        sc = new Scanner(System.in);

        System.out.print("Please Enter any number to Find Factors: ");
        Number = sc.nextInt();

      System.out.println("The factors are: ");
        for(i = 1; i <= Number; i++) {
            if(Number%i == 0) { 

                System.out.format(" %d  ", i);
            System.out.print ("and");
            System.out.format("%s %n ", i);
            }
        }
    }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM