Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.69/13: Рейтинг темы: голосов - 13, средняя оценка - 4.69
16 / 12 / 4
Регистрация: 10.09.2018
Сообщений: 373

Передача массива между методами

02.12.2018, 19:18. Показов 2881. Ответов 18
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте. Пишу код, возникла проблема при передачи массива с метода Values() в метод Print(). Подскажите как это сделать. Методы находятся в классе Subscriber

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
public static void Values(Subscriber[] Klient)
        {            
            for (int i = 0; i < Klient.Length; i++)
            {
                Subscriber st = Klient[i];               
            }           
        }
 
        public static void Print()
        {
            Console.WriteLine(new string('-', 50));
            for (int i = 0; i < Klient.Length; i++)
            {                
               // Console.WriteLine($"Имя: {st.Name}; Фамилия: {st.lastName}; Отчество: {st.midle}; Адрес: {st.address}; Номер кредитной карточки: {st.numberCards}; Номер банковского счета: {st.numberBank}");
            }
            Console.WriteLine(new string('-', 50));
        }
 
    }
         
 
 
 
    class Program
    {
         static void Main(string[] args)
         {
            Subscriber[] Klient = new Subscriber[3]
            { 
                new Subscriber(2341242, "Паша", "Иванов",  "Анатольевич", "Киев", 21221312, 13232, 21232, "12:23", "44:53"),
                new Subscriber(2123135, "Петр", "Петров", "Петрович" , "Харьков", 100020321, 434212, 34124, "20:41", "31:52"),
                new Subscriber(1421421, "Александр", "Александров", "Александрович" , "Чернигов", 897676585, 321412, 421123, "19:12", "1:31:34")
            };
                   
              Console.ReadKey();
         }
    }
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
02.12.2018, 19:18
Ответы с готовыми решениями:

Неоднозначность между методами
Здравствуйте. Есть метод. В нём создаю объект, у которого есть 1 метод по имени Quit. Однако VS пишет предупреждение со словами...

Задержка между вызовами методами
Всем привет.Подскажите пожалуйста. В одном месте кода вызываю метод А. Сейчас мне надо после метода A добавить вызов метода B через 3...

