| Pseudo-code | Morphogramme |
|---|---|
TAUX_FED <-- 0.15 TAUX_PROV <-- 0.2 TAUX_ASS_EMPLOI <-- 0.025 TAUX_RRQ <-- 0.02 Lire Heures Lire Taux_Horaire Salaire_Brut <-- Heures * Taux_Horaire Paiement_Fed <-- Salaire_Brut * TAUX_FED Paiement_Prov <-- Salaire_Brut * TAUX_PROV Paiement_Ass_Emploi <-- Salaire_Brut * TAUX_ASS_EMPLOI Paiement_RRQ <-- Salaire_Brut * TAUX_RRQ Écrire Salaire_Brut Écrire Paiement_Fed Écrire Paiement_Prov Écrire Paiement_Ass_Emploi Écrire Paiement_RRQ |
|
// Par: Patrice Roy
// Le: 9 décembre 2001
// But: Écrire le pseudo-code et le morphogramme de
// l'algorithme permettant de calculer et d'afficher
// le salaire net d'un employé ainsi que le détail
// des déductions.
//
// Pour cela, il vous faudra lire les informations
// suivantes:
//
// * Le nombre d'heures travaillées;
// * Le taux horaire.
//
// Il vous faudra tenir compte que l'employé devra payer:
//
// * 15% d'impôt fédéral;
// * 20% d'impôt provincial;
// * 2,5% d'assurance emploi;
// * 2% de régime des rentes.
#include <iostream>
using namespace std;
void main ()
{
// ---------------------------------------------------
// Constantes du problème
const float
TAUX_FED = 0.15f, // Taux d'imposition au fédéral
TAUX_PROV = 0.2f, // Taux d'imposition au provincial
TAUX_ASS_EMPLOI = 0.025f, // Taux (assurance emploi)
TAUX_RRQ = 0.02f; // Taux (régime des rentes du Québec)
// ---------------------------------------------------
// Déclaration des variables nécessaires
// -- Intrants du problème
short Heures; // nombre d'heures travaillées par l'employé
float Taux_Horaire, // taux horaire de l'employé
// ---------------------------------------------------
// Déclaration des variables nécessaires
// -- Pour usage interne
Salaire_Brut, // salaire brut (avant déductions)
// ---------------------------------------------------
// Déclaration des variables nécessaires
// -- Extrants du problème
Paiement_Fed, // paiement à faire au fédéral
Paiement_Prov, // paiement à faire au provincial
Paiement_Ass_Emploi, // paiement à faire à l'ass. emploi
Paiement_RRQ, // paiement à faire au RRQ
Salaire_Net; // salaire net (après déductions)
// ---------------------------------------------------
// Phase d'entrée des données
cout << "Nombre d'heures travaillees: ";
cin >> Heures;
cout << "Taux horaire: ";
cin >> Taux_Horaire;
// ---------------------------------------------------
// Phase de traitement
// ---------------------------------------------------
// - Calcul du salaire brut
Salaire_Brut = Heures * Taux_Horaire;
// - Calcul des déductions
Paiement_Fed = Salaire_Brut * TAUX_FED;
Paiement_Prov = Salaire_Brut * TAUX_PROV;
Paiement_Ass_Emploi = Salaire_Brut * TAUX_ASS_EMPLOI;
Paiement_RRQ = Salaire_Brut * TAUX_RRQ;
// - Calcul du salaire net: sal. brut - déductions
Salaire_Net = Salaire_Brut - (Paiement_Fed +
Paiement_Prov +
Paiement_Ass_Emploi +
Paiement_RRQ);
// ---------------------------------------------------
// Phase de sortie des résultats
cout << endl
<< "Salaire net: "
<< Salaire_Net
<< endl
<< "Detail des deductions: "
<< endl
<< " - Impot federal: "
<< Paiement_Fed
<< endl
<< " - Impot provincial: "
<< Paiement_Prov
<< endl
<< " - Paiement a l'assurance emploi: "
<< Paiement_Ass_Emploi
<< endl
<< " - Versements au regime des rentes du Quebec: "
<< Paiement_RRQ
<< endl;
}