Pages : 1
#1 Le 27/01/2011, à 17:27
- titi89
simulation de credit
bonjour,
j'ai cherché si quelqu'un avait développé un petit script de simulation de credit mais j'ai pas trouvé
il y a bien plein de simulateurs sur le net mais je voulais un truc à lancer tout de suite et la calculatrice
trop compliquée à mon gout
donc j'en ai fait un en partant du manuel
c'est pas compliqué mais si cela interresse quelqu'un je le poste
juste copier le script dans le dossier personnel le nommer "credit.sh" et le rendre exécutable
puis ouvrir un terminal et taper ./credit.sh
au debut du script j'ai expliqué comment créer un lanceur et activer l'option garder le terminal ouvert
pour relancer une simulation d'un simple bouton
j'espère qu'il n'y en a pas déjà plusieurs
#!/bin/bash
#script réalisé par titi89
#vous pouvez le modifier à votre guise donnez juste vos améliorations
#ce script est fait juste pour donner une idée d'une simulation de crédit banquaire
#placez le dans votre home nommez le "credit.sh" et donnez lui les droits d'exécution
#commande à renseigner pour un lanceur: "gnome-terminal -x ./credit.sh" et dans le terminal
#menu edition - edition du profil - Titre et commande - conserver le terminal ouvert
#cela permet de relancer une nouvelle simulation à l'aide d'un bouton dans le terminal
#sinon pour le lancer ouvrir un terminal et tapez "./credit.sh" sans les ".
#utilise gedit pour impression si besoin
echo
echo "Étant donné le montant emprunté, le taux d'intérêt ,la durée en mois et le nombre d'échéences par an"
echo "calcul la simulation d'un credit."
echo "pour avoir un credit sur 1 an donnez 12 échéences et 12 mois de durée"
echo "pour avoir un credit avec annuitées donnez 1 échéence annuelle et durée en mois soit 60 mois pour 5 ans"
echo "il peut y avoir un ecart de quelques centimes avec la banque du fait des arrondis"
echo
echo -n "Entrez le montant principal (sans virgule) "
read principal
capital=$principal
echo -n "Entrez le taux d'intérêt (exemple:3.9 pour 3.9%) "
#
read taux_interet
echo -n "Entrez le nombre d'échéence par an "
read nb_echeenceparan
echo -n "Entrez la durée du credit en mois "
read dureecreditenmois
nb_echeence=$(echo "scale=0; $dureecreditenmois/12*$nb_echeenceparan" | bc)
echo "Montant principal: $principal €" > amorti.txt
echo "Taux d'intérèts: $taux_interet %" >> amorti.txt
echo "Nombre d'échéences par an: $nb_echeenceparan" >> amorti.txt
echo "Durée du credit en mois: $dureecreditenmois" >> amorti.txt
taux_interet=$(echo "scale=9; $taux_interet/100.0" | bc)
taux_periodique=$(echo "scale=9; $taux_interet/$nb_echeenceparan" | bc)
echeence=$(echo "scale=2; $principal*$taux_periodique*(1+$taux_periodique)^$nb_echeence/((1+$taux_periodique)^$nb_echeence-1)" | bc)
echo; echo "Un peu de patience ...................................................."
echo "nb|CRD|echeence|dontCAP|dontINT" > amortissement.txt
totalINT="0"
for ((x=1; x <= $nb_echeence-1; x++))
do
interets=$(echo "scale=2; $principal*$taux_periodique" /1 | bc)
CRD=$(echo "scale=2; $principal-($echeence-$interets)" /1 | bc)
CAP=$(echo "scale=2; $echeence-$interets" /1 | bc)
INT=$(echo "scale=2; $echeence-$CAP" /1 | bc)
echo "$x|$principal €|$echeence €|$CAP €|$INT €" >> amortissement.txt
principal=$CRD
totalINT=$(echo "scale=2;$totalINT+$INT" /1 | bc)
done
nb=$nb_echeence
interets=$(echo "scale=2; $principal*$taux_periodique" /1 | bc)
CRD=$(echo "scale=2; $principal-($echeence-$interets)" /1 | bc)
CAP=$(echo "scale=2; $echeence-$CRD" /1 | bc)
INT=$(echo "scale=2; $echeence-$principal" /1 | bc)
totalINT=$(echo "scale=2;$totalINT+$INT" /1 | bc)
couttotal=$(echo "scale=2;$totalINT*100/$capital" /1 | bc)
echo "$nb|$principal €|$echeence €|$principal €|$INT €" >> amortissement.txt
echo "Montant de l'échéence: $echeence €" >> amorti.txt
echo "coût du credit: $totalINT €" >> amorti.txt
echo "coût total en % du credit: $couttotal" >> amorti.txt
echo "" >> amorti.txt
echo "" >> amorti.txt
echo "Tableau d'amortissement:" >> amorti.txt
echo "" >> amorti.txt
echo
echo "Montant emprunté: $capital €"
echo "Taux d'intérêts: $(echo "scale=2;$taux_interet*100" /1 | bc) %"
echo "Nombre d'échéences annuelle: $nb_echeenceparan"
echo "Durée total du credit en mois: $dureecreditenmois"
echo "paiement periodique = $echeence €"
echo "coût du credit: $totalINT €"
echo "coût total en % du credit: $couttotal"
echo
echo "tableau d'amortissement:"
echo
column -t -s '|' amortissement.txt
column -t -s '|' amortissement.txt >> amorti.txt
echo ""
echo ""
echo -n "Affichez le tableau d'amortissement dans gedit oui ou non taper o ou n? "
read reponse
echo ""
echo ""
if [ "$reponse" = "o" ]; then
gedit amorti.txt
else
exit 0
fi
exit 0
on peut afficher le tableau d'ammortissement dans gedit
voilà
@+
Hors ligne
#2 Le 27/01/2011, à 23:23
- titi89
Re : simulation de credit
bonjour,
désolé je suis pas assez fort
j'ai besoin de plus d'explications
j'ai regardé read -prompt mais je vois pas que fait exactement -p
$(( 1 + 1 )) dans le sens que l'on peut faire les calculs sans bc même avec les virgules?
merci pour tes conseils
@+
Hors ligne
#3 Le 27/01/2011, à 23:30
- titi89
Re : simulation de credit
ola j'ai des visions
Hors ligne
#4 Le 28/01/2011, à 04:21
- ehmicky
Re : simulation de credit
Non non j'ai supprimé car je disais des bêtises justement parce que j'ai vu après coup que tu avais besoin de floats.
read -p te permet de réduire deux lignes en une seule : echo "blabla" ; read VAR -> read -p "blabla" VAR
Stego++, bibliothèque libre de stéganographie (avec cryptographie), à venir !
Besoin de votre aide :
Stats sur les compilateurs C++ les plus utilisés
Comment utiliser les archetypes C++ ?
Hors ligne
#5 Le 28/01/2011, à 11:20
- titi89
Re : simulation de credit
ok merci
pour ceux que cela interressent:
les lignes:
echo -n "Entrez le montant principal (sans virgule) "
read principal
peuvent être remplacées par:
read -p "Entrez le montant principal (sans virgule) " principal
une seule ligne à la place de 2
voilà
merci
@+
Hors ligne
#6 Le 30/01/2011, à 15:51
- titi89
Re : simulation de credit
bonjour,
petite précision:
dans le cas ou d'annuitées le nombre de mois total doit être égal à un multiple de 12
ne gère pas les différés
c'est juste pour se donner une idée
je viens de découvrir yad
pour ceux qui voudraient essayer:
yad
code à placer dans un fichier "YadCredit.sh" dans votre Home
#!/bin/bash
capital=$(yad --width 300 --entry --title "Capital" \
--button="gtk-ok:0" --button="gtk-close:1" \
--text "Entrez le montant principal (sans virgule):")
principal=$capital
ret=$?
[[ $ret -eq 1 ]] && exit 0
if [[ $ret -eq 0 ]]; then
taux_interet=$(yad --width 300 --entry --title "Taux d'intérèts" \
--button="gtk-ok:0" --button="gtk-close:1" \
--text "Entrez le taux d'intérêt (exemple:3.9 pour 3.9%):")
ret=$?
[[ $ret -eq 1 ]] && exit 0
if [[ $ret -eq 0 ]]; then
nb_echeenceparan=$(yad --width 300 --entry --title "Echéences par an" \
--button="gtk-ok:0" --button="gtk-close:1" \
--text "Entrez le nombre d'échéence par an:")
ret=$?
[[ $ret -eq 1 ]] && exit 0
if [[ $ret -eq 0 ]]; then
dureecreditenmois=$(yad --width 300 --entry --title "Durée totale en mois" \
--button="gtk-ok:0" --button="gtk-close:1" \
--text "Entrez la durée du credit en mois:")
fi
fi
fi
annee=$(echo "scale=0; $dureecreditenmois/12" | bc)
moissup=$(echo "scale=0; $dureecreditenmois-($annee*12)" | bc)
nb_echeence=$(echo "scale=0; $dureecreditenmois/12*$nb_echeenceparan+$moissup" | bc)
echo "Montant principal: $principal €" > $HOME/amorti.txt
echo "Taux d'intérèts: $taux_interet %" >> $HOME/amorti.txt
echo "Nombre d'échéences par an: $nb_echeenceparan" >> $HOME/amorti.txt
echo "Durée du credit en mois: $dureecreditenmois" >> $HOME/amorti.txt
taux_interet=$(echo "scale=9; $taux_interet/100.0" | bc)
taux_periodique=$(echo "scale=9; $taux_interet/$nb_echeenceparan" | bc)
echeence=$(echo "scale=2; $principal*$taux_periodique*(1+$taux_periodique)^$nb_echeence/((1+$taux_periodique)^$nb_echeence-1)" | bc)
echo "nb|CRD|echeence|dontCAP|dontINT" > $HOME/amortissement.txt
totalINT="0"
for ((x=1; x <= $nb_echeence-1; x++))
do
interets=$(echo "scale=2; $principal*$taux_periodique" /1 | bc)
CRD=$(echo "scale=2; $principal-($echeence-$interets)" /1 | bc)
CAP=$(echo "scale=2; $echeence-$interets" /1 | bc)
INT=$(echo "scale=2; $echeence-$CAP" /1 | bc)
echo "$x|$principal €|$echeence €|$CAP €|$INT €" >> $HOME/amortissement.txt
principal=$CRD
totalINT=$(echo "scale=2;$totalINT+$INT" /1 | bc)
done
nb=$nb_echeence
interets=$(echo "scale=2; $principal*$taux_periodique" /1 | bc)
CRD=$(echo "scale=2; $principal-($echeence-$interets)" /1 | bc)
CAP=$(echo "scale=2; $echeence-$CRD" /1 | bc)
INT=$(echo "scale=2; $echeence-$principal" /1 | bc)
totalINT=$(echo "scale=2;$totalINT+$INT" /1 | bc)
couttotal=$(echo "scale=2;$totalINT*100/$capital" /1 | bc)
echo "$nb|$principal €|$echeence €|$principal €|$INT €" >> $HOME/amortissement.txt
echo "Montant de l'échéence: $echeence €" >> $HOME/amorti.txt
echo "coût du credit: $totalINT €" >> $HOME/amorti.txt
echo "coût total en % du credit: $couttotal" >> $HOME/amorti.txt
echo "" >> $HOME/amorti.txt
echo "" >> $HOME/amorti.txt
echo "Tableau d'amortissement:" >> $HOME/amorti.txt
echo "" >> $HOME/amorti.txt
column -t -s '|' $HOME/amortissement.txt >> $HOME/amorti.txt
while read ligne
do
echo "$(cut -d "|" -f1 <<< $ligne)"
echo "$(cut -d "|" -f2 <<< $ligne)"
echo "$(cut -d "|" -f3 <<< $ligne)"
echo "$(cut -d "|" -f4 <<< $ligne)"
echo "$(cut -d "|" -f5 <<< $ligne)"
done < $HOME/amortissement.txt | yad --width=500 --height=600 --title="Simulation de credit" \
--button="relancer:2" --button="gtk-ok:0" --button="gtk-close:1" \
--text="Montant emprunté: $capital €\nTaux d'intérêts: $(echo "scale=2;$taux_interet*100" /1 | bc) %\nNombre d'échéences annuelle: $nb_echeenceparan\nDurée total du credit en mois: $dureecreditenmois\npaiement periodique = $echeence €\ncoût du credit: $totalINT €\ncoût total en % du credit: $couttotal\n\n\nTableau d'amortissement" --list --print-all \
--multiple --column="nb" --column="CRD" --column="Echeence" --column="dontCAP" --column="dontINT"
ret=$?
[[ $ret -eq 1 ]] && exit 0
if [[ $ret -eq 0 ]]; then
gedit $HOME/amorti.txt
fi
if [[ $ret -eq 2 ]]; then
$HOME/YadCredit.sh
fi
exit 0
@+
Hors ligne
#7 Le 27/04/2018, à 15:24
- call_me_vlad
Re : simulation de credit
Salut !
J'ai développé un simulateur de crédit avec pas mal de fonctionnalités, dans le cadre d'un projet perso. Par contre, il n'est pas Linux à proprement parler, c'est une appli web Laravel :
https://simulation.dr-credit.fr/
Si ça peut t'aider, j'ai trouvé la plupart des formules sur les sites :
- https://www.ilemaths.net/calcul-credit.php
- https://www.creditquid.com/credit-immob … iques.html
Je peux faire tourner leur traduction en PHP si ça vous intéresse
++
Hors ligne
#8 Le 27/04/2018, à 16:22
- kholo
Re : simulation de credit
salut,
et en javascript ?
y a des trucs sympa
Hors ligne
Pages : 1