Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.54/13: Рейтинг темы: голосов - 13, средняя оценка - 4.54
1 / 1 / 0
Регистрация: 07.07.2019
Сообщений: 81

Массив: Сформировать вектор D, каждый элемент которого равен среднему арифметическому значений элементов строк матрицы

18.09.2019, 05:47. Показов 2409. Ответов 10
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Необходимо выполнить заданную обработку числового двумерного массива, имеющего произвольное количество строк(N) и столбцов(M). N <= 7, M <= 5. Элементы массива должны вводиться с клавиатуры.
Сформировать вектор D, каждый элемент которого равен среднему арифметическому значений элементов строк матрицы
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
18.09.2019, 05:47
Ответы с готовыми решениями:

Найти вектор B(l), каждый элемент которого равен среднему арифметическому элементов матрицы
Задана матрица A(k,l). Найти вектор B(l), каждый элемент которого равен среднему арифметическому элементов соответствующего столбца матрицы...

Найти вектор B(l), каждый элемент которого равен среднему арифметическому элементов соответствующего столбца матрицы А
Задана матрица A(k,l). Найти вектор B(l), каждый элемент которого равен среднему арифметическому элементов соответствующего столбца матрицы...

Получить файл, каждый элемент которого равен среднему арифметическому соответствующих элементов файлов
Помогите решить. Даны два файла с числами. Получить новый файл, каждый элемент которого равен среднему арифметическому соответствующих...

10
 Аватар для jester
352 / 247 / 76
Регистрация: 18.03.2016
Сообщений: 979
18.09.2019, 12:53
Лучший ответ Сообщение было отмечено KristinaBest как решение

Решение

KristinaBest,
C#
1
2
using System;
using System.Linq;
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
public static class Extension
    {
        static Random r = new Random();
        
        public static void FillArray(this double[,] numbers) 
        {
            for(int i = 0; i< numbers.GetLength(0); i++)
                for(int j = 0; j< numbers.GetLength(1); j++)
                    numbers[i, j] = r.Next(-150, 150)*r.NextDouble();
        }
    }
    
    public class Program
    {
        public static void Main()
        {
            double[,] numbers = new double[5,5];
            
            numbers.FillArray();
            
            var result = Enumerable.Range(0, numbers.GetLength(0))
                        .Select(i => 
                                Enumerable.Range(0, numbers.GetLength(1))
                                .Select(x => numbers[i, x])
                                .Average()
                               )
                        .ToArray();
 
            Array.ForEach(result, Console.WriteLine);
        }             
    }
1
1 / 1 / 0
Регистрация: 07.07.2019
Сообщений: 81
19.09.2019, 13:59  [ТС]
Извините, не могли бы вы пояснить, какая функция за что отвечает и немного расписать что за что отвечает, буду признательна

Добавлено через 16 минут
jester, мне нужно чтобы элементы массива вводились вручную, извините, не могли бы вы пояснить, какая функция за что отвечает и немного расписать что за что отвечает, буду признательна
0
 Аватар для jester
352 / 247 / 76
Регистрация: 18.03.2016
Сообщений: 979
19.09.2019, 15:02
KristinaBest,
ввод
C#
1
2
3
4
double[,] numbers = new double[5,5];
for(int i = 0; i< numbers.GetLength(0); i++)
                for(int j = 0; j< numbers.GetLength(1); j++)
                    numbers[i, j] = int.Parse(Console.ReadLine());
C#
1
2
3
4
5
6
7
8
9
var result = Enumerable.Range(0, numbers.GetLength(0)) // перебор строк
                        .Select(i => 
                                Enumerable.Range(0, numbers.GetLength(1)) // перебор ячеек строки
                                .Select(x => numbers[i, x]) //обращение к их значениям
                                .Average() //функция нахождения среднего значения (в данном случае среди всех значений к которым мы обращались через Select
                               )
                        .ToArray(); // сохранить как массив
 
            Array.ForEach(result, Console.WriteLine); //вывод массива в консоль
1
1 / 1 / 0
Регистрация: 07.07.2019
Сообщений: 81
19.09.2019, 17:40  [ТС]
jester, что не так, подскажите, пожалуйста.
Миниатюры
Массив: Сформировать вектор D, каждый элемент которого равен среднему арифметическому значений элементов строк матрицы  
0
1 / 1 / 0
Регистрация: 07.07.2019
Сообщений: 81
19.09.2019, 17:46  [ТС]
jester, и здесь, пожалуйста
Миниатюры
Массив: Сформировать вектор D, каждый элемент которого равен среднему арифметическому значений элементов строк матрицы  
0
 Аватар для jester
352 / 247 / 76
Регистрация: 18.03.2016
Сообщений: 979
19.09.2019, 17:56
KristinaBest,
первое
когда метод создавал забыл убрать строку в FillArray
C#
1
double[,] numbers = new double[5,5];
второе
Строка некорректного формата
Нужно дробные числа через точку писать
0
1 / 1 / 0
Регистрация: 07.07.2019
Сообщений: 81
19.09.2019, 18:22  [ТС]
jester, при любом вводе значение программа выдаёт эту же ошибку, как во втором скрине, не понимаю, можете скинуть как выглядит ваш тест программы?
0
 Аватар для jester
352 / 247 / 76
Регистрация: 18.03.2016
Сообщений: 979
19.09.2019, 18:38
KristinaBest, эх(
поменять
C#
1
numbers[i, j] = int.Parse(Console.ReadLine());
на
C#
1
numbers[i, j] = double.Parse(Console.ReadLine());
0
1 / 1 / 0
Регистрация: 07.07.2019
Сообщений: 81
19.09.2019, 18:52  [ТС]
jester, я не так ввожу?
Миниатюры
Массив: Сформировать вектор D, каждый элемент которого равен среднему арифметическому значений элементов строк матрицы  
0
 Аватар для jester
352 / 247 / 76
Регистрация: 18.03.2016
Сообщений: 979
19.09.2019, 21:17
KristinaBest, нет, нужно писать каждый элемент в строке.

Если хотите матрицей вводить тогда так:

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
37
38
39
40
41
42
43
44
public static class Extension
    {
        public static void FillArray(this double[,] numbers)
        {
            int rowsCount = numbers.GetLength(0),
                columnsCount = numbers.GetLength(1);
 
            Console.WriteLine("Введи матрицу размером {0}X{1} значений", rowsCount, columnsCount);
 
            for (int i = 0; i < rowsCount; i++)
            {
                string[] input = Console.ReadLine() // Чтение с консоли
                                        .Replace(',', '.') // Замена запятых на точки, чтобы можно было применять оба разделителя
                                        .Split(new char[] { ' ' }, StringSplitOptions.RemoveEmptyEntries); // Разбивка на подстроки по пробелам
                Array.ForEach(input, Console.WriteLine);
                for (int j = 0; j < columnsCount && j < input.Length; j++)
                {
                    numbers[i, j] = double.Parse(input[j], CultureInfo.InvariantCulture);
                }
            }
        }
    }
    public class Program
    {
        public static void Main(string[] args)
        {
            int rowsCount = 5,
                columnsCount = 7;
 
            double[,] test = new double[rowsCount, columnsCount];
 
            test.FillArray();
 
            Console.WriteLine("Введённый массив:");
            for (int i = 0; i < rowsCount; i++)
            {
                for (int j = 0; j < columnsCount; j++)
                {
                    Console.Write(test[i, j] + " ");
                }
                Console.WriteLine();
            }
        }
    }
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
19.09.2019, 21:17
Помогаю со студенческими работами здесь

Сформировать вектор, каждый элемент которого равен произведению элементов соответствуюшей строки матрицы
Кто решит задачу тому 100 р на счет... Дан массив А (n,n), сформировать В(n), каждый элемент которого равен произведению элементов...

Сформировать новый массив по правилу: элемент равен среднему арифметическому элементов массива А с номерами от К до N
Дан массив А размера N. Сформировать новый массив В того же размера по следующему правилу: элемент Вк равен среднему арифметическому...

Сформировать вектор, каждый элемент которого равен среднему арифметическому значений элементов строк матрицы
Сформировать вектор D=(d1, d2, d3,...,dk), каждый элемент которого равен среднему арифметическому значений элементов строк матрицы C...

Построить вектор В, каждый элемент которого равен среднему арифметическому положительных элементов матрицы
Здравствуйте, помогите пожалуйста с задачей. Дана матрица А(7,7). Построить вектор В , каждый элемент которого равен среднему...

Найти вектор B(l), каждый элемент которого равен среднему арифметическому элементов соответствующего столбца матрицы A
Задана матрица A(k,l). Найти вектор B(l), каждый элемент которого равен среднему арифметическому элементов соответствующего столбца матрицы...


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

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2). Унарный минус обозначается как ! */ #include <iostream> #include <stack> #include <cctype>. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru