Calcular el Valor Futuro de una Anualidad en C

CBeginner
Practicar Ahora

Introducción

En este laboratorio, aprenderás a calcular el valor futuro de una anualidad utilizando el lenguaje de programación C. El laboratorio cubre el proceso paso a paso de leer los parámetros financieros necesarios, como el pago periódico, la tasa de interés y el número de períodos, y luego aplicar la fórmula estándar del valor futuro de una anualidad para calcular el valor futuro final. Al final del laboratorio, tendrás un programa C funcional que puede realizar este cálculo financiero.

El laboratorio comienza guiándote a través del proceso de leer los parámetros de entrada del usuario. Luego, presenta la fórmula del valor futuro de una anualidad y te muestra cómo implementarla en C. Finalmente, el laboratorio demuestra cómo imprimir el valor futuro calculado en la consola.

Leer Pago, Tasa y Número de Periodos

En este paso, aprenderás a leer los parámetros financieros clave necesarios para calcular el valor futuro de una anualidad en C. Crearemos un programa que solicita al usuario que ingrese el monto del pago periódico, la tasa de interés y el número de períodos.

Primero, creemos un nuevo archivo C para nuestro cálculo financiero:

cd ~/project
nano annuity_future_value.c

Ahora, ingresa el siguiente código para leer los parámetros financieros:

#include <stdio.h>

int main() {
    double payment, rate;
    int periods;

    // Solicitar al usuario la entrada
    printf("Ingrese el monto del pago periódico: ");
    scanf("%lf", &payment);

    printf("Ingrese la tasa de interés anual (como decimal): ");
    scanf("%lf", &rate);

    printf("Ingrese el número de períodos: ");
    scanf("%d", &periods);

    // Mostrar los valores de entrada
    printf("\nParámetros de entrada:\n");
    printf("Pago Periódico: $%.2f\n", payment);
    printf("Tasa de Interés Anual: %.2f%%\n", rate * 100);
    printf("Número de Periodos: %d\n", periods);

    return 0;
}

Compila y ejecuta el programa:

gcc annuity_future_value.c -o annuity_future_value
./annuity_future_value

Salida de ejemplo:

Ingrese el monto del pago periódico: 1000
Ingrese la tasa de interés anual (como decimal): 0.05
Ingrese el número de períodos: 10

Parámetros de entrada:
Pago Periódico: $1000.00
Tasa de Interés Anual: 5.00%
Número de Periodos: 10

Desglose del código:

  • Usamos double para payment y rate para manejar valores decimales.
  • scanf() se utiliza para leer las entradas del usuario para el pago, la tasa y los períodos.
  • El especificador de formato %lf se utiliza para leer números de punto flotante de doble precisión.
  • %d se utiliza para leer valores enteros.
  • Imprimimos los valores de entrada para confirmar las entradas del usuario.

FV = Pago*((1+T)^N -1)/T

En este paso, implementarás el cálculo del valor futuro de una anualidad utilizando la fórmula financiera estándar. Modificaremos el programa C anterior para calcular y mostrar el valor futuro.

Abre el archivo fuente existente:

cd ~/project
nano annuity_future_value.c

Actualiza el código para incluir el cálculo del valor futuro:

#include <stdio.h>
#include <math.h>

int main() {
    double payment, rate, future_value;
    int periods;

    // Solicitar al usuario la entrada
    printf("Ingrese el monto del pago periódico: ");
    scanf("%lf", &payment);

    printf("Ingrese la tasa de interés anual (como decimal): ");
    scanf("%lf", &rate);

    printf("Ingrese el número de períodos: ");
    scanf("%d", &periods);

    // Calcular el Valor Futuro
    future_value = payment * ((pow(1 + rate, periods) - 1) / rate);

    // Mostrar los parámetros de entrada y el valor futuro
    printf("\nParámetros de entrada:\n");
    printf("Pago Periódico: $%.2f\n", payment);
    printf("Tasa de Interés Anual: %.2f%%\n", rate * 100);
    printf("Número de Periodos: %d\n", periods);
    printf("\nValor Futuro: $%.2f\n", future_value);

    return 0;
}

