Occurrences maximum et minimum

Résolu
H0rus
Messages postés
2
Date d'inscription
vendredi 21 juillet 2017
Statut
Membre
Dernière intervention
22 juillet 2017
- 21 juil. 2017 à 12:08
Whismeril
Messages postés
17336
Date d'inscription
mardi 11 mars 2003
Statut
Modérateur
Dernière intervention
20 mai 2022
- 22 juil. 2017 à 01:14
Bonjour à tous et toutes,
Alors voila, je commence à apprendre à coder en C# et je dois écrire un programme qui demande à l'utilisateur combien de valeurs il veux saisir et stocker ces valeurs dans un tableau puis de retourner les valeurs maximales et minimales du tableau (jusque la pas de soucis), là ou je bloque c'est qu'il m'est également demandé d'afficher le nombre d'occurrences des valeurs maxi et mini, j'ai tenté plusieurs choses mais je n'arrive pas à trouver la solution et là le mal de crane me guette mdr, concrètement voila ou j'en suis du coup :
        static void Main(string[] args)
{
int NbValeurs;

Console.WriteLine("Combiens de valeurs (de type entiers) souhaitez vous saisir?"); //Saisie du nombre de valeurs souhaitées
NbValeurs = Convert.ToInt16(Console.ReadLine());

int[] tab = new int[NbValeurs]; //Déclaration du tableau

Console.WriteLine("Saisissez votre suite de valeurs:"); //Saisie des valeurs dans le tableau via la boucle "for"
for (int i = 0; i < NbValeurs; i++)
{
tab[i] = Convert.ToInt16(Console.ReadLine());
}
Console.WriteLine("Le minimum est {0}({1} occurrences), le maximum est {2}({3} occurrences) ", Minimum(tab), Maximum(tab)); //(RHAAA!)
Console.ReadKey();
}

static int Minimum(int[] tab) //Création de la méthode Minimum
{
int minimum = tab[0];
for (int i = 1; i < tab.Length; i++)
if (tab[i] < minimum) minimum = tab[i];
return minimum;
}
static int Maximum(int[] tab) //Création de la méthode Maximum
{
int maximum = tab[0];
for (int i = 1; i < tab.Length; i++)
if (tab[i] > maximum) maximum = tab[i];
return maximum;
}
}
}

Si quelqu'un pouvait me filer un petit tuyau avec deux ou trois explication sur la façon de procéder j'en serait reconnaissant :)

3 réponses

Whismeril
Messages postés
17336
Date d'inscription
mardi 11 mars 2003
Statut
Modérateur
Dernière intervention
20 mai 2022
596
21 juil. 2017 à 17:56
bonjour

            int minimum = tab[0];
            int occurence = 1;//là y'en a déjà 1

            for (int i = 1; i < tab.Length; i++)
            {
                if (tab[i] < minimum)
                {
                   minimum = tab[i];
                   occurence = 1;//on remet à 1, puisqu'on vient de changer
                }
                else if (tab[i] == minimum)
                {
                   occurence++;//on ajoute une occurence
                }
            }


1
H0rus
Messages postés
2
Date d'inscription
vendredi 21 juillet 2017
Statut
Membre
Dernière intervention
22 juillet 2017

22 juil. 2017 à 00:41
Aaah c'est parfait: clair, concis et efficace! Merci pour tout! :)
0
Whismeril
Messages postés
17336
Date d'inscription
mardi 11 mars 2003
Statut
Modérateur
Dernière intervention
20 mai 2022
596
22 juil. 2017 à 01:14
De rien, pense à mettre le sujet résolu si ça te convient
0