Перемещении между классами и методами
У меня есть 2 класса и 2 метода. Мне нужно, чтобы из одного он мог перейти в другой. Вот куски кода. 1) class Home_screen { ...

18
 Аватар для PoPsa85
814 / 561 / 240
Регистрация: 01.07.2018
Сообщений: 1,818
02.12.2018, 20:20
DragonBorn88, Через out можно, можно void заменить на Subscriber. А что такое Subscriber st ? Или может расскажите что вы хотите сделать ?

Добавлено через 5 минут
Всё. Увидел вашу вторую тему.
0
16 / 12 / 4
Регистрация: 10.09.2018
Сообщений: 373
02.12.2018, 20:21  [ТС]
Subscriber st - это экземпляр класса.
Вот задание:
Класс Абонент: Идентификационный номер, Фамилия, Имя, Отчество, Адрес,
Номер кредитной карточки, Дебет, Кредит, Время междугородных и городских переговоров;
Конструктор; Методы: установка значений атрибутов, получение значений атрибутов,
вывод информации. Создать массив объектов данного класса.
Вывести сведения относительно абонентов, у которых время городских переговоров превышает заданное.
Сведения относительно абонентов, которые пользовались междугородной связью.
Список абонентов в алфавитном порядке.

Вот весь код:
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
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
namespace _8
{
    class Subscriber
    {
        
        private int indNum;
        private string name;
        private string lastName;
        private string midle;
        private string address;
        private int numberCards;
        private int debit;
        private int credit;
        private string intercityTime;
        private string cityTime;
         
        public int IndNum
        {
            get
            {
                return this.indNum;
            }
            set
            {
                this.indNum = value;
            }
        }
        public string Name
        {
            get
            {
                return this.name;
            }
            set
            {
                this.name = value;
            }
        }
        public string Lastname
        {
            get
            {
                return this.lastName;
            }
            set
            {
                this.lastName = value;
            }
        }
        public string Midle
        {
            get
            {
                return this.midle;
            }
            set
            {
                this.midle = value;
            }
        }
        public string Address
        {
            get
            {
                return this.address;
            }
            set
            {
                this.address = value;
            }
        }
        public int NumberCards
        {
            get
            {
                return this.numberCards;
            }
            set
            {
                this.numberCards = value;
            }
        }
        public int Debit
        {
            get
            {
                return this.debit;
            }
            set
            {
                this.debit = value;
            }
        }
        public int Credit
        {
            get
            {
                return this.credit;
            }
            set
            {
                this.credit = value;
            }
        }
        public string IntercityTime
        {
            get
            {
                return this.intercityTime;
            }
            set
            {
                this.intercityTime = value;
            }
        }
        public string CityTime
        {
            get
            {
                return this.cityTime;
            }
            set
            {
                this.cityTime = value;
            }
        }
 
        public Subscriber(int indNum, string name, string lastName, string midle, string address, int numberCards, int debit, int credit, string intercityTime, string cityTime)
        {
            this.indNum = indNum;
            this.name = name;
            this.lastName = lastName;
            this.midle = midle;
            this.address = address;
            this.numberCards = numberCards;
            this.debit = debit;
            this.credit = credit;
            this.intercityTime = intercityTime;
            this.cityTime = cityTime;
        }
 
 
        public static void Values(Subscriber[] Klient)
        {            
            for (int i = 0; i < Klient.Length; i++)
            {
                Subscriber st = Klient[i];                
            }            
        }
 
        public static void Print()
        {
            Console.WriteLine(new string('-', 50));
            for (int i = 0; i < Klient.Length; i++)
            {                
               // Console.WriteLine($"Имя: {st.Name}; Фамилия: {st.lastName}; Отчество: {st.midle}; Адрес: {st.address}; Номер кредитной карточки: {st.numberCards}; Номер банковского счета: {st.numberBank}");
            }
            Console.WriteLine(new string('-', 50));
        }
 
    }
         
 
 
 
    class Program
    {
         static void Main(string[] args)
         {
            Subscriber[] Klient = new Subscriber[3]
            { 
                new Subscriber(2341242, "Паша", "Иванов",  "Анатольевич", "Киев", 21221312, 13232, 21232, "12:23", "44:53"),
                new Subscriber(2123135, "Петр", "Петров", "Петрович" , "Харьков", 100020321, 434212, 34124, "20:41", "31:52"),
                new Subscriber(1421421, "Александр", "Александров", "Александрович" , "Чернигов", 897676585, 321412, 421123, "19:12", "1:31:34")
            };
                   
              Console.ReadKey();
         }
    }
}
0
Модератор
Эксперт .NET
 Аватар для Элд Хасп
16148 / 11269 / 2890
Регистрация: 21.04.2018
Сообщений: 33,134
Записей в блоге: 2
02.12.2018, 20:37
Цитата Сообщение от DragonBorn88 Посмотреть сообщение
Пишу код, возникла проблема при передачи массива с метода Values() ......
У Вас метод Values() ничего не делает - пустой цикл. Там и передавать нечего.

Добавлено через 3 минуты
Должно быть что-то в таком духе.
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
         static void Main(string[] args)
         {
            // Создали массив
            Subscriber[] Klients = new Subscriber[3]
            { 
                new Subscriber(2341242, "Паша", "Иванов",  "Анатольевич", "Киев", 21221312, 13232, 21232, "12:23", "44:53"),
                new Subscriber(2123135, "Петр", "Петров", "Петрович" , "Харьков", 100020321, 434212, 34124, "20:41", "31:52"),
                new Subscriber(1421421, "Александр", "Александров", "Александрович" , "Чернигов", 897676585, 321412, 421123, "19:12", "1:31:34")
            };
                // Обработали массив
               Values(Klients );
 
              // Распечатали массив
              Print(Klients );
 
              Console.ReadKey();
         }
0
16 / 12 / 4
Регистрация: 10.09.2018
Сообщений: 373
02.12.2018, 20:43  [ТС]
По задумке Value(); Создаёт массив. Print(); его выводи. Как это реализовать?
0
Модератор
Эксперт .NET
 Аватар для Элд Хасп
16148 / 11269 / 2890
Регистрация: 21.04.2018
Сообщений: 33,134
Записей в блоге: 2
02.12.2018, 20:45
Цитата Сообщение от DragonBorn88 Посмотреть сообщение
По задумке Value(); Создаёт массив. Print(); его выводи. Как это реализовать?
А из чего он создаёт?
0
16 / 12 / 4
Регистрация: 10.09.2018
Сообщений: 373
02.12.2018, 20:48  [ТС]
Может я суть задания не правильно понял. Я думал что в Value он создается а в Value заполняется. Это не так?
0
Эксперт .NET
 Аватар для Casper-SC
4434 / 2094 / 404
Регистрация: 27.03.2010
Сообщений: 5,657
Записей в блоге: 1
02.12.2018, 20:55
Лучший ответ Сообщение было отмечено DragonBorn88 как решение

Решение

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
using System;
 
namespace _8
{
    class Subscriber
    {
        private string NumberBank { get; set; }
 
        public int IndNum { get; set; }
 
        public string Name { get; set; }
 
        public string Lastname { get; set; }
 
        public string Midle { get; set; }
 
        public string Address { get; set; }
 
        public int NumberCards { get; set; }
 
        public int Debit { get; set; }
 
        public int Credit { get; set; }
 
        public string IntercityTime { get; set; }
 
        public string CityTime { get; set; }
 
        public Subscriber(int indNum, string name, string lastName, string midle, string address, int numberCards, int debit, int credit, string intercityTime, string cityTime)
        {
            IndNum = indNum;
            Name = name;
            Lastname = lastName;
            Midle = midle;
            Address = address;
            NumberCards = numberCards;
            Debit = debit;
            Credit = credit;
            IntercityTime = intercityTime;
            CityTime = cityTime;
        }
 
        public static Subscriber[] Values()
        {
            Subscriber[] subscribers = new Subscriber[3]
            {
                new Subscriber(2341242, "Паша", "Иванов",  "Анатольевич", "Киев", 21221312, 13232, 21232, "12:23", "44:53"),
                new Subscriber(2123135, "Петр", "Петров", "Петрович" , "Харьков", 100020321, 434212, 34124, "20:41", "31:52"),
                new Subscriber(1421421, "Александр", "Александров", "Александрович" , "Чернигов", 897676585, 321412, 421123, "19:12", "1:31:34")
            };
            return subscribers;
        }
 
        public static void Print(Subscriber[] subscribers)
        {
            Console.WriteLine(new string('-', 50));
 
            for (int i = 0; i < subscribers.Length; i++)
            {
                Subscriber st = subscribers[i];
                Console.WriteLine($"Имя: {st.Name}; Фамилия: {st.Lastname}; Отчество: {st.Midle}; Адрес: {st.Address}; " +
                                  $"Номер кредитной карточки: {st.NumberCards}; Номер банковского счета: {st.NumberBank}");
            }
 
            Console.WriteLine(new string('-', 50));
        }
    }
 
    class Program
    {
        static void Main(string[] args)
        {
            Subscriber[] subscribers = Subscriber.Values();
            Subscriber.Print(subscribers);
 
            Console.ReadKey();
        }
    }
}
Добавлено через 28 секунд
Об архитектуре не говорим , компилится и ладно. В задание не вникал, вопрос был про передачу массива.
1
Модератор
Эксперт .NET
 Аватар для Элд Хасп
16148 / 11269 / 2890
Регистрация: 21.04.2018
Сообщений: 33,134
Записей в блоге: 2
02.12.2018, 20:55
Как я бы подошёл к Вашему заданию.
Надо создать два класса.
Первый абонент - у Вас это вроде Subscriber.
Второй список абонентов. В нём кроме списка и все метода для работы с этим списком: добавить/удалить абонента, подсчитать общий баланс, отсортировать, найти и т.д.
Для создания объектов из строки, надо определить в обоих методах методы Parse и TryParse. Какие параметры они должны принимать и возвращать посмотрите на примере других типов.
Для создания клиента передаёте одну строку.
Для создания списка клиентов список строк или строку в которой есть разделители \n
0
16 / 12 / 4
Регистрация: 10.09.2018
Сообщений: 373
02.12.2018, 21:02  [ТС]
Мне понравился ход ваших мыслей. Всё по полочкам. Но добавление и удаление абонентов это лишняя работа. Как программа она будет красиво работать. Но в задании это не указано
0
Модератор
Эксперт .NET
 Аватар для Элд Хасп
16148 / 11269 / 2890
Регистрация: 21.04.2018
Сообщений: 33,134
Записей в блоге: 2
02.12.2018, 21:08
Цитата Сообщение от DragonBorn88 Посмотреть сообщение
Но в задании это не указано
В задании указываются только пользовательские требования, а реализация остаётся за Вами.
0
 Аватар для PoPsa85
814 / 561 / 240
Регистрация: 01.07.2018
Сообщений: 1,818
02.12.2018, 21:18
DragonBorn88, Вот класс, а это
Цитата Сообщение от DragonBorn88 Посмотреть сообщение
Вывести сведения относительно абонентов, у которых время городских переговоров превышает заданное.
Сведения относительно абонентов, которые пользовались междугородной связью.
Список абонентов в алфавитном порядке.
я так понимаю вам нужно отдельно сделать или в классе ?

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
   class Subscriber
    {
 
        private int indNum;
        private string name;
        private string lastName;
        private string midle;
        private string address;
        private int numberCards;
        private int debit;
        private int credit;
        private int intercityTime;
        private int cityTime;
 
        //Методы: установка значений атрибутов, получение значений атрибутов
        public int IndNum { get => indNum; set => indNum = value; }
        public string Name { get => name; set => name = value; }
        public string LastName { get => lastName; set => lastName = value; }
        public string Midle { get => midle; set => midle = value; }
        public string Address { get => address; set => address = value; }
        public int NumberCards { get => numberCards; set => numberCards = value; }
        public int Debit { get => debit; set => debit = value; }
        public int Credit { get => credit; set => credit = value; }
        public int IntercityTime { get => intercityTime; set => intercityTime = value; }
        public int CityTime { get => cityTime; set => cityTime = value; }
 
        public Subscriber() { }
 
        //Конструктор
        public Subscriber(int indNum, string name, string lastName, string midle, string address, int numberCards, int debit, int credit, int intercityTime, int cityTime)
        {
            this.IndNum = indNum;
            this.Name = name;
            this.LastName = lastName;
            this.Midle = midle;
            this.Address = address;
            this.NumberCards = numberCards;
            this.Debit = debit;
            this.Credit = credit;
            this.IntercityTime = intercityTime;
            this.CityTime = cityTime;
        }
 
        //Массив
        public List<Subscriber> subscribers { get; set; }
 
 
        //Вывод информации
        public void info(Subscriber subscriber)
        {
            Console.WriteLine(subscriber.Name + " | " + subscriber.LastName);
        }
 
      
 
    }
0
16 / 12 / 4
Регистрация: 10.09.2018
Сообщений: 373
02.12.2018, 21:32  [ТС]
Цитата Сообщение от PoPsa85 Посмотреть сообщение
я так понимаю вам нужно отдельно сделать или в классе ?
Можно в другом классе реализовать. Это значения не имеет

Добавлено через 6 минут
Цитата Сообщение от Элд Хасп Посмотреть сообщение
В задании указываются только пользовательские требования, а реализация остаётся за Вами.
Вы правы, нужно сделать так как писали выше
0
Эксперт .NET
 Аватар для Casper-SC
4434 / 2094 / 404
Регистрация: 27.03.2010
Сообщений: 5,657
Записей в блоге: 1
02.12.2018, 22:53
DragonBorn88, в данном случае создаваться массив и выводиться на экран должен методами класса Program, но точно не Subscriber

Добавлено через 1 минуту
Subscriber это по сути модель данных. Мы можем использовать этот класс для чего-то ещё, кроме вывода на консоль. Внутри Subscriber не должно быть никаких методов левых, которые выводят что-то на консоль и тем более создают какой-то один конкретный массив конкретных данных.
0
16 / 12 / 4
Регистрация: 10.09.2018
Сообщений: 373
02.12.2018, 23:14  [ТС]
Цитата Сообщение от Casper-SC Посмотреть сообщение
Внутри Subscriber не должно быть никаких методов левых, которые выводят что-то на консоль
Вы хотите сказать что делать это таким образом не стоит? Это плохой тон?
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
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
class Subscriber
    {
 
        private string NumberBank { get; set; }
 
        public int IndNum { get; set; }
 
        public string Name { get; set; }
 
        public string Lastname { get; set; }
 
        public string Midle { get; set; }
 
        public string Address { get; set; }
 
        public int NumberCards { get; set; }
 
        public int Debit { get; set; }
 
        public int Credit { get; set; }
 
        public string IntercityTime { get; set; }
 
        public string CityTime { get; set; }
 
        public Subscriber(int indNum, string name, string lastName, string midle, string address, int numberCards, int debit, int credit, string intercityTime, string cityTime)
        {
            IndNum = indNum;
            Name = name;
            Lastname = lastName;
            Midle = midle;
            Address = address;
            NumberCards = numberCards;
            Debit = debit;
            Credit = credit;
            IntercityTime = intercityTime;
            CityTime = cityTime;
        }
 
 
        public static Subscriber[] Values()
        {
            Subscriber[] subscribers = new Subscriber[3]
            {
                new Subscriber(2341242, "Паша", "Иванов",  "Анатольевич", "Киев", 21221312, 13232, 21232, "12:23", "44:53"),
                new Subscriber(2123135, "Петр", "Петров", "Петрович" , "Харьков", 100020321, 434212, 34124, "20:41", "31:52"),
                new Subscriber(1421421, "Александр", "Александров", "Александрович" , "Чернигов", 897676585, 321412, 421123, "19:12", "51:34")
            };
            return subscribers;
        }
 
        public static void Print(Subscriber[] subscribers)
        {
            Console.WriteLine(new string('-', 120));
 
            for (int i = 0; i < subscribers.Length; i++)
            {
                Subscriber st = subscribers[i];
                Console.WriteLine($"Имя: {st.Name}; Фамилия: {st.Lastname}; Отчество: {st.Midle}; Адрес: {st.Address}; " +
                                  $"Номер кредитной карточки: {st.NumberCards}; \nДебит: {st.Debit}; Кредит: {st.Credit}; "+
                                  $"Время междугородних переговоров: {st.IntercityTime}; Время городских переговоров {st.CityTime}\n");
            }
 
            Console.WriteLine(new string('-', 120));
        }
 
        public static void Peregovor1(Subscriber[] subscribers)
        {
            Subscriber st = subscribers[1];
            Console.WriteLine($"Имя: {st.Name}; Фамилия: {st.Lastname}; Отчество: {st.Midle}; Адрес: {st.Address}; " +
                                  $"Номер кредитной карточки: {st.NumberCards}; \nДебит: {st.Debit}; Кредит: {st.Credit}; " +
                                  $"Время междугородних переговоров: {st.IntercityTime}; Время городских переговоров {st.CityTime}\n");
        }
 
        public static void Peregovor0(Subscriber[] subscribers)
        {
            Subscriber st = subscribers[0];
            Console.WriteLine($"Имя: {st.Name}; Фамилия: {st.Lastname}; Отчество: {st.Midle}; Адрес: {st.Address}; " +
                                  $"Номер кредитной карточки: {st.NumberCards}; \nДебит: {st.Debit}; Кредит: {st.Credit}; " +
                                  $"Время междугородних переговоров: {st.IntercityTime}; Время городских переговоров {st.CityTime}\n");
        }
 
        public static void Peregovor2(Subscriber[] subscribers)
        {
            Subscriber st = subscribers[2];
            Console.WriteLine($"Имя: {st.Name}; Фамилия: {st.Lastname}; Отчество: {st.Midle}; Адрес: {st.Address}; " +
                                  $"Номер кредитной карточки: {st.NumberCards}; \nДебит: {st.Debit}; Кредит: {st.Credit}; " +
                                  $"Время междугородних переговоров: {st.IntercityTime}; Время городских переговоров {st.CityTime}\n");
        }
 
 
    }         
 
    class Program
    {
        static void Main(string[] args)
        {
             Subscriber[] subscribers = Subscriber.Values();
             //Subscriber.Print(subscribers);          
 
 
            // Врем городских переговоров.
            Console.Write("Введиет время городких переговоров: ");
            int talk = int.Parse(Console.ReadLine());
            Console.WriteLine();
 
            if (talk <= 31)
            {
                Subscriber.Peregovor1(subscribers);
                Subscriber.Peregovor0(subscribers);
                Subscriber.Peregovor2(subscribers);
            }
            else if (talk <= 44 && talk > 31)
            {
                Subscriber.Peregovor0(subscribers);
                Subscriber.Peregovor2(subscribers);
            }
            else if (talk > 44 && talk <= 51)
            {
                Subscriber.Peregovor2(subscribers);
            }
            else
            {
                Console.WriteLine("Никого не найдено");
            }
 
 
            Console.ReadKey();
        }
    }
}
Добавлено через 14 минут
Цитата Сообщение от Casper-SC Посмотреть сообщение
Subscriber это по сути модель данных.
Как сделать последний пункт. Сортировку за алфавитом?
0
 Аватар для PoPsa85
