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

Не проходит весь цикл (находит не все заданные значения)

08.04.2016, 20:46. Показов 449. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
В общем, было такое у меня задание:Дана очередь данных о работниках фирмы: ФИО и адрес (улица, дом,
квартира). Во второй массив записать только тех из них, которые живут на
улице Красной. Вывести их на экран в алфавитном порядке.
С алфавитным порядком я разберусь потом, проблема в другом.
Почему во вторую таблицу выводит только одного человека,живущего на улице Красной?(хотя должно быть 3).
Вот мой код(если можно это так назвать)
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
 class Person: IComparable<Person>
    {
        public string ФИО{get;set;}
        public string Улица{get;set;}
        public string Номер{get;set;}
 
        
 
        
        public Person(string Name, string Street, string Number)
        {
            this.ФИО = Name;
            this.Улица = Street;
            this.Номер = Number;
 
        }
       
        public int CompareTo(Person other)
        {
            int ln = string.Compare(ФИО, other.ФИО, StringComparison.OrdinalIgnoreCase);
            int fn = string.Compare(Улица, other.Улица, StringComparison.OrdinalIgnoreCase);
            int p = String.Compare(Номер, other.Номер, StringComparison.OrdinalIgnoreCase);
            if (ln != 0)
                return ln;
 
            if (ln == 0 && fn != 0)
                return fn;
 
            if (ln == 0 && fn == 0 && p != 0)
                return p;
 
            return 0;
        }
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
 public partial class Form1 : Form
    {
 
        public Form1()
        {
            InitializeComponent();
        }
 
 
        private void Form1_Load(object sender, EventArgs e)
        {
 
        }
 
        private void button1_Click(object sender, EventArgs e)
        {
            List<Person> pp = new List<Person>();
            pp.Add(new Person("Анацкая Виктория Владимировна", "Калинина", " 4"));
            pp.Add(new Person("Чернышева Мария Юрьевна", "Красная", "4"));
            pp.Add(new Person("Круглов Александр Александрович", "Красная", "59"));
            pp.Add(new Person("Сюткин Владимир Игнатович", "Гидростроителей", " 47"));
            pp.Add(new Person("Горобец Михаил Романович", "Красная", "151"));
            pp.Add(new Person("Дроздова Анна Михайловна", "Усанова", "45"));
 
            dataGridView1.DataSource = pp;
 
            
 
 
        }
 
        private void button2_Click(object sender, EventArgs e)
        {
            List<Person> pp = new List<Person>();
            pp.Add(new Person("Анацкая Виктория Владимировна", "Калинина", " 4"));
            pp.Add(new Person("Чернышева Мария Юрьевна", "Красная", "4"));
            pp.Add(new Person("Круглов Александр Александрович", "Красная", "59"));
            pp.Add(new Person("Сюткин Владимир Игнатович", "Гидростроителей", " 47"));
            pp.Add(new Person("Горобец Михаил Романович", "Красная", "151"));
            pp.Add(new Person("Дроздова Анна Михайловна", "Усанова", "45"));
 
            List<Person> filteredPersons = new List<Person>();
            foreach (var Person in pp)
            
                if (Person.Улица == "Красная")
                {
                    filteredPersons.Add(Person);
                    dataGridView2.DataSource = filteredPersons;
                    
                    
                }
            
 
 
            }
        }
    }
Не проходит весь цикл (находит не все заданные значения)
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
08.04.2016, 20:46
Ответы с готовыми решениями:

Проходит сразу весь цикл
Программа выдает, что я 10 раз вводил число, а на самом деле только один var nik:string; ...

Parallel.For - проходит не все значения?
Объясните пожалуйста, в чем подвох? Использую Parallel.For(0, Длинна.Массива, Функция); Но каждый...

Бинарный (двоичный) поиск находит не все значения
Дан массив ( неотсортированный) необходимо используя двоичный поиск найти все элементы массива,...

Fscanf не проходит весь файл
Добрый день, написал функцию для общей программы проверки записей в файле. В функцию задается число...

2
Эксперт .NETАвтор FAQ
10410 / 5140 / 1825
Регистрация: 11.01.2015
Сообщений: 6,226
Записей в блоге: 34
08.04.2016, 20:57 2
nellikau,
C#
1
2
3
4
5
6
7
            var filteredPersons = new List<Person>();
 
            foreach (var Person in pp)
                if (Person.Улица == "Красная")
                    filteredPersons.Add(Person);
 
            dataGridView2.DataSource = filteredPersons;
1
0 / 0 / 0
Регистрация: 14.03.2016
Сообщений: 6
09.04.2016, 09:29  [ТС] 3
Спасибо,все заработало)
0
09.04.2016, 09:29
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
09.04.2016, 09:29
Помогаю со студенческими работами здесь

Не находит заданные буквы в словах
Добрый вечер. Не находит заданные гласные буквы в словах. Дана последовательность слов русского...

Цикл: Написать программу которая находит минимальное значение в списке через цикл for...
Написать программу которая находит минимальное значение в списке через цикл for, то есть первое...

Как точно определять весь траффик, который проходит через программу?
Пользователи жалуются, что статистика, выдаваемая моей прогой подвирает. Моя программа есть клиент...

Для каждой пары точек найти коэффициенты прямой, которая проходит через две заданные точки
Program lab5; type mas=array of real; var x,y,A,B:mas; i,n:integer; begin writeln('n=');...


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

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