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

Создать класс, содержащий массив и количество элементов в нем

02.12.2018, 10:47. Показов 4273. Ответов 5
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Доброго времени суток. Помогите пожалуйста решить задание. Я только начал изучать ООП, для меня это сложно.
Создать класс, содержащий массив и количество элементов в нем. Добавить конструктор, который выделяет память под заданное количество элементов. Добавить методы, позволяющие заполнять массив случайными числами, переставлять в данном массиве элементы в случайном порядке, находить количество различных элементов в массиве, выводить массив на экран.

Добавлено через 51 минуту
Вот мои наброски. Я не могу понять как получить доступ до массива в методе.
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 MyArray
    {
        private int[] element;
        
        public MyArray()
        {
            element = new int[10];
        }
 
        static void Generator()
        {
            Random rand = new Random();
 
            for (int i = 0; i < this.element.Length; i++)
            {
                element[i] = rand.Next(1, 6);
            }
        }
 
    }
 
    class Program
    {       
 
        static void Main(string[] args)
        {
        }
    }
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
02.12.2018, 10:47
Ответы с готовыми решениями:

Создать класс содержащий одномерный целочисленный массив
Объявить класс, содержащий одномерный целочисленный массив размерностью 5, индексатор для работы с...

Создать обобщенный класс, содержащий список элементов (List <T>)
Народ нужна помощь Нужно создать обобщенный класс, содержащий список элементов (List &lt;T&gt;). ...

Создать класс, содержащий сведения о планете солнечной системы: название, масса, диаметр, количество спутников
помогите написать програму Создать класс, содержащий сведения о планете солнечной системы:...

Создать класс колесо, имеющее радиус. Определить конструкторы. Создать класс машин, содержащий класс колесо
Создать класс колесо, имеющее радиус. Определить конструкторы. Создать класс машин, содержащий...

5
Строитель
885 / 552 / 194
Регистрация: 01.04.2014
Сообщений: 610
Записей в блоге: 6
02.12.2018, 10:55 2
Лучший ответ Сообщение было отмечено Student88 как решение

Решение

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
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
 
namespace Project
{
    public class MyArray
    {
        private int[] array = new int[32];
        private Random rnd = new Random();
        public void Generator()
        {
            for ( int n = 0; n < array.Length; n++ )
                array[n] = rnd.Next ( 0, 100 );
        }
 
        public int[] GetArray () => array;
        
        public override string ToString () => string.Join ( ", ", array );
    }
    class Program
    {
        static void Main ( string[] args )
        {
            var myObjArray = new MyArray(); // создаём класс
            myObjArray.Generator (); //генерируем случайные числа
            // Console.WriteLine(string.Join(", ", myObjArray.GetArray()))
            Console.WriteLine ( myObjArray ); //выводим
            Console.ReadKey ();
        }
    }
}
0
814 / 561 / 240
Регистрация: 01.07.2018
Сообщений: 1,818
02.12.2018, 11:03 3
Цитата Сообщение от Student88 Посмотреть сообщение
Добавить конструктор, который выделяет память под заданное количество элементов.
Тогда вот так нужно:
C#
1
2
3
4
public MyArray(int n)
        {
            element = new int[n];
        }
Цитата Сообщение от Student88 Посмотреть сообщение
как получить доступ до массива в методе
А разве у метода нет доступа к массиву ?
0
0 / 0 / 0
Регистрация: 01.10.2018
Сообщений: 12
02.12.2018, 11:04  [ТС] 4
Там по условию нужно сгенерировать, а потом перемешать элементы в массиве. Как реализовать это?
0
814 / 561 / 240
Регистрация: 01.07.2018
Сообщений: 1,818
02.12.2018, 11:06 5
Student88,
C#
1
OrderBy(x => rand.Next())
0
Строитель
885 / 552 / 194
Регистрация: 01.04.2014
Сообщений: 610
Записей в блоге: 6
02.12.2018, 11:19 6
Лучший ответ Сообщение было отмечено Student88 как решение

Решение

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
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
 
namespace Project
{
    public class MyArray
    {
        private int[] array = new int[8];
        private Random rnd = new Random();
        public void Generator()
        {
            for ( int n = 0; n < array.Length; n++ )
                array[n] = rnd.Next ( 0, 100 );
        }
        public void Mix()
        {
            int[] result = new int[array.Length];
            int n = 0;
            do
            {
                var i = rnd.Next ( 0, array.Length  );
                if ( result.Any ( ( e ) => e == i ) )
                    continue;
                else
                {
                    result[n] = i;
                    n++;
                }
            }
            while ( n < ( array.Length - 1 ) );
            for ( int i = 0; i < result.Length; i++ )
                result[i] = GetArray ()[result[i]];
            array = result;
        }
        public int[] GetArray () => array;
        public override string ToString () => string.Join ( ", ", array );
    }
    class Program
    {
        static void Main ( string[] args )
        {
            var myObjArray = new MyArray(); // создаём класс
            myObjArray.Generator (); //генерируем случайные числа
            Console.WriteLine ( myObjArray ); //выводим
            myObjArray.Mix (); //пемешиваем
            Console.WriteLine ( myObjArray ); //выводим
            Console.ReadKey ();
           
        }
    }
}
0
02.12.2018, 11:19
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
02.12.2018, 11:19
Помогаю со студенческими работами здесь

Необходимо создать класс, содержащий по возможности все его виды элементов: поля, конструкторы, свойства
Помогите пожалуйста=) для вот это программы нужно создать класс, содержащий по возможности все его...

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

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

Создать массив, содержащий суммы соответствующих элементов двух исходных массивов
Недавно начал изучать C# и вот наткнулся на проблему... Массив не хочет строится из двух данных!!! ...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru