IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C# Discussion :

Trouver la meilleure valeur tableau


Sujet :

C#

  1. #1
    Candidat au Club
    Homme Profil pro
    Lycéen
    Inscrit en
    Décembre 2012
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Lycéen
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2012
    Messages : 5
    Points : 3
    Points
    3
    Par défaut Trouver la meilleure valeur tableau
    Bonsoir tout le monde,

    Je chercher comme trouvé un valeur maximal dans un tableau voici ce que j'ai déjà :
    int[] meilleurbenefice = new int[4];

    int i, j,;
    max =0;
    for (j = 0; j <= 3; j++)
    {
    for (i = 0; i <= 4; i++)
    {
    meilleurbenefice[j] = meilleurbenefice[j] + (tabbenefice[i] * tabventes[i, j]);

    }
    Le soucis est je cherche la valeur maximal mais la il me ressort toutes mes valeurs.
    J'ai essayé avec un boucle mais je n'y arrive pas.
    Merci d'avance de votre aide

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2002
    Messages
    332
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Juin 2002
    Messages : 332
    Points : 502
    Points
    502
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var max = (from x in meilleurbenefice select x).Max();
    ou

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var max = (meilleurbenefice.Select(x => x)).Max();

  3. #3
    Membre éprouvé Avatar de sisqo60
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Février 2006
    Messages
    754
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 754
    Points : 1 188
    Points
    1 188
    Par défaut
    Bonsoir,

    L'algorithme serait de stocker la première valeur de ton tableau, et de le parcourir à partir du deuxième élément en le comparant avec ta valeur stockée, et si c'est supérieur, tu stockes cette valeur et tu continue la boucle.

    L'algorithme est plus facile à écrire qu'à expliquer...

    Modifies ton code et renvoie ce que tu auras obtenu si tu veux un ou des avis

    Bon courage

  4. #4
    Membre éprouvé Avatar de sisqo60
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Février 2006
    Messages
    754
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 754
    Points : 1 188
    Points
    1 188
    Par défaut
    Citation Envoyé par Babyneedle Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var max = (from x in meilleurbenefice select x).Max();
    ou

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var max = (meilleurbenefice.Select(x => x)).Max();
    Le meilleurbenefice.Max() aurait suffit, mais j'ai plutôt l'impression qu'il doit essayer de faire un algorithme...

  5. #5
    Candidat au Club
    Homme Profil pro
    Lycéen
    Inscrit en
    Décembre 2012
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Lycéen
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2012
    Messages : 5
    Points : 3
    Points
    3
    Par défaut réponse
    Merci pour vos réponses. Je viens de regarder vos commentaire mais j'avais déjà un peu avance
    int i, j,max,maxx;
    max =0;
    maxx= 0;
    for (j = 0; j <= 3; j++)
    {
    for (i = 0; i <= 4; i++)
    {
    meilleurbenefice[j] = meilleurbenefice[j] + (tabbenefice[i] * tabventes[i, j]);
    max = meilleurbenefice[j];
    }
    if (max > maxx)
    maxx = max;

    }
    Console.WriteLine(maxx );
    Le soucis maintenant est que dans meilleurbenefice[j] le [j] de la plus grande valeur je dois l'utilisé pour appelé un autre tableau avec qui le [j] correspond au [i].
    Je sais pas si vous avez tout compris ^^

  6. #6
    Candidat au Club
    Homme Profil pro
    Lycéen
    Inscrit en
    Décembre 2012
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Lycéen
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2012
    Messages : 5
    Points : 3
    Points
    3
    Par défaut réponse
    J'ai avancé, j'ai un seul petit soucis maintenant c'est qui m'affiche le nom des personnes qui sont rentrés dans max alors que je veux juste le dernier

    int[] meilleurbenefice = new int[4];

    int i, j,max;
    max =0;

    for (j = 0; j <= 3; j++)
    {
    for (i = 0; i <= 4; i++)
    {
    meilleurbenefice[j] = meilleurbenefice[j] + (tabbenefice[i] * tabventes[i, j]);

    }
    if (meilleurbenefice[j] > max)
    { max = meilleurbenefice[j];
    Console.WriteLine(tabrepresentant[j]);

    }

    }
    Console.WriteLine(max);
    }

  7. #7
    Candidat au Club
    Homme Profil pro
    Lycéen
    Inscrit en
    Décembre 2012
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Lycéen
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2012
    Messages : 5
    Points : 3
    Points
    3
    Par défaut réponse
    Bon bas je viens de terminer :
    Voici ma petite solution qui est loin d'être la meilleur mais elle fonctionne =)
    {
    int[] meilleurbenefice = new int[4];

    int i, j,max;
    max =0;

    for (j = 0; j <= 3; j++)
    {
    for (i = 0; i <= 4; i++)
    {
    meilleurbenefice[j] = meilleurbenefice[j] + (tabbenefice[i] * tabventes[i, j]);

    }
    if (meilleurbenefice[j] > max)
    { max = meilleurbenefice[j];
    Console.WriteLine(tabrepresentant[j]);

    }
    Console.Clear();
    Console.WriteLine(tabrepresentant[j] +" " + max);
    }
    }
    Merci encore pour vos réponses. Bonne fin soirée

Discussions similaires

  1. Trouver la meilleure valeur
    Par shibo dans le forum Excel
    Réponses: 9
    Dernier message: 07/08/2009, 13h05
  2. Réponses: 15
    Dernier message: 19/07/2007, 13h05
  3. Trouver les differentes valeur d'une table.
    Par zicos dans le forum MATLAB
    Réponses: 1
    Dernier message: 03/05/2007, 14h47
  4. Trouver le meilleur itinéraire entre N points
    Par denolfj dans le forum Prolog
    Réponses: 25
    Dernier message: 03/04/2006, 13h34
  5. Trouver la prochaine valeur d'incrementation
    Par subzero82 dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 15/09/2005, 13h21

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo