Yasmtidk / practice

practice INF155
0 stars 0 forks source link

Exercice #6 #43

Open Yasmtidk opened 5 months ago

Yasmtidk commented 5 months ago

Image

Image

Yasmtidk commented 5 months ago

// / D�FINITION DU SOUS-PROGRAMME PRINCIPALE / // /* Date : 23/01/24 Par : Yasmine Beddouch

Description : Déclarez une procédure appelée relever_compte qui reçoit
le montant d'un solde hypothécaire, le montant du paiement mensuel et le taux
d'intérêt annuel sur l'hypothèque.
La procédure affiche le solde de l'hypothèque après chaque paiement tel qu'illustré
dans les images ci-dessous.

Implémentez cette fonction en commençant par afficher l'entête du relevé de compte.
Puis, tant qu'il reste un solde, appliquer un paiement mensuel et afficher le nouveau solde.

Note: comme le rôle de cette fonction est de faire de l'affichage, il est normal
d'y employer des printf.

*/ /***/

include

include

include

// / D�FINITION DES TYPES ET CONSTANTES / //

define TEST 0

define APPLICATION 1

// / D�CLARATION DES SOUS-PROGRAMMES PRIV�ES / //

// Déclaration de fonction solde_apres_paiement void relever_compte(double montant_solde_hypothecaire, double montant_paiement_mensuel, double taux_interet_annuel);

// / D�FINITION DU SOUS-PROGRAMME PRINCIPALE / //

if(APPLICATION)

int main() { double montant_solde_hypothecaire; // Le montant d'un solde hypothécaire saisit par l'utilisateur double montant_paiement_mensuel; // Le montant du paiement mensue saisit par l'utilisateur double taux_interet_annuel; // Le taux d'intérêt annuel sur l'hypothèque saisit par l'utilisateur double nouveau_solde_hypothecaire; // Le nouveau solde hypothécaire après le paiement

// Demande a l'utilisateur de saisir le montant d'un solde hypothécaire saisit par l'utilisateur
printf("Quel est le montant de l'hypotheque : ");
scanf("%lf", &montant_solde_hypothecaire);

// Demande a l'utilisateur de saisir le montant du paiement mensuel saisit par l'utilisateur
printf("Quel est le montant du paiement mensuel : ");
scanf("%lf", &montant_paiement_mensuel);

// Demande a l'utilisateur de saisir le taux d'intérêt annuel sur l'hypothèque saisit par l'utilisateur
printf("Quel est le montant du taux d'interet annuel : ");
scanf("%lf", &taux_interet_annuel);

// Appelle de la fonction relever_compte :
relever_compte(montant_solde_hypothecaire, montant_paiement_mensuel, taux_interet_annuel);

return EXIT_SUCCESS;

}

endif

// / D�CLARATION DES SOUS-PROGRAMMES PRIV�ES / //

// Définition de fonction relever_compte : void relever_compte(double montant_solde_hypothecaire, double montant_paiement_mensuel, double taux_interet_annuel) { double taux_interet_mensuel; // Le taux d'intérêt mensuel sur l'hypothèque double interet; // Les interet calculer (solde * taux mensuel interet) double remboursement; // Le remboursement payer par l'utilisateur int No_Mois = 0; // Le nombre de mois depuis le premier paiement

//Affichage de la nouvelle signature
printf("Solde initiale : %.2f$ @ %.2f%", montant_solde_hypothecaire, taux_interet_annuel);
printf("\n----------------------------------------------\n");
printf("No Mois    |  Solde \n");

//Calculer le taux d'interet mensuel
taux_interet_mensuel = taux_interet_annuel / 12;

do
{
    //Compteur de boucle et nombre de mois depuis le premier paiement
    No_Mois++;

    //On calucle les intérêt
    interet = montant_solde_hypothecaire * taux_interet_mensuel;

    //Calculer le montant du paiement mensuel sans les interet mensuel
    remboursement = montant_paiement_mensuel - interet;

    // Calculer le montant solde hypothecaire apres le paiement;
    montant_solde_hypothecaire = montant_solde_hypothecaire - remboursement;

    printf("     %d     |  %.2lf\n", No_Mois, montant_solde_hypothecaire);

    if(montant_solde_hypothecaire < montant_paiement_mensuel)
    {
        printf("     %d     |  0.00\n", No_Mois+1);
    }

}while(montant_solde_hypothecaire > montant_paiement_mensuel);

}