Program Java untuk Mencari Factorial Nombor

Dalam program ini, anda akan belajar mencari faktorial nombor menggunakan gelung untuk dan semasa di Java.

Untuk memahami contoh ini, anda harus mempunyai pengetahuan mengenai topik pengaturcaraan Java berikut:

  • Java untuk Gelung
  • Java sambil dan lakukan … sambil Loop

Faktor faktor nombor positif diberikan oleh:

 faktorial n (n!) = 1 * 2 * 3 * 4 *… * n 

Contoh 1: Cari faktorial nombor menggunakan gelung

 public class Factorial ( public static void main(String() args) ( int num = 10; long factorial = 1; for(int i = 1; i <= num; ++i) ( // factorial = factorial * i; factorial *= i; ) System.out.printf("Factorial of %d = %d", num, factorial); ) )

Pengeluaran

 Faktor faktor 10 = 3628800

Dalam program ini, kami telah menggunakan loop untuk melengkapkan semua nombor antara 1 dan bilangan yang diberikan (10), dan produk setiap nombor hingga num disimpan dalam faktorial pemboleh ubah.

Kami telah menggunakan lama dan bukan untuk menyimpan banyak hasil faktorial. Walau bagaimanapun, ia masih belum cukup besar untuk menyimpan nilai bilangan yang lebih besar (katakan 100).

Untuk hasil yang tidak dapat disimpan dalam pemboleh ubah panjang, kami menggunakan BigIntegerpemboleh ubah yang dinyatakan di java.mathperpustakaan.

Contoh 2: Cari Factorial nombor menggunakan BigInteger

 import java.math.BigInteger; public class Factorial ( public static void main(String() args) ( int num = 30; BigInteger factorial = BigInteger.ONE; for(int i = 1; i <= num; ++i) ( // factorial = factorial * i; factorial = factorial.multiply(BigInteger.valueOf(i)); ) System.out.printf("Factorial of %d = %d", num, factorial); ) )

Pengeluaran

 Faktor faktor 30 = 265252859812191058636308480000000

Di sini, bukannya long, kami menggunakan BigIntegerfaktorial pemboleh ubah.

Oleh kerana, *tidak dapat digunakan dengan BigInteger, kami sebaliknya menggunakan multiply()produk tersebut. Num juga mesti digunakan BigIntegeruntuk pendaraban.

Begitu juga, kita juga boleh menggunakan loop sementara untuk menyelesaikan masalah ini.

Contoh 3: Cari Factorial nombor menggunakan loop sementara

 public class Factorial ( public static void main(String() args) ( int num = 5, i = 1; long factorial = 1; while(i <= num) ( factorial *= i; i++; ) System.out.printf("Factorial of %d = %d", num, factorial); ) )

Pengeluaran

 Faktor faktor 5 = 120

Dalam program di atas, tidak seperti loop untuk, kita harus meningkatkan nilai i di dalam badan gelung.

Walaupun kedua-dua program ini secara teknikal betul, lebih baik digunakan untuk gelung dalam kes ini. Ini kerana bilangan lelaran (hingga bilangan) diketahui.

Lawati halaman ini untuk belajar mencari faktor nombor menggunakan rekursi.

Artikel menarik...