|
||
| Правила | Регистрация | Пользователи | Сообщения за день | | Поиск | | Справка по форуму | Файлообменник | |
|
![]() |
Поиск в этой теме |
![]() |
#1 | |
Максимальное значение из listBox (C#).
Борьба с пустотой
Владимир
Регистрация: 30.01.2014
Сообщений: 558
|
||
Просмотров: 21399
|
|
||||
Цитата:
Код будет принципиально такого плана: Код:
п.с. Qb будет вычисляться по ряду уравнений, поэтому его максимально значение не очевидно зависит от значения c. |
||||
![]() |
|
||||
Продуман Регистрация: 22.02.2007
Питер
Сообщений: 2,839
|
Либо взять все значения и найти максимум, либо в итерацию заполнения добавить сверку значения с максимальным полученным и сохранять его в случае превышения.
з.ы. Ваш код выдаст "неожиданный" результат при отрицательном h0.
__________________
Когда в руках молоток все вокруг кажется гвоздями. |
|||
![]() |
|
||||
Цитата:
Второе ваше предложение интересное, не сможете дать небольшую наводку на решение в такой постановке? |
||||
![]() |
|
||||
Продуман Регистрация: 22.02.2007
Питер
Сообщений: 2,839
|
Скажу прямо - Вам не хватает базовых знаний.
ИХМО представленное Вами решение и состав вопросов оставляют желать лучшего. Не пытайтесь по подсказкам на форумах научиться основам - тут Вам насоветуют. Даже если в отдельности все ответы будут правильными - они будут не "из одной бочки" - и это только прибавит каши в голове. Скачайте самоучитель по близкой Вам теме и вначале решите пару задач по нему.
__________________
Когда в руках молоток все вокруг кажется гвоздями. |
|||
![]() |
|
||||
Всем спасибо кто отписался. Не судите строго, читаю Троелсена, но многое не понятно...
Цитата:
Еще раз приношу извинения, если мои вопросы кого-то шокируют ![]() |
||||
![]() |
|
||||
Цитата:
В принципе подумал, и вышел на решение моей задачи вот через такой подход: Код:
|
||||
![]() |
|
||||
Регистрация: 10.08.2013
Сообщений: 11,499
|
на Windows Forms диалог пишете скорее всего?
Если так, то включите сортировку в списке (listbox.sorted=true или прямо в дизайнере), и возьмите по listBox.Items[listBox.Items.Count-1] последнее значение - оно и будет наибольшим ----- добавлено через ~5 мин. ----- Код:
Код:
и тогда уж temp инициализируете как Код:
|
|||
![]() |
|
||||
Цитата:
Тогда код получается вообще миниатюрным: Код:
Приложение у меня Windows Presentation Foundation (WPF). |
||||
![]() |
|
||||
Регистрация: 10.08.2013
Сообщений: 11,499
|
так максимальное или минимальное значение ищете?)
тогда Код:
|
|||
![]() |
|
||||
Цитата:
Да, temp инициализировал в соответствии с вашим советом. Все замечательно получилось. Еще раз огромное спасибо за подсказку! |
||||
![]() |
|
||||
КЖ; C# Регистрация: 03.11.2005
Санкт-Петербург
Сообщений: 2,611
|
Попробую и я свои 5 копеек добавить...
Сначала хотел несколько отрефакторить Ваш код, получилось как то так: Код:
Код:
|
|||
![]() |
|
||||
Я тут решаю задачу с расчетом наклонных сечений по СП 63.
Там по сути образуется система уравнений: Qb = (fb2*Rbt*b*h0^2) / C; (8.57) Qsw = fsw*qsw*C. (8.58) где С в формуле 8.58 принимается не менее h0 и не более 2*h0. Собственно в СП почему-то не сказано, но С в формуле 8.57 и 8.58 немного разные величины. Если верить Габрусенко "Основы расчета железобетона в вопросах и ответах", то тут можно разделить на несколько случаев: в случае б) эти величины раздельны в случае а) они совпадают. Но не в том, ни в том случае считаю, что не совсем однозначен поиск минимального решения из этих двух уравнений (по крайней мере в случае а). Код:
Могу конечно ошибаться. |
||||
![]() |
|
||||
КЖ; C# Регистрация: 03.11.2005
Санкт-Петербург
Сообщений: 2,611
|
Для случая а) зачем брутфорсить? Чем аналитическое решение не подходит?
Цифры и размерности с потолка (перемешал см и МПа), только для того, что бы показать решение. ![]() ЗЫ Зачем Вы пересчитываете константы в теле цикла, они как то меняются? Посмотрите внимательно код из 16 сообщения и прикиньте, какие расчеты в Вашем коде можно убрать из тела цикла, это позволит повысить скорость работы Вашего приложения и сделает код более понятным. Последний раз редактировалось Boxa, 26.09.2016 в 11:35. |
|||
![]() |
|
||||
Цитата:
Про аналитическое решение немного не понял. У меня не получатся чисто аналитический решить эти уравнения, так как есть 2 уравнения и 3 неизвестных. |
||||
![]() |
|
||||
КЖ; C# Регистрация: 03.11.2005
Санкт-Петербург
Сообщений: 2,611
|
Цитата:
и окажется, что у Вас для схемы а) две неизвестных, при двух уравнениях. ![]() Формулы брал из Вашего кода... Последний раз редактировалось Кулик Алексей aka kpblc, 26.09.2016 в 14:51. Причина: Добавил формулу |
|||
![]() |
|
||||
Цитата:
Qsw = fsw*qsw*C. (8.58) Вроде как эти значения не известны. Можно конечно из уравнений выразить С, приравнять, и тогда решит так, из трех уравнений. Но почему считаете что просто перебором эту задачу решать не логично? |
||||
![]() |
|
||||
КЖ; C# Регистрация: 03.11.2005
Санкт-Петербург
Сообщений: 2,611
|
Предвидя Ваш вопрос, стал обновлять сообщение, добавлять еще пару строчек. Попробую еще раз тут, на словах.
Посмотрите график рис42 а) Вы ищите точку пересечения двух заданных функций в координатах С и Q, ищите С при одинаковых Q, т.е. Qb = Qsw. соответственно приравняв формулы и выразив С, получите решение. ![]() Offtop: PS/ Грустно, на форуме для взрослых дядек и тётек, объяснять математику пятого класса. Последний раз редактировалось Boxa, 26.09.2016 в 14:47. |
|||
![]() |
|
||||
Цитата:
|
||||
![]() |
|
||||
КЖ; C# Регистрация: 03.11.2005
Санкт-Петербург
Сообщений: 2,611
|
Это уже совсем не смешно. При этом значении С, сумма Qb+Qsw будет минимальной.
Опасно это или нет, решать проектировщику. ![]() Вам очень правильно советовали разобраться с основами в начале темы (видимо и с основами математики =( Это грустно). Попробуйте для начала исследовать то, что Вы пытаетесь запрограммировать, хотя бы в Excel, это сильно поможет понять алгоритм и последовательность действий. Надеюсь у Вас все получится. ЗЫ. В виду того, что общение в данной теме становиться похоже на троллинг, со стороны топикстартера, я пожалуй помолчу. В любом случае, удачи. |
|||
![]() |
|
||||
Цитата:
|
||||
![]() |
|
||||
Регистрация: 12.06.2010
Липецк, Москва
Сообщений: 534
|
А где указание на то - это WPF или WinForms?
Если заполняли так: Цитата:
var maxValue = listBox.Items.Cast<double>().Max(); |
|||
![]() |
|
||||
Регистрация: 12.06.2010
Липецк, Москва
Сообщений: 534
|
Суть топика, цитирую:
Цитата:
|
|||
![]() |
|
||||
КЖ; C# Регистрация: 03.11.2005
Санкт-Петербург
Сообщений: 2,611
|
Modis, А прочитать весь топик? Понять что же в итоге хотел получить автор и что получил?
А использовать LINQ предлагалось еще на первой странице, но автору не понятен этот синтаксис и потому LINQ не канает =о) |
|||
![]() |
![]() |
|
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Какой язык перспективен для инженера-конструктора с условием | The_Mercy_Seat | Программирование | 705 | 17.03.2021 14:19 |
Максимальное значение воздушного зазора в вент.фасаде | St-renegat | Конструкции зданий и сооружений | 25 | 27.02.2015 09:53 |
Можно ли заставить AutoCad выбрать максимальное значение из выделенного диапазона таблицы? | RNB | AutoCAD | 2 | 15.09.2014 05:35 |
Максимальное значение защитного слоя для опоры моста | Маккс | Автомобильные и железные дороги, мосты, тоннели и организация движения | 6 | 24.03.2014 12:24 |