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

В класс В добавить поле-массив

02.11.2018, 17:31. Показов 4884. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Помогите пожалуйста!
Нужно в класс В добавить поле-массив. Разработать конструктор для инициализации массива, который при своем вызове передает управление собственному конструктору класса В. Размер массива – поле a, инициализация элементов массива: свойство с2 (см. лабораторную работу №10), умноженное на индекс элемента массива. В программе вывести на экран элементы массива. Для вывода использовать цикл foreach.
Вот код из 10:
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
77
78
79
80
81
82
83
84
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
 
namespace ConsoleApp11
{
 
    class A
    {
        protected float a = 2.4F;
        protected float b = 4.3F;
 
        public float c
        {
            get
            {
                var tmp = a * 30 / b;
                tmp %= 10;
                return tmp;
            }
        }
 
        public A()
        {
 
        }
        public A(float a1, float b1)
        {
            a = a1;
            b = b1;
        }
    }
    class B : A
    {
        public float d;
 
        public float c2
        {
            get
            {
                switch ((int)d)
                {
                    case 0:
                        return (a + b) * 2;
                    default:
                        var tmp = a * b;
                        tmp %= 10;
                        return tmp;
                }
            }
        }
        public B(float a1, float b1) : base(a1, b1)
        {
            a = a1;
            b = b1;
            d = 7.1F;
        }
        public B(float a1, float b1, float d1) : this(a1, b1)
        {
            a = a1;
            b = b1;
            d = d1;
        }
    }
    class Program
    {
        static void Main(string[] args)
        {
            var classA = new A();
            Console.WriteLine(classA.c);
            var classA2 = new A(3.4F, 7.8F);
            Console.WriteLine(classA2.c);
            var classB = new B(3.4F, 7.8F);
            Console.WriteLine(classB.c);
            Console.WriteLine(classB.c2);
            var classB2 = new B(3.4F, 7.8F, 0F);
            Console.WriteLine(classB2.c);
            Console.WriteLine(classB2.c2);
            Console.ReadKey();
        }
    }
}
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
02.11.2018, 17:31
Ответы с готовыми решениями:

Добавить поле в класс TMenuItem
В класс, TMenuItem добавил параметр "SelectIndex"....для того что бы нумеровать динамически пополняемый TPopupMenu. for(int i =0;...

Добавить класс в массив
В общем есть библиотека Limb в которой существует класс Olick, и есть проект WinForms, к ему подключена библиотека Limb, в этом проекте...

Добавить массив объектов в класс
Задан у меня какой-то класс P. Задаю новый класс R, в нем массив объектов класса Р. class R { private P pl;

2
 Аватар для ashsvis
923 / 503 / 202
Регистрация: 08.10.2018
Сообщений: 1,553
Записей в блоге: 11
02.11.2018, 18:00
Лучший ответ Сообщение было отмечено Helena Park как решение

Решение

Helena Park, ага, знакомый примерчик...

Сначала добавим в класс B свойство-массив и новый конструктор:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
class B : A
{
   ... 
   ...
 
    // поле-массив 
    public float[] m;
 
    // конструктор для инициализации поля-массива
    public B(int a1, float b1, float d1) : this(b1, d1)
    {
        a = a1;
        b = b1;
        d = d1;
        m = new float[a1];
        for (int i = 0; i < m.Length; i++)
        {
            m[i] = c2 * i;
        }
    }   
}
В код метода Main добавим использование нового поля и конструктора:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
class Program
{
    static void Main(string[] args)
    {
         ....
         ....
 
         var classB3 = new B(8, 7.8F, 0F);
         foreach (var n in classB3.m)
         {
              Console.Write("{0,8:N}", n);
         }
         Console.WriteLine();
     }
}
0
0 / 0 / 0
Регистрация: 01.11.2018
Сообщений: 17
02.11.2018, 18:10  [ТС]
Дай бог тебе здоровья)))
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
02.11.2018, 18:10
Помогаю со студенческими работами здесь

Создать класс, одно поле которого - двумерный массив
Надо создать класс, в нем массив двухмерный. Чтение размеров и элементов с клавиатуры, вычисление произведения макс. элементов строчек,...

Добавить массив объектов ссылочного типа в класс
Задан у меня какой-то класс P. Задаю новый класс R, в нем массив объектов класса Р. class R { private P pl; int c; ...

Создать базовый класс Array, в котором определите поле-массив подходящего типа
Всем привет!!! Создать базовый класс Array, в котором определите поле-массив подходящего типа и поле для хранения количества элементов у...

Создать JFrame класс с именем PanelPlay, добавить File меню, добавить класс с именем MajorPanel
1) Создать JFrame класс с именем PanelPlay (1) Добавить File меню с одним пунктом Exit. Программа должна завершаться при выборе Exit. ...

Как мне программно добавить поле в таблице и сделать поле ключевым
1. Как мне программно добавить поле в таблице и сделать поле ключевым? 2. Как программно организовать связь данных между двумя таблицами?


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru