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

Создать класс для работы с одномерными массивами

28.01.2019, 14:29. Показов 4136. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Условие:
Класс описывает одномерный массив состоящий из n целых элементов со значениями в диапазоне от (-5 до 5).
Методы класса должны:
1.Вычислять сумму отрицательных элементов массива.
2.Определять что больше, количество положительных или отрицательных чисел.
Свойство должно получать среднее арифметическое элементов массива.
Вот у меня вопрос как сделать 1 пункт и среднее арифметическое, если количество элементов не постоянное и вводится в самой программе пользователем с клавиатуры? Я просто в тупике...
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
class Program
    {
        static void Main(string[] args)
        {
            int n = int.Parse(Console.ReadLine());
            Random r = new Random();
            int min = -5, max = 5;
            int[] k = new int[n];
        
 
            Console.WriteLine("Массив [" + min + "," + max + "]");
            for (int i = 0; i <= n-1; i++)
            {
                k[i] = r.Next(min, max);
 
                Ar = k.Length / n;
 
 
 
                Console.WriteLine("№[" + i + "]" + k[i]);
 
                
            }
            Console.ReadLine();
        }
        
    }
}
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
28.01.2019, 14:29
Ответы с готовыми решениями:

Описать класс для работы с одномерными массивами чисел
Описать класс для работы с одномерными массивами чисел. Класс должен реализовывать возможность: выполнения для массивов комбинированных...

Создайте класс «matrix» для работы с одномерными целочисленными массивами
Создайте класс «matrix» для работы с одномерными целочисленными массивами. Организовать ввод данных с использованием методов класса....

Описать класс, элементами которого являются статические методы для работы с одномерными и двумерными массивами
Помогите пожалуйста. Нужно написать программу, в ней описать класс, элементами которого являются статические методы для работы с...

4
64 / 45 / 20
Регистрация: 04.12.2018
Сообщений: 334
28.01.2019, 15:43
Я могу сделать
1
64 / 45 / 20
Регистрация: 04.12.2018
Сообщений: 334
28.01.2019, 16:50
Сделано с использованием класса, двух методов и одного свойства
Миниатюры
Создать класс для работы с одномерными массивами  
1
70 / 44 / 28
Регистрация: 14.02.2017
Сообщений: 126
29.01.2019, 09:19
Лучший ответ Сообщение было отмечено Dima83311 как решение

Решение

Добрый день!

Вот как бы так, на троечку потянет
Класс MyArray. Ошибки перехватываем, но не обрабатываем. Чисто элементов массива ограничено 100.
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
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
    public class MyArray
    {
        int n;
        Random rnd = new Random();
        public bool IsValidN(int n)
        {
            if (n > 0 && n < 101)
            {
                return true;
            }
            else
            {
                return false;
            }
        }
        public int N
        {
            get
            {
                return n;
            }
            set
            {
                if (!IsValidN(n))
                    throw new ArgumentException("N вне разрешенных пределов!", "value");
                value = n;
            }
        }
        public int[] Arr { get; set; }
        public MyArray(int n)
        {
            if (!IsValidN(n))
                throw new ArgumentException("N вне разрешенных пределов!", "value");
            this.n = n;
            int[] array = new int[n];
            for (int i = 0; i < n; i++)
            {
                array[i] = rnd.Next(-5, 5);
            }
            Arr = array;
        }
        
        //во всех методах применяем LINQ
        //метод для вычисления суммы всех отрицательных значений
        public void NegativeElSum()
        {
            Console.WriteLine($"Сумма отрицательных элементов: {Arr.Where(x => x < 0).Sum()}");            
        }
        
        //метод ля сравнения количества отрицательных и положительных элементов
        public void PositiveOrNegative()
        {
            var positiveEl = Arr.Where(x => x > 0).Count();
            var negativeEl = Arr.Where(x => x < 0).Count();
            //var zeroEl = Arr.Where(x => x == 0).Count();
            int res = positiveEl - negativeEl;
            if (res > 0)
            {
                Console.WriteLine($"Положительных элементов больше на {Math.Abs(res)}");
            }
            else if (res < 0)
            {
                Console.WriteLine($"Положительных элементов меньше на {Math.Abs(res)}");
            }
            else
            {
                Console.WriteLine($"Положительных и отрицательных элементов поровну");
            }
        }
 
        //метод для расчета средней
        public void Average()
        {
            Console.WriteLine($"Среднее всех элементов: {Arr.Average()}");
        }
    }
Вот вызов всего этого хозяйства в Main
C#
1
2
3
4
5
6
7
8
9
10
            MyArray a = new MyArray(5);
            a.NegativeElSum();
            a.PositiveOrNegative();
            a.Average();
            Console.Write("Элементы массива: ");
            for (int i = 0; i < a.Arr.Length; i++)
            {
                Console.Write($"{a.Arr[i]} ");
            }
            Console.ReadKey();
1
0 / 0 / 0
Регистрация: 21.04.2018
Сообщений: 3
29.01.2019, 13:56  [ТС]
Был бы очень тебе благодарен
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
29.01.2019, 13:56
Помогаю со студенческими работами здесь

Создать класс для работы с массивами
Начал создавать класс для работы с массивами. Он создает массивы, но всегда возвращает одинаковые их значения. Как сделать так чтобы...

Создать класс для работы с одномерными массивами вещественных чисел
#include &lt;iostream.h&gt; // заголовочные файлы стандартных #include &lt;windows.h&gt; // библиотек #define TRUE 1 // макроопределения...

Создать класс, в котором реализовать функции для работы с одномерными массивами
Ребят помогите с задачкой Создать класс, в котором реализовать функции для работы с одномерными массивами: а) получить...

Создать класс для работы с одномерными динамическими массивами значений типа unsigned int
Помогите пожалуйста с задачей. Создать класс для работы с одномерными динамическими массивами значений типа unsigned int. Предусмотреть...

Реализовать класс для работы с одномерными массивами указателей строк
всем привет. помогите пожалуйста не могу написать прогу по заданию. реализовать класс для работы с одномерными массивами указателей...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru