Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/3: Рейтинг темы: голосов - 3, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 12.05.2018
Сообщений: 6
1

Как найти среднее арифметическое положительных элементов и подсчитать количество повторяющихся элементов массива

13.05.2018, 15:30. Просмотров 596. Ответов 4
Метки нет (Все метки)

Добрый день! Вот задача:
Дан одномерный массив.
1) найти среднее арифметическое положительных элементов.
2) подсчитать количество повторяющихся элементов массива
Как найти среднее арифметическое положительных элементов и подсчитать количество повторяющихся элементов массива?
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
static void Main(string[] args)
        {
            Console.WriteLine("Введите размер массива: ");
            int size = int.Parse(Console.ReadLine());
            int[] A = new int[size];
            Console.WriteLine("Введите числа в количестве: " + size);
            for (int i = 0; i < size; i++)
            {
                A[i] = int.Parse(Console.ReadLine());
            }
            int sum = 0;
            int count = 0;
            for (int i = 0; i < A.Length; i++)
            {
                if (A[i] > 0)
                {
                    sum += A[i];
                    count++;
                    }
                Console.WriteLine("Среднее арифметическое положительных элементов:  {0}", sum / A.Length );
}
            for(int i=0;i<A.Length;i++)
  for(int j=0;j<A.Length;j++)
    {
     if( A[i] > A[j] )
      {
      x = arr[i];
      A[i] = A[j];
      A[j] = x;
    }
  if(A[i] == A[j])
  Sum += A[i]
}
            Console.WriteLine("Количество повторяющихся элементов массива:{0}");
            Console.ReadKey();
                }
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
13.05.2018, 15:30
Ответы с готовыми решениями:

Подсчитать количество элементов, превышающих среднее арифметическое элементов массива
консольное приложение.Двумерный массив, размером N*N заполняется случайным образом.Значение N...

Найти количество элементов больше чем среднее арифметическое всех элементов массива
6. Написать программу для обработки массива с К действительных чисел. Найти количество элементов...

Найти среднее арифметическое положительных элементов массива
Даны два произвольных массива R, L размера k, n соответственно. Найти среднее арифметическое...

Найти среднее арифметическое положительных элементов массива
Даны два произвольных массива R, L размера k, n соответственно. Найти среднее арифметическое...

4
186 / 164 / 100
Регистрация: 14.03.2018
Сообщений: 426
13.05.2018, 15:39 2
aleksbush, недавно на что-то подобное уже отвечал: Массив: Найти среднее арифметическое положительных элементов массива
0
0 / 0 / 0
Регистрация: 12.05.2018
Сообщений: 6
14.05.2018, 16:14  [ТС] 3
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
        static void Main(string[] args)
        {
            int[] mas = new int[10];
            Random r = new Random();
            int summ = 0;
            Console.WriteLine("Заполнение массива случайными числами:");
            for (int i = 0; i < 10; i++)
            {
                mas[i] = r.Next(10);
                Console.Write(mas[i] + " ");
            }
            Console.WriteLine("\n\n Среднее арифметическое положительных элементов:");
            for (int i = 0; i < mas.Length; i++)
                summ += mas[i];
            int sr = summ / mas.Length;
            Console.WriteLine(sr);
            Console.ReadLine();
            {
                Console.WriteLine("Количество повторяющихся элементов массива:");
                int count = mas.Count(x => x == sr);
                if (count > 1)
                    Console.WriteLine(sr + " - " + count + " раз");
                Console.ReadKey();
            }
Почему код работает через раз? Где ошибка? Один раз выводит ответ, другой раз -нет.
http://pixs.ru/showimage/20180... 205191.png
http://pixs.ru/showimage/20180... 205283.png
0
Модератор
880 / 789 / 326
Регистрация: 03.02.2015
Сообщений: 5,104
Записей в блоге: 9
14.05.2018, 16:23 4
aleksbush,
Вот так попробуйте, если LINQ можно использовать:

C#
1
2
var avr = mas.Average();
var rit = mas.GroupBy(x => x).Where(g => g.Count() > 1).Select(g => g.Key);
0
168 / 89 / 71
Регистрация: 10.05.2014
Сообщений: 432
14.05.2018, 18:10 5
aleksbush,
C#
1
2
3
4
5
6
7
8
double[] mas = { -5, 2, 2, 1, -15, -21, -75.4, 80.6, -22, 7.5, -31.7, 43.4, 12 };
 
double avr = mas.Average();
int rit = mas.GroupBy(x => x).Where(g => g.Count() > 1).Select(g => g.Key).Count();
 
Console.WriteLine(string.Join(" ",mas.Select(x=>x.ToString())));
Console.WriteLine($"{avr}   -   {rit}");
Console.ReadLine();
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
14.05.2018, 18:10

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Найти среднее арифметическое положительных и отрицательных элементов массива S(10)
Найти среднее арифметическое положительных и отрицательных элементов массива S(10).Исходный массив...

Массив: Найти среднее арифметическое положительных элементов массива
Дан одномерный массив. 1) найти среднее арифметическое положительных элементов. 2) подсчитать...

В массиве из 16 элементов найти среднее арифметическое положительных элементов
1. В массиве из 16 элементов найти среднее арифметическое положительных элементов. Надо решить на...

Найти среднее арифметическое (среднее геометрическое) положительных элементов матрицы
Ребята, помогите пожалуйста сделать лабу, буду очень благодарен, а то сижу на паре, не знаю что и...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.