Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.93/15: Рейтинг темы: голосов - 15, средняя оценка - 4.93
0 / 0 / 0
Регистрация: 05.03.2012
Сообщений: 8

Организация линейного поиска элемента

09.03.2012, 15:09. Показов 2986. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Помогите пожалуйста ...необходимо сделать поиск элемента...

Сам линейный поиск я набил, а как саму кнопку обработать?

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
int Линейный(List<object> a, string key)
       {
           int i, n = a.Count;
           Пьеса t;
           for (i = 0; i < n; i++)
           {
               t = (Пьеса)a[i];
               if (t.НазваниеПьесы == key) return i;//удача
               
               
           }
           return -1;  // неудача
           
 
       }
вот мой пробный вариант кнопки
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
private void button2_Click(object sender, EventArgs e)
       {
           string key;
           int q;
           
           key = textBox1.Text;
           q=Линейный(a, key);
           if (q == -1) MessageBox.Show("Поиск невыполнен");
           listBox1.SelectedIndex = 1;
           
 
           
       }
при вот таком коде генерируется исключение метод или операция не реализована...

помогите пожалуйста...)
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
09.03.2012, 15:09
Ответы с готовыми решениями:

Организация поиска и выбора информации в двумерном массиве
У меня есть информация о 20 учениках(имя,фамилия,отчество,год рождения). Я ввел её в datagridview1, а как теперь сделать чтобы например в...

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