814 / 561 / 240
Регистрация: 01.07.2018
Сообщений: 1,818
02.12.2018, 23:23
DragonBorn88,
C#
1
var sorted = subscribers.OrderBy(x=>x.Name)
0
Эксперт .NET
 Аватар для Casper-SC
4434 / 2094 / 404
Регистрация: 27.03.2010
Сообщений: 5,657
Записей в блоге: 1
02.12.2018, 23:49
Лучший ответ Сообщение было отмечено DragonBorn88 как решение

Решение

Цитата Сообщение от DragonBorn88 Посмотреть сообщение
Вы хотите сказать что делать это таким образом не стоит? Это плохой тон?
Да. Должно быть так (я там не только методы перенёс):
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
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
using System;
 
namespace _8
{
    class Subscriber
    {
        public int IndNum { get; set; }
 
        public string Name { get; set; }
 
        public string Lastname { get; set; }
 
        public string Midle { get; set; }
 
        public string Address { get; set; }
 
        public int NumberCards { get; set; }
 
        public int Debit { get; set; }
 
        public int Credit { get; set; }
 
        public string IntercityTime { get; set; }
 
        public string CityTime { get; set; }
 
        public Subscriber(int indNum, string name, string lastName, string midle, string address, int numberCards,
            int debit, int credit, string intercityTime, string cityTime)
        {
            IndNum = indNum;
            Name = name;
            Lastname = lastName;
            Midle = midle;
            Address = address;
            NumberCards = numberCards;
            Debit = debit;
            Credit = credit;
            IntercityTime = intercityTime;
            CityTime = cityTime;
        }
    }
 
