1. Berikut adalah programnya :
import java.util.Scanner;
//Perintah untuk menginisialisasi objek yang diinginkan pengguna
public class lat12faktorialinput{ //nama kelas, untuk membuat suatu sekumpulan perintah (compound statement/block)
public static void main(String args[]){ //berisi argument yang diambil dari ruang eksekusi
int masuk,input; //variabel masuk, input dengan tipe data integer
//variabel masuk,input dengan tipe data integer
char lagi='y'; //variabel lagi dengan tipe data char
Scanner x= new Scanner(System.in); //memasukkan fungsi scanner x
Scanner y= new Scanner(System.in); //memasukan fungsi scanner y
while(lagi=='y'){ //perulangan while
System.out.print("Masukan awalan : ");
input = x.nextInt();
System.out.print("Masukan akhiran : ");
masuk = y.nextInt();
try{ //untuk menyediakan penanganan terhadap error atau kesalahan
for(int counter=input; counter<=masuk; counter++){ //rumus dengan nilai awal counter=1
//counter kurang dari sama dengan inputan nilai
//counter++ = nilai counter+1 System.out.printf("Nilai Factorial dari %d! adalah %d\n", counter, factorial(counter)); //%d = untuk menampilkan output berupa Integer, memasukkan rumus faktorial dengan memanggil counter
}
}catch(NumberFormatException nfe){}///menangkap eksepsi format nomor
System.out.print("mau coba lagi (y/t)?)");//mencetak kalimat mau coba lagi (y/t)?
String str =lat5BacaKeyboard.bacaString(); //memanggil kelas baca keyboard
lagi = str.charAt(0);//Metode ini mengembalikan karakter terletak di String's indeks tertentu
//Indeks string mulai dari nol if(lagi =='Y') lagi ='Y';
if(lagi =='y')continue;//kondisi untuk perulangan
else{
System.out.println("Trim\'s .. sudah mau mencoba\n");
break;
}
}
}
public static long factorial(long number){ //argument yang diambil untuk faktorial dengan tipe data long
if(number <=1)//kondisi jika number kurang dari sama dengan 1
return 1;//mengemballikan 1
else //jeda
return number * factorial(number -1); //mencetak hasil
}
}
2. Berikut adalah hasil outputnya :
No comments:
Post a Comment