Compila el programa con la biblioteca matemática:

gcc annuity_future_value.c -o annuity_future_value -lm

Ejecuta el programa:

./annuity_future_value

Salida de ejemplo:

Ingrese el monto del pago periódico: 1000
Ingrese la tasa de interés anual (como decimal): 0.05
Ingrese el número de períodos: 10

Parámetros de entrada:
Pago Periódico: $1000.00
Tasa de Interés Anual: 5.00%
Número de Periodos: 10

Valor Futuro: $12578.95

Puntos clave sobre el cálculo:

  • pow(1 + rate, periods) calcula el factor de interés compuesto.
  • La fórmula Pago * ((1+T)^N - 1) / T calcula el valor futuro.
  • El flag -lm se utiliza para enlazar la biblioteca matemática para la función pow().

Imprimir Valor Futuro

En este paso final, mejorarás el programa de valor futuro de la anualidad agregando una salida formateada y conocimientos financieros adicionales para que los resultados sean más informativos y legibles.

Abre el archivo fuente existente:

cd ~/project
nano annuity_future_value.c

Actualiza el código para mejorar el formato de la salida y agregar conocimientos financieros:

#include <stdio.h>
#include <math.h>

int main() {
    double payment, rate, future_value, total_contribution;
    int periods;

    // Solicitar al usuario la entrada
    printf("Calculadora de Valor Futuro de Anualidad Financiera\n");
    printf("----------------------------------------\n");
    printf("Ingrese el monto del pago periódico: ");
    scanf("%lf", &payment);

    printf("Ingrese la tasa de interés anual (como decimal): ");
    scanf("%lf", &rate);

    printf("Ingrese el número de períodos: ");
    scanf("%d", &periods);

    // Calcular el Valor Futuro
    future_value = payment * ((pow(1 + rate, periods) - 1) / rate);
    total_contribution = payment * periods;

    // Mostrar un resumen financiero detallado
    printf("\n--- Resumen Financiero ---\n");
    printf("Pago Periódico:      $%.2f\n", payment);
    printf("Tasa de Interés Anual:  %.2f%%\n", rate * 100);
    printf("Número de Periodos:     %d\n", periods);
    printf("Contribución Total:    $%.2f\n", total_contribution);
    printf("Valor Futuro:          $%.2f\n", future_value);
    printf("Interés Total Ganado: $%.2f\n", future_value - total_contribution);

    return 0;
}

Compila el programa:

gcc annuity_future_value.c -o annuity_future_value -lm

Ejecuta el programa:

./annuity_future_value

Salida de ejemplo:

Calculadora de Valor Futuro de Anualidad Financiera
----------------------------------------
Ingrese el monto del pago periódico: 1000
Ingrese la tasa de interés anual (como decimal): 0.05
Ingrese el número de períodos: 10

--- Resumen Financiero ---
Pago Periódico:      $1000.00
Tasa de Interés Anual:  5.00%
Número de Periodos:     10
Contribución Total:    $10000.00
Valor Futuro:          $12578.95
Interés Total Ganado: $2578.95

Mejoras clave en esta versión:

  • Se agregó un título y un separador para una mejor experiencia de usuario.
  • Se calculó la contribución total.
  • Se mostró el interés total ganado.
  • Se utilizó un formato consistente para los valores financieros.

Resumen

En este laboratorio, aprenderás a leer los parámetros financieros clave necesarios para calcular el valor futuro de una anualidad en C, incluyendo el monto del pago periódico, la tasa de interés y el número de períodos. Luego, implementarás el cálculo del valor futuro utilizando la fórmula financiera estándar y mostrarás el resultado. El laboratorio cubre los pasos esenciales para construir un programa que pueda calcular el valor futuro de una anualidad dados los datos de entrada necesarios.