Реализовать функцию линейного поиска элемента в массиве
1) Реализовать функцию линейного поиска элемента в массиве (принимает массив и искомое значение(ключ), возвращает индекс найденного...

5
 Аватар для nio
6050 / 3460 / 336
Регистрация: 14.06.2009
Сообщений: 8,136
Записей в блоге: 2
09.03.2012, 16:07
C#
1
2
3
4
5
6
7
8
int Линейный(List<object> a, string key)
       {
           for (int i = 0; i < a.Count; i++)
           {
               if ((a[i]  as Пьеса).НазваниеПьесы == key) return i;//удача
           }
           return -1;  // неудача 
       }
а где собственно сам список пьес, который передается в метод?
C#
1
2
3
4
5
6
7
8
9
10
private void button2_Click(object sender, EventArgs e)
       {
           string key;
           int q;
           
           key = textBox1.Text;
           q=Линейный(a, key);
           if (q == -1) MessageBox.Show("Поиск невыполнен");
           listBox1.SelectedIndex = 1;// а тут что, не зависимо от результата =1?
       }
0
0 / 0 / 0
Регистрация: 05.03.2012
Сообщений: 8
09.03.2012, 16:16  [ТС]
список пьес есть
C#
1
2
3
4
5
6
7
8
private void Form1_Load(object sender, EventArgs e)
        {
            a = new List<object>();
            a.Add(new Пьеса("МХАТ им. М. Горького", "Гроза", "А.Н.Островский", "Филимонов"));
            a.Add(new Пьеса("Большой Театр России", "Мастер и Маргарита", "М.А.Булгаков", "Сидоров"));
            a.Add(new Пьеса("Малый театр России", "Война и Мир", "Л.Н.Толстой", "Прошкин"));
            a.Add(new Пьеса("МХТ им. А.П. Чехова", "Мертвые души", "Н.В.Гоголь", "Чистяков"));
        }
и еще

C#
1
2
3
4
private void button1_Click(object sender, EventArgs e)
        {
            a.Add(new Пьеса(comboBox1.Text, comboBox2.Text, comboBox3.Text, comboBox4.Text));
        }
listBox1.SelectedIndex = 1 это я хочу как бы выделить строку на листбоксе, где данная пьеса присутствует..
0
 Аватар для nio
6050 / 3460 / 336
Регистрация: 14.06.2009
Сообщений: 8,136
Записей в блоге: 2
09.03.2012, 16:32
progamer92, с виду код правильный. На какую строку ругается?
1
0 / 0 / 0
Регистрация: 05.03.2012
Сообщений: 8
09.03.2012, 23:29  [ТС]
ругается в трёх местах... первое место
C#
1
2
3
4
5
6
7
8
9
10
public string НазваниеПьесы
        {
            get
            {
                throw new System.NotImplementedException(); //вот тут первое место ((это инкапсуляция поля название пьесы в классе Пьеса..))
            }
            set
            {
            }
        }
второе
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
int Линейный(List<object> a, string key)
       {
           int i, n = a.Count;
           Пьеса t;
           for (i = 0; i < n; i++)
           {
               t = (Пьеса)a[i];
               if (t.НазваниеПьесы == key) return i;//удача     вот тут второе место..
               
               
           }
           return -1;  // неудача
           
 
       }
и третье
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
 private void button2_Click(object sender, EventArgs e)
       {
           string key;
           int q;
           
           key = textBox1.Text;
           q=Линейный(a, key); // вот здесь третье место
           if (q == -1) MessageBox.Show("Поиск невыполнен");
           listBox1.SelectedIndex = 1;
           
 
           
       }
Добавлено через 1 час 2 минуты
нашел ошибку как раз в инкапсуляции..но появилась другая проблема почему то программа всегда говорит мне что Пьессы не найдены...
C#
1
2
3
4
5
6
7
for (i = 0; i < n; i++)
           {
               t = (Пьеса)a[i];
               if (t.НазваниеПьесы == key) return i;//удача 
               
               
           }
этот код почемуто неработает....
0
 Аватар для nio
6050 / 3460 / 336
Регистрация: 14.06.2009
Сообщений: 8,136
Записей в блоге: 2
10.03.2012, 11:47
Цитата Сообщение от progamer92 Посмотреть сообщение
//вот тут первое место ((это инкапсуляция поля название пьесы в классе Пьеса..)
Это не инкапсуляция это свойство
а вот это throw new System.NotImplementedException() принудительный вызов исключения указывающего на то, что метод не реализован
Цитата Сообщение от progamer92 Посмотреть сообщение
вот тут второе место..
поскольку свойство из-за исключительной ситуации не вернуло ожидаемое значение (строку), то и сравнивать не с чем, поэтому возникает новое исключение.

Цитата Сообщение от progamer92 Посмотреть сообщение
вот здесь третье место
фактически до этого места выполнение дойти просто не могло.
подозреваю, что в моменты остановки из-за ошибки ты передвигаешь курсор вручную, из-за этого код продолжает выполнятся, но ожидаемого результата он не вернет.

Цитата Сообщение от progamer92 Посмотреть сообщение
нашел ошибку как раз в инкапсуляции
некоректное построение фразы, как я понимаю из-за недопонимания, что такое инкапсуляция. Инкапсуляция - это механизм организации объекта (кода) ...
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
10.03.2012, 11:47
Помогаю со студенческими работами здесь

Нахождение максимального элемента с помощью линейного поиска
Всем доброе утро. Задача состоит в нахождении максимального элемента с помощью линейного поиска. Написал программу сортировки массива...

Организация поиска k-го элемента в неупрорядоченном массиве
помогите плиииз=)

Поиск минимального элемента массива с помощью бинарного и линейного поиска
Помогите пожалуйста. Нужно реализовать способ поиска минимального элемента в одномерном массиве с помощью двух алгоритмов: 1.Бинарный...

Решение задачи линейного поиска элемента в заданном вещественном массиве
Написать программу, решающую задачу линейного поиска элемента в заданном вещественном массиве

Написать программу, решающую задачу линейного поиска элемента вещественном массиве
Написать программу, решающую задачу линейного поиска элемента вещественном массиве вот... double mass; print2(n,mass); ...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
Загрузка PNG-файла с альфа-каналом с помощью библиотеки SDL3_image на Android
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru