使用质因数分解的最大公约数[JAVA]

时间:2018-11-14 21:54:34

标签: java greatest-common-divisor

我想找到使用质因数分解的最大公约数。在代码的末尾,我有两个数的因数。如何找到GCD?

import java.util.ArrayList;
import java.util.List;

public class Zadanie2 {
    public static List<Integer> nwd(int liczby) {
        int n = liczby;
        List<Integer> dzielniki = new ArrayList<Integer>();
        for (int i = 2; i <= n / i; i++) {
            while (n % i == 0) {
                dzielniki.add(i);
                n = n / i;
            }
        }
        if (n > 1) {
            dzielniki.add(n);
        }
        return dzielniki;
    }

    public static void main(String[] args) {
        System.out.println("Czynniki pierwsze liczby 12");
        for (Integer liczby : nwd(12)) {
            System.out.println(liczby);
        }
        System.out.println("Czynniki pierwsze liczby 16");
        for (Integer liczby : nwd(16)) {
            System.out.println(liczby);
        }


        }
    }

0 个答案:

没有答案