récemment appris sur params et ce qu'il faut l'utiliser dans les méthodes, j'ai créé celui-ci:Comment demander à l'utilisateur un nombre variable de valeurs
public int add(params int[] args)
{
int Total = 0;
for (int i = 0; i < args.Length; i++)
{
Total += args[i];
}
return Total;
}
je peux l'appeler très bien comme
int Add = n.add(2,34,4,5,6);
int Add2 = n.add(1, 2, 3, 4, 5, 6);
Console.WriteLine(Add);
Console.WriteLine(Add2);
Mais que faire si je veux lui transmettre une quantité inconnue d'entrée de l'utilisateur?
Quelque chose comme ceci:
Console.WriteLine(n.add(Convert.ToInt32(Console.ReadLine()),Convert.ToInt32(Console.ReadLine())));
Le problème est que cette façon, je dois écrire Convert.ToInt32(Console.ReadLine());
un tas de fois.
Y a-t-il une meilleure façon de le faire? Comme si l'utilisateur tape 3 nombres, il les additionne, mais si l'utilisateur tape 5 fois le nombre suivant, il le résumera à la place .... etc, etc.
sûr si je comprends ce que vous demandez ici. Votre fonction d'addition prend un tableau de int, donc vous devriez passer très bien dans n'importe quel nombre de paramètres. Si vous voulez minimiser la quantité de convertis, vous devez passer les paramètres à votre fonction add, vous pouvez faire en sorte que votre fonction add accepte un tableau de chaînes et analyser en int à l'intérieur de votre boucle for dans votre fonction add. –
Voulez-vous que l'utilisateur entre quelque chose comme '12 5 24 17' et produise le total? C'est un scénario différent des réponses que vous obtenez actuellement. – LarsTech