Les tableaux 2D (exercice)
kingston2
Messages postés
145
Statut
Membre
-
pijaku Messages postés 13513 Date d'inscription Statut Modérateur Dernière intervention -
pijaku Messages postés 13513 Date d'inscription Statut Modérateur Dernière intervention -
Bonjour, J'ai un exercice à finir , mais je suis bloqué.... Voici l'exercice en question:
Une entreprise commerciale décide de récompenser ses clients potentiels à la fin de chaque année. À cet effet, les gestionnaires ont créé un système de ristourne selon le montant d'achat mensuel de chaque client. Ce dernier se calcule selon le tableau suivant :
Montant d'achat mensuel Le taux de la ristourne
Montant <= 500 0 %
500<Montant <= 1000 5 %
Montant > 1000 10 %
Écrivez le programme Visual Basic qui calcule et affiche le montant total du ristourne pour chacun des 10 clients de l'établissement.
Voici mon travail jusqu'à maintenant:
Pouvez-vous m'aider à finir ce problème ? Merci
Une entreprise commerciale décide de récompenser ses clients potentiels à la fin de chaque année. À cet effet, les gestionnaires ont créé un système de ristourne selon le montant d'achat mensuel de chaque client. Ce dernier se calcule selon le tableau suivant :
Montant d'achat mensuel Le taux de la ristourne
Montant <= 500 0 %
500<Montant <= 1000 5 %
Montant > 1000 10 %
Écrivez le programme Visual Basic qui calcule et affiche le montant total du ristourne pour chacun des 10 clients de l'établissement.
Voici mon travail jusqu'à maintenant:
Module Module1
Sub Main()
Dim tabvaleurs(10, 3)
Dim intmontant As Integer
Dim inttaux As Integer
'remplissage du tableau
For ligne = 0 To 10
For colonne = 0 To 3
tabvaleurs(ligne, colonne) = InputBox("Entrez votre montant d'achat:")
Next
Next
'affichage du tableau
For ligne = 0 To 10
For colonne = 0 To 3
Console.Write(tabvaleurs(ligne, colonne) & vbTab)
Next
'attribution des ristournes
For Each valeur In tabvaleurs
If valeur >= 1000 Then
inttaux = 0.1
ElseIf valeur >= 500 Then
inttaux = 0.05
Else
inttaux = 0
End If
Console.WriteLine("le montant de ristourne est de:" & intmontant * inttaux)
Next
Next
End Sub
End Module
Pouvez-vous m'aider à finir ce problème ? Merci
A voir également:
- Les tableaux 2D (exercice)
- Logiciel plan 2d gratuit - Télécharger - Architecture & Déco
- Code ascii 2d - Guide
- Les tableaux word - Guide
- Tableaux croisés dynamiques - Guide
- Fusionner deux tableaux excel - Guide
3 réponses
Salut,
A première vue, je vois plusieurs "erreurs".
1- On parle de chaque année, avec une remise mensuelle. Il te faut donc les montants de chacun des 10 clients pour chaque mois...
Donc, remplace :
par :
2- Tu dois trouver le montant total de la remise. Il te faut donc additionner les remises mensuelles. Dans ton code, je ne vois pas du tout d'addition...
3- Je t'ai déjà parlé de Randomize qui te permet de trouver des nombres aléatoirement plutôt que de les saisir. Utilise le car sinon tu va avoir 120 saisies à réaliser en début de code...
Exemple : pour obtenir un nombre compris entre 1 et 1500 :
Fais déjà cela, et reviens avec ton code...
A première vue, je vois plusieurs "erreurs".
1- On parle de chaque année, avec une remise mensuelle. Il te faut donc les montants de chacun des 10 clients pour chaque mois...
Donc, remplace :
Dim tabvaleurs(10, 3)
par :
Dim tabvaleurs(10, 12)
2- Tu dois trouver le montant total de la remise. Il te faut donc additionner les remises mensuelles. Dans ton code, je ne vois pas du tout d'addition...
3- Je t'ai déjà parlé de Randomize qui te permet de trouver des nombres aléatoirement plutôt que de les saisir. Utilise le car sinon tu va avoir 120 saisies à réaliser en début de code...
Exemple : pour obtenir un nombre compris entre 1 et 1500 :
Dim maval As Integer Randomize maval = Int(Rnd * 1500) + 1
Fais déjà cela, et reviens avec ton code...
Voici ce que j'ai :
Module Module1
Sub Main()
Dim tabvaleurs(10, 12)
Dim intmontant As Integer
Dim inttaux As Integer
Dim intmontanttotal As Integer
Dim maval As Integer
'remplissage du tableau
For ligne = 0 To 10
For colonne = 0 To 12
Randomize()
maval = Int(Rnd() * 15000) + 1
Next
Next
'affichage du tableau
For ligne = 0 To 10
For colonne = 0 To 3
Console.Write(tabvaleurs(ligne, colonne) & vbTab)
Next
'attribution des ristournes
For Each valeur In tabvaleurs
If valeur >= 1000 Then
inttaux = 0.1
ElseIf valeur >= 500 Then
inttaux = 0.05
Else
inttaux = 0
End If
Console.WriteLine("le montant de ristourne est de:" & intmontant * inttaux)
Next
'montant totale de la remise
intmontanttotal = intmontant + (intmontant * inttaux)
Console.WriteLine("le montant totale de la remise est de:" & intmontanttotal)
Next
End Sub
End Module
Bonjour,
Je ne suis pas sur que tu fasses tous les efforts nécessaires à la réalisation de ce code. J'ai le sentiment que tu attends la réponse...
J'en veut pour preuve que tu n'as même pas fait l'effort de remplacer tous les 3 par des 12 :
De plus, dans le remplissage du tableau,... tu ne remplis même pas ta variable tableau :
Pour ma part, si tu ne fais pas plus d'effort, j'arrête le suivi de tes discussions;..
Je ne suis pas sur que tu fasses tous les efforts nécessaires à la réalisation de ce code. J'ai le sentiment que tu attends la réponse...
J'en veut pour preuve que tu n'as même pas fait l'effort de remplacer tous les 3 par des 12 :
'affichage du tableau
For ligne = 0 To 10
For colonne = 0 To 3
De plus, dans le remplissage du tableau,... tu ne remplis même pas ta variable tableau :
'remplissage du tableau
For ligne = 0 To 10
For colonne = 0 To 12
Randomize()
maval = Int(Rnd() * 15000) + 1
Next
Next
Pour ma part, si tu ne fais pas plus d'effort, j'arrête le suivi de tes discussions;..