7 / 3 / 4
Регистрация: 28.09.2019
Сообщений: 100
1

Сортировка по алфавиту в классе

11.03.2020, 16:03. Показов 2954. Ответов 4
Метки нет (Все метки)

Всем привет, недавно тут спрашивал по поводу классов, вот появилась новая проблема:

В классе объявить фамилию,телефон, длительность звонка, потом вводим число, которое будет "ограничителем" для длительности и всех,у кого больше время удаляем. К этому моменту всё сделал но осталась маленькая проблема нужно отсортировать фамилии оставшихся по алфавиту, могу это отдельно сделать, но именно оставшихся... Возможно ли это сделать или нужно переписывать код/метод удаления фамилий с длительностью звонков?

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
using System;
using System.Text;
using System.Collections;
 
namespace Class
{
        class Person
        {        
            public string surname; 
            public long  phone_number;
            public int calling_time;
 
            public string GetInfo()
            {
                return $"Фамилия: {surname} \tТелефон:{phone_number} \tДлительность вызова: {calling_time}мин.";
            }
        }
        class Program
        {
            static void Main(string[] args)
            {
 
                Console.OutputEncoding = Encoding.Unicode;
                Console.InputEncoding = Encoding.Unicode;
 
                string[] surnames = { "Zelenskiy", "Kiva", "Poroh", "Kuchma", "Merkel", "Tramp", "Faberge", "Lyashko", "J.Timosh.", "Medvedev", "Putin"};
                int[] callt = {100, 10, 20, 30, 45, 50, 55,60, 80, 99, 100};
 
                Console.WriteLine("Максимальна кількість хвилин: ");
 
                int n = int.Parse(Console.ReadLine());
                var p = new Person[11];
                p[0] = new Person
                {
                    surname = surnames[0],
                    phone_number = 111111111111,
                    calling_time = callt [0]
                };
                p[1] = new Person
                {
                    surname = surnames[1],
                    phone_number = 380686982323,
                    calling_time = callt[1]
                };
                p[2] = new Person
                {
                    surname = surnames[2],
                    phone_number = 380956989003,
                    calling_time = callt[2]
                };
                p[3] = new Person
                {
                    surname = surnames[3],
                    phone_number = 380954142486,
                    calling_time = callt[4]
                };
                p[4] = new Person
                {
                    surname = surnames[4],
                    phone_number = 380686456002,
                    calling_time = callt[4]
 
                };
                p[5] = new Person
                {
                    surname = surnames[5],
                    phone_number = 380777777771,
                    calling_time = callt[5]
                };
                p[6] = new Person
                {
                    surname = surnames[6],
                    phone_number = 380643866002,
                    calling_time = callt[6]
                };
                p[7] = new Person
                {
                    surname = surnames[7],
                    phone_number = 380777777777,
                    calling_time = callt[7]
                };
                p[8] = new Person
                {
                    surname = surnames[8],
                    phone_number = 380687000003,
                    calling_time = callt[8]
                };
                p[9] = new Person
                { 
                    surname = surnames[9],
                    phone_number = 380665458003,
                    calling_time = callt[9]
                };
                p[10] = new Person
                {
                    surname = surnames[10],
                    phone_number = 380686456993,
                    calling_time = callt[10]
                };
                for (int j = 1,i = 0; i <= 10;i++,j++)  //Просто вывод
                {
 
                    Console.WriteLine(j + ": " + (p[i].GetInfo()));
                }
 
                Console.WriteLine("\nПосле замены: \n");
 
                for (int j = 0, i = 0; i <= 10; i++, j++)    //Удаляем всех у кого длительность вызова больше чем введенное число "n".
                {
                    if ( p[i].calling_time >= n)
                        continue;
                    Console.WriteLine(j + ": " + (p[i].GetInfo()));
                
                }
            }
        }   
}
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
11.03.2020, 16:03
Ответы с готовыми решениями:

Сортировка строки по алфавиту в классе String
Здравствуйте! Создал класс Stroka: #include &lt;iostream&gt; #include &lt;string&gt; using namespace std;...

Сортировка массивов (Сортировка слов по алфавиту)
Объясните мне сортировку слов по алфавиту .Сравнивать целиком слова нельзя ?Есть ли какой нибудь...

Сортировка в struct по алфавиту. Сортировка в файле
Допустим вот такая вот структура struct Art_space { ...

Сортировка по алфавиту
Всем привет, помогите пожалуйста исправить ошибку. С моими знаниями даже не получилось из 20 слов...

4
542 / 331 / 105
Регистрация: 06.03.2017
Сообщений: 1,249
11.03.2020, 16:11 2
А есть полное ТЗ? А то не совсем понятно что нужно сделать
0
796 / 579 / 207
Регистрация: 21.02.2019
Сообщений: 2,095
11.03.2020, 16:13 3
Лучший ответ Сообщение было отмечено SanayCLAUS как решение

Решение

.. так отсортируйте до удаления .. это же массив, он таким отсортированным и останется ...
0
Эксперт .NET
5852 / 4729 / 2940
Регистрация: 20.04.2015
Сообщений: 8,361
11.03.2020, 16:20 4
Лучший ответ Сообщение было отмечено SanayCLAUS как решение

Решение

C#
1
2
3
var list = p.Where(x => x.calling_time < n).OrderBy(y => y.surname);
foreach(var pers in list)
    Console.WriteLine(pers.GetInfo());
0
2612 / 1566 / 831
Регистрация: 14.04.2015
Сообщений: 5,438
11.03.2020, 16:57 5
Лучший ответ Сообщение было отмечено SanayCLAUS как решение

Решение

или добавить перед 106-й строкой:
C#
1
Array.Sort(p, (x, y) =>  x.surname.CompareTo(y.surname));
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
11.03.2020, 16:57
Помогаю со студенческими работами здесь

Сортировка по алфавиту
Проблема: Есть таблица, stringGrid, в ней нужно сделать сортировку, допустим по названию. Или...

Сортировка по алфавиту
как мне перегнать из файла значения &quot;Номер тел.&quot; &quot;Фамилия&quot; &quot;Адрес&quot; в компонент Memo, отсортировать...

Сортировка БД по алфавиту
Помогите отсортировать бд (DBGrid) (бд сделана в Access) по алфавиту. При нажатии на конопку...

Сортировка по алфавиту
Добрый день. В форме Заказы есть поле поиск по клиенту. Сейчас клиенты сортируется по...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru