Collection de type List for calcul total montant
Résolu
tortue60
Messages postés
250
Date d'inscription
Statut
Membre
Dernière intervention
-
tortue60 Messages postés 250 Date d'inscription Statut Membre Dernière intervention -
tortue60 Messages postés 250 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je suis entrain de faire une application Windows en C# ou je gère des employe (nom, montant des ventes, salaire...)
L'applicatio consite à enregistrer des salariés et à afficher le montant total des ventes TTC réalisées par les employés.
Mon problème est que je suis bloqué pour le calcul: on me dit une erreur pour mon for: L'opérateur + ne peut pas être appliqué aux opérandes de type float et libResHum.Employe
voici mon code de l'application
List<Employe> lesEmployes;
public SaisieEmploye()
{
lesEmployes = new List<Employe>();
InitializeComponent();
}
private void btnSalarie_Click(object sender, EventArgs e)
{
int age;
int montantSalaire;
int montantVentes;
string libErrer = "";
Employe unEmploye;
int.TryParse(txtAge.Text, out age);
if (age < Employe.AgeMin)
{
libErrer = "Le salarié doit avoir au minimum 16 ans";
}
int.TryParse(txtSalaire.Text, out montantSalaire);
int.TryParse(txtMontantVentes.Text, out montantVentes);
if (libErrer == "")
{
unEmploye = new Employe(txtNom.Text, age, montantSalaire, montantVentes);
lesEmployes.Add(unEmploye);
MessageBox.Show("Le salarié a été créé", "Message d'Information", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
else
MessageBox.Show(libErrer, "Message d'erreur", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
private void btnMontantTotal_Click(object sender, EventArgs e)
{
float montantTotalTTCVentes;
for (int ind = 0; ind < lesEmployes.Count; ind ++)
{
montantTotalTTCVentes = montantTotalTTCVentes + lesEmployes[ind];
}
MessageBox.Show("Le montant total des ventes TTC est de " + montantTotalTTCVentes + " euros", "Message d'Information", MessageBoxButtons.OK, MessageBoxIcon.Information);
Merci de votre aide
Je suis entrain de faire une application Windows en C# ou je gère des employe (nom, montant des ventes, salaire...)
L'applicatio consite à enregistrer des salariés et à afficher le montant total des ventes TTC réalisées par les employés.
Mon problème est que je suis bloqué pour le calcul: on me dit une erreur pour mon for: L'opérateur + ne peut pas être appliqué aux opérandes de type float et libResHum.Employe
voici mon code de l'application
List<Employe> lesEmployes;
public SaisieEmploye()
{
lesEmployes = new List<Employe>();
InitializeComponent();
}
private void btnSalarie_Click(object sender, EventArgs e)
{
int age;
int montantSalaire;
int montantVentes;
string libErrer = "";
Employe unEmploye;
int.TryParse(txtAge.Text, out age);
if (age < Employe.AgeMin)
{
libErrer = "Le salarié doit avoir au minimum 16 ans";
}
int.TryParse(txtSalaire.Text, out montantSalaire);
int.TryParse(txtMontantVentes.Text, out montantVentes);
if (libErrer == "")
{
unEmploye = new Employe(txtNom.Text, age, montantSalaire, montantVentes);
lesEmployes.Add(unEmploye);
MessageBox.Show("Le salarié a été créé", "Message d'Information", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
else
MessageBox.Show(libErrer, "Message d'erreur", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
private void btnMontantTotal_Click(object sender, EventArgs e)
{
float montantTotalTTCVentes;
for (int ind = 0; ind < lesEmployes.Count; ind ++)
{
montantTotalTTCVentes = montantTotalTTCVentes + lesEmployes[ind];
}
MessageBox.Show("Le montant total des ventes TTC est de " + montantTotalTTCVentes + " euros", "Message d'Information", MessageBoxButtons.OK, MessageBoxIcon.Information);
Merci de votre aide
A voir également:
- Collection de type List for calcul total montant
- Downloader for pc - Télécharger - Téléchargement & Transfert
- Total uninstall - Télécharger - Divers Utilitaires
- List disk - Guide
- Calcul moyenne excel - Guide
- Formule total excel - Guide
8 réponses
Bonjour,
Vous utilisez lesEmployes[ind] mais à quel "membre" du type Employe vous voulez accéder pour récupérer la valeur du montant total des ventes ttc ?
Pouvez remplacer la boucle par un foreach truc dans le genre :
Vous utilisez lesEmployes[ind] mais à quel "membre" du type Employe vous voulez accéder pour récupérer la valeur du montant total des ventes ttc ?
Pouvez remplacer la boucle par un foreach truc dans le genre :
foreach(Employe em in LesEmployes){ montantTotalTTCVentes += em.montantVentes; // en admettant que montantVentes soit le membre qui contient la valeur recherchée }
Je veu calculer le montant total des ventes de tout les employés
J'ai une bibliothèque de classe qui gère les employés avec une classe Employe et une classe TVA
J'ai une bibliothèque de classe qui gère les employés avec une classe Employe et une classe TVA
C bon j'ai trouvé:
private void btnMontantTotal_Click(object sender, EventArgs e)
{
float montantTotalTTCVentes = 0;
foreach (Employe em in lesEmployes)
{
montantTotalTTCVentes = montantTotalTTCVentes + em.MontantVentesHT * (1+TVA.TauxNormal/100);
}
MessageBox.Show("Le montant total des ventes TTC est de " + montantTotalTTCVentes + " euros", "Message d'Information", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
Merci de ton aide
private void btnMontantTotal_Click(object sender, EventArgs e)
{
float montantTotalTTCVentes = 0;
foreach (Employe em in lesEmployes)
{
montantTotalTTCVentes = montantTotalTTCVentes + em.MontantVentesHT * (1+TVA.TauxNormal/100);
}
MessageBox.Show("Le montant total des ventes TTC est de " + montantTotalTTCVentes + " euros", "Message d'Information", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
Merci de ton aide
Oui en faisant la somme des ventes de chaque employé ?
public partial class Form1 : Form { List<Employe> LesEmployes; public Form1() { LesEmployes = new List<Employe>(); InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { // ajoute dans la liste for (int i = 0; i < 10; i++) { Employe emp = new Employe(i); LesEmployes.Add(emp); } // calcul la somme double total = 0; foreach (Employe emp in LesEmployes) { total += emp.val; } textBox1.Text = total.ToString(); } } class Employe { private double x; public double val { get { return x; } } public Employe(double xx) { x = xx; } }
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Ça en a tout l'air, petite info en plus
Vous pouvez utiliser l'opérateur + devant le signe d'affectation = ce qui permet d'additionner directement à la valeur déjà contenu dans la variable
montantTotalTTCVentes = montantTotalTTCVentes + ...
peut se faire ainsi :
montantTotalTTCVentes += ...
Vous pouvez utiliser l'opérateur + devant le signe d'affectation = ce qui permet d'additionner directement à la valeur déjà contenu dans la variable
montantTotalTTCVentes = montantTotalTTCVentes + ...
peut se faire ainsi :
montantTotalTTCVentes += ...
Oui je sais mais je préfère sa
Sinon j'ai une autre question: Dans mon constructeur de ma classe Employe, j'ai une condition qui dit que si le salaire saisis et supérieur au salaireMax c'est le salaire max qui est attribué mais quand je débug je ne vois pas sa. Est ce que je doit rajouter un truc dans mon programme principal?
Voici mon constructeur:
public Employe(string unNom, int unAge, int unSalaireAnnuel, int unMontantVentesHT)
{
nom = unNom;
age = unAge;
salaireAnnuel = unSalaireAnnuel;
montantVentesHT = unMontantVentesHT;
if (unSalaireAnnuel > salaireMax)
{
unSalaireAnnuel = salaireMax;
}
}
static Employe()
{
ageMin = 16;
salaireMax = 150000;
}
Sinon j'ai une autre question: Dans mon constructeur de ma classe Employe, j'ai une condition qui dit que si le salaire saisis et supérieur au salaireMax c'est le salaire max qui est attribué mais quand je débug je ne vois pas sa. Est ce que je doit rajouter un truc dans mon programme principal?
Voici mon constructeur:
public Employe(string unNom, int unAge, int unSalaireAnnuel, int unMontantVentesHT)
{
nom = unNom;
age = unAge;
salaireAnnuel = unSalaireAnnuel;
montantVentesHT = unMontantVentesHT;
if (unSalaireAnnuel > salaireMax)
{
unSalaireAnnuel = salaireMax;
}
}
static Employe()
{
ageMin = 16;
salaireMax = 150000;
}
J'ai trouvé pour mon constructeur
public Employe(string unNom, int unAge, int unSalaireAnnuel, int unMontantVentesHT)
{
nom = unNom;
age = unAge;
salaireAnnuel = unSalaireAnnuel;
montantVentesHT = unMontantVentesHT;
if (salaireAnnuel > salaireMax)
{
salaireAnnuel = salaireMax;
}
}
C'est pas unSalaireAnnuel mais salaireAnnuel
public Employe(string unNom, int unAge, int unSalaireAnnuel, int unMontantVentesHT)
{
nom = unNom;
age = unAge;
salaireAnnuel = unSalaireAnnuel;
montantVentesHT = unMontantVentesHT;
if (salaireAnnuel > salaireMax)
{
salaireAnnuel = salaireMax;
}
}
C'est pas unSalaireAnnuel mais salaireAnnuel