using System.Collections.Generic;
public static void Main()
Console.WriteLine("Silahkan pilih salah satu menu berikut!");
Console.WriteLine("=======================================");
Console.WriteLine("1. Hitung pinjaman");
Console.WriteLine("2. Keluar");
Console.Write("Masukkan menu: ");
x = Convert.ToInt32(Console.ReadLine());
int pokok = 0, tenor = 0;
Console.Write("Masukkan besar pokok: ");
pokok = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("Pokok minimal yang diajukan harus lebih dari atau sama dengan 1.000.000,-");
Console.Write("Masukkan tenor pembayaran: ");
tenor = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("Tenor minimal yang diajukan harus lebih atau sama dengan 1 bulan");
Console.Write("Masukkan bunga pembayaran: ");
bunga = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("Bunga minimal yang dapat diproses harus lebih dari 0%");
double pokokBulan = pokokPerbulan(pokok, tenor);
double bungaBulan = bungaPerbulan(bunga, pokokBulan);
double cicilanBulan = cicilanPerbulan(pokokBulan, bungaBulan);
double sisaPerpinjam = sisaPinjam(bunga, pokok);
List<String> copyLoan = new List<String>();
copyLoan = listLoan(pokok, tenor, bunga, pokokBulan,bungaBulan, cicilanBulan, sisaPerpinjam);
foreach(String loan in copyLoan){
Console.WriteLine("Terima Kasih ...");
static double pokokPerbulan(int pokok, int tenor){
double pokokPerbulan = pokok/tenor;
static double bungaPerbulan(double bunga, double pokokPerbulan){
double bungaPerbulan = pokokPerbulan*bunga;
static double cicilanPerbulan(double pokokPerbulan, double bungaPerbulan){
double cicilanPerbulan = pokokPerbulan+bungaPerbulan;
static double sisaPinjam(double bunga, int pokok){
double sisaPinjam = pokok+((bunga/100)*pokok);
static List<String> listLoan(int pokok, int tenor, double bunga, double pokokPerbulan, double bungaPerbulan, double cicilanPerbulan, double sisaPinjam2){
List<String> loan = new List<String>();
loan.Add("Pokok = " + Convert.ToString(pokok));
loan.Add("Tenor = " + Convert.ToString(tenor));
loan.Add("Bunga = " + Convert.ToString(bunga));
loan.Add("Pokok per bulan = " + Convert.ToString(pokokPerbulan));
loan.Add("Bunga per bulan = " + Convert.ToString(bungaPerbulan));
loan.Add("Cicilan per bulan = " + Convert.ToString(cicilanPerbulan));
loan.Add("Tenor # Pokok@bulan # Bunga@bulan # Cicilan@bulan # Sisa Pinjaman");
loan.Add(" - # - # - # - # " + Convert.ToString(Math.Round(sisaPinjam(bunga, pokok),2)));
for (int i = 0; i < tenor; i++) {
sisaPinjam2 = sisaPinjam2-cicilanPerbulan;
loan.Add((i+1) + " # " + Convert.ToString(Math.Round(pokokPerbulan,2)) + " # " + Convert.ToString(Math.Round(bungaPerbulan,2))+ " # "
+ Convert.ToString(Math.Round(cicilanPerbulan,2)) + " # " + Convert.ToString(Math.Round(sisaPinjam2,2)));