Bonjour !
Un ami m'a donné un exercice à faire : une simulation de ticket client à résoudre.
Voici le ticket à résoudre :
Voici le code qui m'a été envoyé sur lequel j'ai déjà travaillé :Ticket 15741 :
Hello !
On aurait besoin pour l'application "Cason" de calculer les points statuts des clients pour les X derniers mois (X = un param à la main de l'admin).
Pour calculer les points statuts on se base sur les X derniers mois en base.
Tu peux me faire ça pour quand ?
Bises.
/
une classe TransactionClients
Le main dans lequel je dois répondre à la problématique :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 using System; using System.Collections.Generic; using System.Text; namespace Gestion_Statut_Casino { class TransactionClient { public int points; public string date; } }
Comme vous pouvez le voir, j'ai commencé par créer un tableau "pointsClients" pour accéder aux points et j'ai créer une boucle pour tenter d'additionner les points. Je sais que ça ne répond pas complètement au ticket, mais je voulais déjà commencer par additionner l'ensemble des points, mais rien que ça, je n'y arrive pas (ce que j'ai codé m'affiche "0" à la compilation), donc bon c'est assez frustrant...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47 using System; namespace Gestion_Statut_Casino { class Program { static void Main(string[] args) { TransactionClient t1 = new TransactionClient(); t1.points = 10; t1.date = "2020-02-19"; TransactionClient t2 = new TransactionClient(); t2.points = 30; t2.date = "2020-02-14"; TransactionClient t3 = new TransactionClient(); t3.points = 7; t3.date = "2020-01-26"; TransactionClient t4 = new TransactionClient(); t4.points = 18; t4.date = "2019-10-01"; TransactionClient t5 = new TransactionClient(); t5.points = 11; t5.date = "2019-09-19"; TransactionClient[] bdd = { t1, t2, t3, t4, t5 }; int[] pointsClients = new int[] { t1.points, t2.points, t3.points, t4.points, t5.points }; Additionner_Points(pointsClients, pointsClients); static void Additionner_Points(int[] min, int[] max) { int resultat = 0; for (int i = min[0]; i < max.Length; i++) { resultat += i; } Console.WriteLine($"La somme des points est {resultat}"); } } } }
Vous aurez bien compris qu'il s'agit d'un exercice, donc peu nous importe la pertinence de la classe TransactionClient ou autre, le but étant de travailler sur une mise en situation réelle et répondre à un ticket client.
J'ai pas mal réfléchi, mais je bloque. J'avoue ne pas voir comment mettre en lien concrètement les dates, les points clients, et permettre une saisie afin que "l'admin" puisse choisir le nombre de mois qui l’intéresse pour le calcul des points.
En gros, si le client saisie 4, pour 4 mois, mon programme doit être capable de remonter les 4 derniers mois et d'additionner les points qui ont été cumulés sur cette période ! J'arrive à le concevoir du point de vue théorique mais une fois devant le clavier je bloque.
Si vous pouviez m'aider, sans me donner la solution toute mâchée, je vous en serais très reconnaissant.
Merci !
Partager