    class Program
    {
        static void Main(string[] args)
        {
            Subscriber[] subscribers = Values();
            // Print(subscribers);     
 
            // Время городских переговоров.
            int talk;
            do
            {
                Console.Write("Введите время городких переговоров: ");
            } while (!int.TryParse(Console.ReadLine(), out talk));
 
            Console.WriteLine();
 
            if (talk <= 31)
            {
                Peregovor(subscribers[1]);
                Peregovor(subscribers[0]);
                Peregovor(subscribers[2]);
            }
            else if (talk <= 44 && talk > 31)
            {
                Peregovor(subscribers[0]);
                Peregovor(subscribers[2]);
            }
            else if (talk > 44 && talk <= 51)
            {
                Peregovor(subscribers[2]);
            }
            else
            {
                Console.WriteLine("Никого не найдено");
            }
 
            Console.ReadKey();
        }
 
        public static Subscriber[] Values()
        {
            Subscriber[] subscribers = new Subscriber[3]
            {
                new Subscriber(2341242, "Паша", "Иванов", "Анатольевич", "Киев", 21221312, 13232, 21232, "12:23", "44:53"),
                new Subscriber(2123135, "Петр", "Петров", "Петрович", "Харьков", 100020321, 434212, 34124, "20:41", "31:52"),
                new Subscriber(1421421, "Александр", "Александров", "Александрович", "Чернигов", 897676585, 321412, 421123, "19:12", "51:34")
            };
            return subscribers;
        }
 
