Вычисление среднего арифметического посредством переменного числа параметров в методе - C#

Узнай цену своей работы

Формулировка задачи:

Доброго времени суток, дамы и господа. Помогите, пожалуйста, понять, что я делаю не так. Пытаюсь запрограммировать вычисление среднего арифметического посредством переменного числа параметров в методе. Проверял - суммирование идет, а деление на количество переменных происходит странно как-то. Объясните, пожалуйста, что делаю не так и как исправить. Обязательно с переменным числом параметров мне нужно.
using System;
class Par
{
    public int sum = 0;
    public int Sredn(params int[] list)
    {
        foreach (int x in list)
            sum = (sum+x)/list.Length;
        return sum;
    }
}
 
class Prog
{
    static void Main()
    {
        int sr;
        Par go = new Par();
        Console.Write("a = ");
        int a = int.Parse(Console.ReadLine());
        Console.Write("b = ");
        int b = int.Parse(Console.ReadLine());
        Console.Write("c = ");
        int c = int.Parse(Console.ReadLine());
        sr = go.Sredn(a, b, c);
        Console.WriteLine("Среднее арифметическое равно " + sr);
    }
}
И еще хотелось бы попросить местных мудрецов показать, как можно сделать вручную так, чтобы программа сама определяла, сколько раз предлагать пользователю ввести числа. Т.е. задавать размерность количества чисел, из которых выводится среднее арифметическое, а не прописывать заданное в самом коде количество раз нужные числа. Допустим программа спрашивает размерность. Мы вводим размерность 8 и после этого программа начинает 8 раз спрашивать, какие числа нужно посчитать. А то прописывать статичное количество запросов в коде как то немного глючно на мой взгляд. Заранее благодарен.

Решение задачи: «Вычисление среднего арифметического посредством переменного числа параметров в методе»

textual
Листинг программы
using System;
class Par
{
    public double Sredn(params int[] list)
    {
        double sum = 0;
        foreach (int x in list)
            sum += x;
        return sum/list.Length;
    }
}

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

7   голосов , оценка 3.857 из 5
Похожие ответы