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

Конструктор для инициализации массива С#

21.09.2015, 19:02. Показов 9035. Ответов 3
Метки нет (Все метки)

Написал программу , старался по возможности в соответствии с условием задания , она работает. Но не знаю насколько точно она соответствует заданию . Мне не понятно 2 предложение задания : Разработать конструктор для инициализации массива, который при своем вызове передает управление собственному конструктору класса В.

Само задание : В класс В добавить поле-массив. Разработать конструктор для инициализации массива, который при своем вызове передает управление собственному конструктору класса В. Размер массива – 5 элементов. Инициализация элементов массива: число 3, умноженное на индекс элемента массива. В программе вывести на экран элементы массива. Для вывода использовать цикл foreach.
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
using System; 
 namespace labor_3 
 { 
     class B 
     { 
  
         public B(int health, string name) 
         { 
             this.health = health; 
             this.name = name; 
         } 
  
         public void Passport() 
         { 
             Console.WriteLine("Monster{0}  health={1}  \a",name, health); 
         } 
          
         int health; 
         string name; 
     } 
  
     class Class1 
     { 
         static void Main() 
         {             
             const int n = 5; 
             B[] stado = new B[n]; 
             for (int i = 0; i < n; ++i) 
             { 
                 stado[i] = new B(3*i,"Grazy" + i.ToString()); 
                                         
             } 
  
             foreach (B x in stado) x.Passport(); 
  
             Console.ReadKey(); 
  
         } 
     } 
 }
__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
21.09.2015, 19:02
Ответы с готовыми решениями:

Определить конструктор для инициализации полей по умолчанию
У меня такое задание по лабу, кстати она самая сложная и последняя: дана структура: struct...

Можно ли использовать конструктор по умолчанию и конструктор инициализации одновременно?
Можно ли использовать конструктор по умолчанию и конструктор инициализации одновременно?

Как реализовать конструктор с параметрами для инициализации полей класса?
Подскажите как реализовать конструктор с параметрами для инициализации полей класса.

Нужно разделить конструктор на две части, первая - инициализации массива, вторая - сумма положительных элементов
Вся суть в том, что для конструктора суммы мне нужна переменная size, которая вводится с...

3
707 / 707 / 226
Регистрация: 04.03.2013
Сообщений: 1,384
21.09.2015, 19:31 2
Думаю требуется что-то такое
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
class B
{
    private int[] _array;
    
    public B(int length, int initialValue)
    {
        _array = new int[length];
        
        for (int i = 0; i < length; i++)
            _array[i] = initialValue * i;
    }
    
    public B() : this(5,3) {}
    
    public void Print()
    {
        foreach (int number in _array)
            Console.WriteLine(number);
    }
}
0
1 / 1 / 0
Регистрация: 19.12.2013
Сообщений: 193
22.09.2015, 12:38  [ТС] 3
Kruds, Не знаю , не получается как сделать вывод из Main элементов массива ?

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
using System;
namespace Lab2
{
  class B
  {
    private int[] _array;    
    public B(int length, int initialValue)
    {
        _array = new int[length];        
        for (int i = 0; i < length; i++)
            _array[i] = initialValue * i;
    }    
    public B() : this(5,3) {}      
  }
  class Program
   {  static void Main(string[] args)
       {
 
 
          
          Console.ReadKey();
       }
   }
}
Добавлено через 12 часов 57 минут
Kruds, Может быть вот так правильнее ? Но и так на консоль ничего не выводится .

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
using System;
namespace Lab2
 {
   class B
   {
      int a=5;
      int b=3;
      private int[] _array; 
      public B(int length, int initialValue)
     {
        _array = new int[length]; 
        for (int i = 0; i < length; i++)
        _array[i] = initialValue * i;
     } 
     public B(int a, int b) : base(a, b) { }
 
    }
 class Program
  {    static void Main(string[] args)
      {
 
 
 
          Console.ReadKey();
     }
  }
}
0
49 / 45 / 23
Регистрация: 27.07.2015
Сообщений: 111
22.09.2015, 19:53 4
Цитата Сообщение от Владимирл Посмотреть сообщение
Может быть вот так правильнее ? Но и так на консоль ничего не выводится .
А где в этом коде Console.WriteLine?
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
22.09.2015, 19:53

Конструктор инициализации, конструктор копирования, деструктор
Я сделал почти задание по перегрузке операторов. Осталось одно, тоесть три: конструктор...

Напишите конструктор для инициализации объекта класса Time, который может использовать текущее время, возвращаемое функцией time ().
Помогите пожалуйста написать программу на С++. Просто скоро курсовую сдавать, а классы мы еще не...

Конструктор инициализации
Как передать параметры конструктору, если объект класса определен как указатель? #include...

Реализовать конструктор инициализации
Во всех заданиях необходимо реализовать конструктор инициализации (один или несколько) и...


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

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

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