        public static void Print(Subscriber[] subscribers)
        {
            Console.WriteLine(new string('-', 120));
 
            for (int i = 0; i < subscribers.Length; i++)
            {
                Subscriber st = subscribers[i];
                Console.WriteLine(
                    $"Имя: {st.Name}; Фамилия: {st.Lastname}; Отчество: {st.Midle}; Адрес: {st.Address}; " +
                    $"Номер кредитной карточки: {st.NumberCards}; {Environment.NewLine}Дебит: {st.Debit}; Кредит: {st.Credit}; " +
                    $"Время междугородних переговоров: {st.IntercityTime}; Время городских переговоров {st.CityTime}{Environment.NewLine}");
            }
 
            Console.WriteLine(new string('-', 120));
        }
 
        public static void Peregovor(Subscriber st)
        {
            Console.WriteLine($"Имя: {st.Name}; Фамилия: {st.Lastname}; Отчество: {st.Midle}; Адрес: {st.Address}; " +
                              $"Номер кредитной карточки: {st.NumberCards}; {Environment.NewLine}Дебит: {st.Debit}; Кредит: {st.Credit}; " +
                              $"Время междугородних переговоров: {st.IntercityTime}; Время городских переговоров {st.CityTime}{Environment.NewLine}");
        }
    }
}
Добавлено через 54 секунды
Для вставки переноса строки есть Environment.NewLine. То есть:
C#
1
$"Время городских переговоров {st.CityTime}{Environment.NewLine}"
0
 Аватар для PoPsa85
