comment puis-je retourner la somme , la moyenne d'un tableau int
J'ai besoin de définir deux méthodes pour le retour de la sum
et average
d'un tableau int
la méthode la définition est la suivante:-
public int Sum(params int[] customerssalary)
{
//I tried the following but it fails return customerssalary.sum();
}
Autre question, comment puis-je retourner la moyenne de ces valeurs int ?.
Vous assurer que
désolé je voulais dire customerssalary.sum(); n'a pas de travail
Cher, je suppose que vous utilisez .net 2.0 .. veuillez Donc vérifier cette première
return ints.sum();
ne fonctionne pas? Pourquoi sur terre serait-ce pas le travail?!?!?désolé je voulais dire customerssalary.sum(); n'a pas de travail
Cher, je suppose que vous utilisez .net 2.0 .. veuillez Donc vérifier cette première
OriginalL'auteur test test | 2012-10-18
Vous devez vous connecter pour publier un commentaire.
C'est la façon dont vous devriez le faire, et je dis cela parce que vous êtes clairement nouvelle de C# et devrait probablement essayer de comprendre comment certains trucs de base fonctionne!
avec cette
Sum
fonction, vous pouvez l'utiliser pour calculer la moyenne de trop...la raison de l'utilisation d'un
decimal
type dans la seconde fonction est parce que la division peut facilement revenir à un non-entierD'autres ont fourni une Linq alternative qui est ce que j'utilise moi-même de toute façon, mais avec Linq il n'y a aucun point en ayant vos propres fonctions de toute façon. J'ai fait l'hypothèse que vous avez été demandé de mettre en œuvre des fonctions telles qu'une tâche de démontrer votre connaissance de C#, mais je peux me tromper.
decimal result = sum / customerssalary.Length
permettra de calculer la division d'un entier, puis le stocker dans un nombre décimal. Vous avez besoin de jeter un des deux arguments comme un nombre décimal/float/whatever avant d'effectuer la division.Hein?... je ne sais pas ce que tu veux dire 😛
si vous avez
int
sa
etb
,a/b
effectue une division entière (par exemple,7/2
donne3
). Il n'a pas d'importance si vous les conservez dans unint
ou undecimal
, il remplit toujours de division entière.oui mon commentaire était une blague, peut-être vous pouvez le voir, j'avais déjà changé après votre suggestion
Le sarcasme de détection évidemment hors ligne ce matin :-/ désolé!
OriginalL'auteur musefan
OriginalL'auteur L.B
À l'aide de
ints.sum()
a deux problèmes:customerssalary
, pasints
Sum()
, passum()
.En outre, vous aurez besoin de l'aide de la directive de
Une fois que vous avez la somme, vous pouvez simplement diviser par la longueur du tableau pour obtenir la moyenne, vous n'avez pas besoin d'utiliser
Average()
qui permettra de parcourir à nouveau le tableau.ou comme un
double
:Ah, au fait, ça dépend de l'entrée, je vais laisser ce commentaire ici pour quelqu'un d'autre se poser les mêmes.
+1 pour la mention de
using System.Linq;
parce que si elle est manquante, Visual Studio n'ajoute pas automatiquement.OriginalL'auteur Jon Skeet
Si les réponses ci-dessus sont toutes différentes saveurs de la corriger, je voudrais offrir la solution suivante, qui comprend un null check:
OriginalL'auteur pim
Vous avez essayé la mauvaise variable,
ints
n'est pas le bon nom de l'argument.Mais pensez-vous que ces méthodes sont vraiment nécessaires?
OriginalL'auteur Rango
Si vous utilisez visual studio 2005 puis
Cette méthode peut être divisé en deux la droite..j'étais juste fournir la logique.
division entière peut être pas une bonne idée.
Ya.. Merci pour la mise à jour.
OriginalL'auteur sachin
je me réfère donc à de nombreux résultats et modifié mon code son travail
OriginalL'auteur Hackbal Teamz