Red de conocimiento informático - Conocimiento de la instalación - Escribir un subprograma de Java~~

Escribir un subprograma de Java~~

Captura de pantalla: El significado general de la pregunta traducida y el código del programa: Traducción: Escriba un programa que pueda mostrar el monto de pago mensual del préstamo hipotecario y el saldo pendiente, y luego mostrar cuánto del pago es Interés pagos y cuánto es el reembolso del principal (es decir, qué parte del pago se utiliza realmente para reducir la deuda). Supongamos que la tasa de interés anual es del 7,49%. Nombra una constante para representar la tasa de interés. Tenga en cuenta que los reembolsos se realizan mensualmente, por lo que la tasa de interés es solo 1/12 de la tasa de interés anual de 7,49.

Código: Nota: Hay dos métodos de pago mensual para préstamos hipotecarios: pago de capital y pago de capital e intereses. La pregunta requiere programación de acuerdo con el método "pago de capital e intereses". En el programa, escribí ambos métodos de pago. ¡Hay comentarios en lugares clave!

importar java.text.NumberFormat;

importar java.util.Scanner;

clase pública Reembolsar {

final double NLL= 0.0749; //Tasa de interés anual

final double MLL=NLL/12; //Tasa de interés mensual

final int MONTH=12; //Número de pagos

int mes=1;

public static void main(String[] args){

Reembolsar rp=new Repay();

rp.payback ();

}

public void payback(){

System.out.println("Ingrese el monto del préstamo");

//Obtener monto del préstamo

Scanner sc=new Scanner(System.in);

double deuda=sc.nextDouble();

NumberFormat fn=NumberFormat. getInstance();

fn.setMaximumFractionDigits(2);

Cadena nll=fn.format(NLL*100)+"%";

String mll =fn.format(MLL*100)+"%";

String deuda_fn=fn.format(deuda);

System.out.println("Por favor seleccione el método de pago: Ingrese 1 para seleccionar un pago igual de capital, ingrese 2 para seleccionar un pago igual de capital e intereses");

int mode=sc.nextInt();

// Pago de capital igual

if(mode==1){

System.out.println("Su préstamo total ***"+debt_fn+"; método de pago: pago de capital igual; Tiempo de pago: 1 año "+"; la tasa de interés anual es: "+nll+" tasa de interés mensual "+mll);

System.out.println("Detalles de pago a plazos");

doble mesPincipal=deuda/12; //amortización mensual del principal

deuda=mesPincipal*12;

doble acumulaciónM; //intereses de amortización mensual

double tm; //Monto de pago mensual

//Detalles de pago a plazos

while(debt>=1){

accrualM=debt*MLL;

tm=mesPincipal+acumulaciónM;

deuda=deuda-mesPincipal;

if(deuda<1){

deuda=0;

}

//Formatear los decimales a 2 dígitos

String tm_fn=fn.format(tm);

String m;

onthPincipal_fn=fn.format(mesPincipal);

String accrualM_fn=fn.format(accrualM);

String deuda_fn2=fn.format(deuda);

System.out.println("Monto de pago mensual de "+mes+": "+tm_fn+" Pago de capital este mes: "+monthPincipal_fn+" Intereses de pago este mes: "+accrualM_fn+" Principal restante: "+debt_fn2);

mes++;

}

}

//Reembolso igual de principal e intereses

if(mode= =2) {

System.out.println("Su préstamo total***"+debt_fn+"; método de pago: pago igual de capital e intereses; tiempo de pago: 1 año"+"; tasa de interés anual Es: " +nll+";tasa de interés mensual"+mll);

//La fórmula para el pago mensual de capital e intereses iguales

doble X=deuda*MLL*(Math. pow ((1+MLL), MES))/(Math.pow((1+MLL), MES)-1);

String X_fn=fn.format(X);

System.out.println("Su pago mensual es: "+X_fn);

//Detalles del pago a plazos

double lixiM,benjinM; // Interés mensual, capital mensual

System.out.println("Detalles del pago a plazos");

while(deuda>=1){

lixiM=deuda *MLL;

benjinM=X-lixiM;

deuda=deuda-benjinM;

if(deuda<1 ){

deuda=0;

}

//Salida

Cadena lixiM_fn=fn.format(lixiM);

Cadena benjinM_fn=fn .format(benjinM);

String deuda_fn3=fn.format(deuda);

System.out.println("th"+mes+ "Monto de pago mensual:" + >

mes++;

}

}

}

}