814 / 561 / 240
Регистрация: 01.07.2018
Сообщений: 1,818
03.12.2018, 00:09
Цитата Сообщение от Casper-SC Посмотреть сообщение
Для вставки переноса строки есть Environment.NewLine
И в чем разница от \r\n ? Или проект планируют на nix запускать ?

Сорри. У ТС просто \n
0
16 / 12 / 4
Регистрация: 10.09.2018
Сообщений: 373
03.12.2018, 10:32  [ТС]
Цитата Сообщение от Casper-SC Посмотреть сообщение
Для вставки переноса строки есть Environment.NewLine.
Не знал, спасибо. Вы не подскажите как можно вывести список абонентов в алфавитном порядке?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
03.12.2018, 10:32
Помогаю со студенческими работами здесь

В чем разница между методами ToString() и ToShortString()?
Здравствуйте ! В чем разница метода ToString() и ToShortString()? Описание о ToString() есть , а по ToShortString() не ...

Async/await или разница между 2 методами
Добрых времени суток. Есть асинхронный метод: public Task&lt;List&lt;Address&gt;&gt; GetAllByStreet(string street) { return...

Передача данных между методами
Добрый вечер, хотел бы разъяснить для себя довольно простой вопрос К примеру, в методе main я хочу ввести переменную а со сканера Затем...

Передача значения переменной между методами
Всем Доброго Времени Суток! Предположим, у меня при нажатии на кнопку формируется переменная N - рандомное число. private void...

Передача дескриптора COM-порта между методами
Доброго времени суток, уважаемые знатоки. Не судите строго) объявил public static ModbusSerialMaster master; При загрузке формы сделал...


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

Или воспользуйтесь поиском по форуму:
19
Ответ Создать тему
Новые блоги и статьи
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru