CONNEXION
  • RetourJeux
    • Tests
    • Soluces
    • Previews
    • Sorties
    • Hit Parade
    • Les + attendus
    • Tous les Jeux
  • RetourActu
    • Culture Geek
    • Astuces
    • Réalité Virtuelle
    • Rétrogaming
    • Toutes les actus
  • RetourHigh-Tech
    • Actus JVTECH
    • Bons plans
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTECH
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch
    • Xbox Series
    • Overwatch 2
    • FUT 23
    • League of Legends
    • Genshin Impact
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • PS4
  • One
  • Switch
  • Wii U
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Etoile Abonnement RSS

Sujet résolu : [C#] comment utiliser une méthode prenant une liste en paramètre.

DébutPage précedente
1
Page suivantePage suivante
seb16120 seb16120
MP
Niveau 11
21 juin 2017 à 14:15:31

j'essaies d’apprendre à programmer en Autodidacte à l'aide de OpenClasseRoom et Microsoft Academy et la je bloque :/

la méthode :

static int CalculMoyenne(liste<double> listeUse)
{
int somme = 0;

//List<double> listeUse = liste(); (en commentaire)
int taille = listeUse.Count;

for (double i = listeUse[0]; i < taille; i++)
{
somme += i;
}

double moy = somme / taille;

return moy;

}

le Main :

static void Main(string[] args)
{

List<double> liste = new List<double> { 1.0, 5.5, 9.9, 2.8, 9.6 };
int taille = liste.Count;

Console.WriteLine(CalculMoyenne(liste));

Console.ReadKey();
}

TheRealMarco TheRealMarco
MP
Niveau 10
21 juin 2017 à 15:20:56

Salut,

en général il vaut mieux préciser quel est le problème. Par exemple la valeur afficher n'est pas la bonne, mais ici je pense avoir trouver.

Tu as un tableau de double, tu veux donc tous les parcourir et les additionner.
Tu as taille élément dans ton tableau (de 0 à taille). (ici taille = 5).

Dans le for, tu dois dire entre les ';' respectivement, où tu commences ton index (donc 0), jusqu'où il va, et de combien tu l'incrémentes à chaque passage.

Or, ici, tu le commence à listeUse[0], c'est à dire au premier élément de la liste, donc 1.0.

A la place, tu dois avoir :
for (double i = 0; i < taille; i++)

seb16120 seb16120
MP
Niveau 11
21 juin 2017 à 20:17:38

static double CalculMoyenne(List<double> listeUse)
{
double somme = 0;

int taille = listeUse.Count;

for (int i = 0; i < taille; i++)
{
somme += listeUse[i];
}

double moy = somme / taille;

return moy;

}

[[sticker:p/1kki]]
Message édité le 21 juin 2017 à 20:17:52 par seb16120
seb16120 seb16120
MP
Niveau 11
21 juin 2017 à 20:20:55

c'était List et NON liste ...
et
somme += listeUse[i]; et NON somme += i;

et

ce que tu as dit ^^ :

for (double i = 0; i < taille; i++) est Faux :c

c'est : for (int i = 0; i < taille; i++)

[[sticker:p/1kkn]]

Mais merci quand même :D

darkepsylon darkepsylon
MP
Niveau 10
21 juin 2017 à 21:03:00

tu pouvais aussi faire ça si tu ne voulais pas te prendre la tête avec les boucles for :

foreach(double nombre in liste)
            {
                somme += nombre;
            }

dans ton cas niveau performance ça ne changera strictement rien.

TheRealMarco TheRealMarco
MP
Niveau 10
21 juin 2017 à 21:24:52

Le 21 juin 2017 à 20:20:55 seb16120 a écrit :
c'était List et NON liste ...
et
somme += listeUse[i]; et NON somme += i;

Comme dit, précise quel est ton erreur, car j'ai pas testé ton code, j'ai juste lu et j'ai vu ce problème, j'ai pas regardé s'il y avait autre chose. :noel:

for (double i = 0; i < taille; i++) est Faux :c

c'est : for (int i = 0; i < taille; i++)

La seule différence c'est le int à la place du double ? Si c'est ça, alors je n'ai pas faux, c'est un autre type pour gérer des chiffres, les deux sont totalement possible...
Tu peux utiliser des short, int, float, double etc...

seb16120 seb16120
MP
Niveau 11
22 juin 2017 à 06:23:33

Le 21 juin 2017 à 21:03:00 darkepsylon a écrit :
tu pouvais aussi faire ça si tu ne voulais pas te prendre la tête avec les boucles for :

foreach(double nombre in liste)
            {
                somme += nombre;
            }

dans ton cas niveau performance ça ne changera strictement rien.

Merci de l'astuce ^^

et comment vous faites pour que le code soit en blanc clair ? (constrasté par rapport au reste du texte sur JV,com ? )

Je reviendrais poser mes questions sur ce topic
ou
une question = un topic / un topic = une question ?

darkepsylon darkepsylon
MP
Niveau 10
22 juin 2017 à 09:09:07

y'as des balises code , entre le bouton citations et celui de spoil quand tu créer ton message.

Et il vaut mieux avoir une question/sujet par topic je pense, quand quelqu'un aura le même problème que toi ça sera plus simple pour lui avoir la réponse et surtout ça permet de mieux s'y retrouver ensuite.

Message édité le 22 juin 2017 à 09:10:48 par darkepsylon
DébutPage précedente
1
Page suivantePage suivante
Répondre
Prévisu
?
Victime de harcèlement en ligne : comment réagir ?
Infos 0 connecté(s)

Gestion du forum

Modérateurs : godrik, LGV
Contacter les modérateurs - Règles du forum

Sujets à ne pas manquer

La vidéo du moment