Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Труд вопреки насмешкам
 Аватар для Etyuhibosecyu
430 / 181 / 41
Регистрация: 13.07.2017
Сообщений: 4,640
Записей в блоге: 14

Используется ли в реальных задачах функция "FindMean"?

30.04.2025, 23:42. Показов 2120. Ответов 25
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Важно! Функция FindMean - это не просто Mean, которая считает среднее арифметическое. Та, разумеется, используется очень часто, в том числе с лямбдой. А вот FindMean - это функция, которая возвращает элемент, лямбда от которого является средним арифметическим лямбд от каждого элемента в последовательности. То есть, например, лямбда (x, index) => x * (index % 5), и если коллекция, например, { 0, 4, 5, 12, 0 }, функция вернет третий элемент - "5", так как (0 * 0 + 4 * 1 + 5 * 2 + 12 * 3 +0 * 4) / 5 = 10, а это лямбда от третьего элемента (считая с единицы).

Вопрос, нужна ли такая функция? Не конкретно в моей библиотеке, а вообще. Не обязательно с лямбдой от индекса, хотя бы и только от элемента. В уходящие сутки я пытался добавить unit-тест на нее (потому что у меня такая установка - если отправляю в репозиторий, нужно добавить один большой unit-тест или два маленьких), и не смог внятно описать правильное ее поведение. То есть, она как-то работает, но корректно ли - не знаю из-за того, что не знаю, как корректно. После нескольких часов мучений я задумался, а не напрасный ли это вообще труд, имеет ли такая функция хотя бы какое-то практическое применение? То же самое касается функций FindMedian, FindMeanIndex и FindMedianIndex (последние две возвращают как индекс, так и элемент (через out), в отличие от IndexOfMean и IndexOfMedian.
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
30.04.2025, 23:42
Ответы с готовыми решениями:

Культин "C# в задачах и примерах"
Культин C# в задачах и примерах http://www.books.ru/shop/books/517211 Кто читал?

Асинхронная модель программирования основанная на задачах
Поясните за асинхронный шаблон программирования основанный на задачах. Как мне, например,...

Явное приведение типов в задачах с наследованием
имеется следующий код: fgr = new Trng(); ((Trng)fgr).LengthA = getParameter("Длина a");...

25
Эксперт .NET
 Аватар для Usaga
14298 / 9383 / 1353
Регистрация: 21.01.2016
Сообщений: 35,374
01.05.2025, 03:51
Цитата Сообщение от Etyuhibosecyu Посмотреть сообщение
Та, разумеется, используется очень часто, в том числе с лямбдой.
Хз. Если пару раз за десять лет пришлось использовать, то хорошо.

Цитата Сообщение от Etyuhibosecyu Посмотреть сообщение
Вопрос, нужна ли такая функция?
Кому и для чего?

Добавлено через 27 секунд
Ты новую библиотеку задумал? С очень нужными неизвестно кому и для чего функциями?
1
 Аватар для belalugoci
475 / 294 / 29
Регистрация: 01.06.2018
Сообщений: 3,676
01.05.2025, 07:58
Цитата Сообщение от Etyuhibosecyu Посмотреть сообщение
Mean, которая считает среднее арифметическое. Та, разумеется, используется очень часто
где и кем? я сколько не считал среднее арифметическое оно всегда было из накопительных данных а не из последовательности
0
Труд вопреки насмешкам
 Аватар для Etyuhibosecyu
430 / 181 / 41
Регистрация: 13.07.2017
Сообщений: 4,640
Записей в блоге: 14
01.05.2025, 21:13  [ТС]
sau, не хотите ответить на этот вопрос? А то я в неопределенности - и опять мучиться с unit-тестом на функцию, которая не нужна, не хочу, и выпилить ее не могу, так как она может оказаться нужной. В итоге хожу целый день из угла в угол, как по дому, так и по Интернету, а бизнес простаивает.
0
 Аватар для sau
2773 / 2073 / 386
Регистрация: 22.07.2011
Сообщений: 7,820
01.05.2025, 22:37
Лучший ответ Сообщение было отмечено Etyuhibosecyu как решение

Решение

Etyuhibosecyu, на мой взгляд , в библиотеке должны быть популярные и востребованные функции в области ее применения , иначе можно напихать всего и вся и это будет просто мусорка , с которой никто не захочет разбираться/изучать. Средний арифметический лямбд - если эта библиотека коллекций для обычных прикладных задач и такая функция понадобится одному пользователю из 1000 , то он ее сам напишет , ибо не сложная , а если пользователи библиотеки это математики со своей спецификой - то наверно он возьмет какую нибудь матлаб и там все это есть. В общем , тут нужно смотреть на какую группу пользователей Вы ориентируетесь и в какой области ваша библиотека востребована , тогда будет видно нужна там эта функция или нет , для обычных смертных точно не нужна.
А еще библиотеки можно разбивать на части , каждую из которых оформлять своим пакетом , как дополнение , кому нужно просто скачает extension
1
Труд вопреки насмешкам
 Аватар для Etyuhibosecyu
430 / 181 / 41
Регистрация: 13.07.2017
Сообщений: 4,640
Записей в блоге: 14
01.05.2025, 22:41  [ТС]
sau, я правильно понял, что ваш ответ - удалить?
0
 Аватар для sau
2773 / 2073 / 386
Регистрация: 22.07.2011
Сообщений: 7,820
01.05.2025, 22:51
Цитата Сообщение от Etyuhibosecyu Посмотреть сообщение
sau, я правильно понял, что ваш ответ - удалить?
нет , мой ответ: нужно смотреть на какую группу пользователей Вы ориентируетесь и в какой области ваша библиотека востребована , тогда будет видно нужна там эта функция или нет
0
Труд вопреки насмешкам
 Аватар для Etyuhibosecyu
430 / 181 / 41
Регистрация: 13.07.2017
Сообщений: 4,640
Записей в блоге: 14
01.05.2025, 22:51  [ТС]
sau, простите, что не цитирую, с телефона неудобно, но библиотека на тему коллекций и около-LINQ, вообще-то планируется целый фреймворк, но тоже общего назначения, не для глубоких математиков. Для такого фреймворка (во многом похожего на сам .NET) такая функция - мусор?
0
 Аватар для sau
2773 / 2073 / 386
Регистрация: 22.07.2011
Сообщений: 7,820
01.05.2025, 22:53
Цитата Сообщение от Etyuhibosecyu Посмотреть сообщение
sau, простите, что не цитирую, с телефона неудобно, но библиотека на тему коллекций и около-LINQ, вообще-то планируется целый фреймворк, но тоже общего назначения, не для глубоких математиков. Для такого фреймворка (во многом похожего на сам .NET) такая функция - мусор?
ну для меня да , у меня ни разу такой надобности не было.
и ладно бы там было что-то реально сложное для самостоятельной реализации , а так , одна строчка кода.
1
Труд вопреки насмешкам
 Аватар для Etyuhibosecyu
430 / 181 / 41
Регистрация: 13.07.2017
Сообщений: 4,640
Записей в блоге: 14
01.05.2025, 22:57  [ТС]
sau, не вижу сразу ваших отредактированных сообщений, сейчас прочитал на 22:53, а я вроде упоминал про еще три смежных функции - FindMedian, FindMeanIndex и FindMedianIndex. Они тоже обычным смертным не нужны?
0
 Аватар для sau
2773 / 2073 / 386
Регистрация: 22.07.2011
Сообщений: 7,820
01.05.2025, 22:59
Цитата Сообщение от Etyuhibosecyu Посмотреть сообщение
Они тоже обычным смертным не нужны?
ну кто я такой , что бы решать за всех )
Вы , в первую очередь , раз уж решили свой велосипед организовать , должны были предварительно выделить целевую аудиторию , изучить проблемы - потребности , и тогда уже что-то пилить , и вопросов бы таких не было. А сейчас Вы на что опираетесь ?
1
Труд вопреки насмешкам
 Аватар для Etyuhibosecyu
430 / 181 / 41
Регистрация: 13.07.2017
Сообщений: 4,640
Записей в блоге: 14
01.05.2025, 23:07  [ТС]
sau, опираюсь на вдохновение. На что тянет - то и пишу, последние дни больше - большой список (с потенциально почти бесконечной емкостью, намного больше 2Г). А иногда по полмесяца вообще ничего не пишу, если энергия Луны на нуле. Это неправильно?
0
 Аватар для sau
2773 / 2073 / 386
Регистрация: 22.07.2011
Сообщений: 7,820
01.05.2025, 23:10
Цитата Сообщение от Etyuhibosecyu Посмотреть сообщение
Это неправильно?
Ну ради собственного удовольствия и если времени не жалко )
Если Вы не решаете проблематику конкретной группы , у которой наболело , то ваша библиотека просто не будет востребована , - продайте мне вашу "ручку"
0
Труд вопреки насмешкам
 Аватар для Etyuhibosecyu
430 / 181 / 41
Регистрация: 13.07.2017
Сообщений: 4,640
Записей в блоге: 14
01.05.2025, 23:16  [ТС]
sau, я так понимаю, решать проблематику конкретной группы, у которой наболело - означает, по сути, бесплатно выполнять её заказ, пусть даже и неявный (если она не обратилась за этим ко мне лично, а просто наболело абстрактно)?
0
 Аватар для sau
2773 / 2073 / 386
Регистрация: 22.07.2011
Сообщений: 7,820
01.05.2025, 23:20
Цитата Сообщение от Etyuhibosecyu Посмотреть сообщение
решать проблематику конкретной группы, у которой наболело - означает, по сути, бесплатно выполнять её заказ
Ну так весь опенсурс и строится . если крупным конторам некогда решать мелкие проблемы , то находятся энтузиасты , готовые решить их не только для себя но и для братьев по оружию )
Вы конечно можете это и продать , но тогда тем более следует прежде изучить рынок и потребности.
Цитата Сообщение от Etyuhibosecyu Посмотреть сообщение
с потенциально почти бесконечной емкостью, намного больше 2Г
Допустим если это действительно проблема для некоторого множества разработчиков , и для которой еще нет решения , тогда вокруг этого и стройте свой функционал , каким боком и зачем там нужна FindMean непонятно , люди скачают библиотечку конкретно для обхода какого-то ограничения и ничего лишнего им там не нужно.
0
Труд вопреки насмешкам
 Аватар для Etyuhibosecyu
430 / 181 / 41
Регистрация: 13.07.2017
Сообщений: 4,640
Записей в блоге: 14
01.05.2025, 23:30  [ТС]
sau, просто я знаю, что, например, один из моих любимых "типажей", Форд, не решал проблематику конкретной группы, у которой наболело, а действовал на опережение. Но, наверное, чтобы это действие на опережение не попало "в молоко", а то и просто в никуда, нужно иметь нетривиальный талант, сделать как Форд обычный смертный вряд ли сможет?

Добавлено через 7 минут
sau, добрался до компьютера (был процесс, который нельзя прервать).
Цитата Сообщение от sau Посмотреть сообщение
Допустим если это действительно проблема для некоторого множества разработчиков , и для которой еще нет решения
В Python, возможно, есть (к сожалению, не знаю, какой там лимит именно на список, но вроде там просто integer, без привязки к размеру ("резиновый"). Но известный мем про Python, думаю, знаете.
0
 Аватар для sau
2773 / 2073 / 386
Регистрация: 22.07.2011
Сообщений: 7,820
01.05.2025, 23:35
Цитата Сообщение от Etyuhibosecyu Посмотреть сообщение
один из моих любимых "типажей", Форд, не решал проблематику конкретной группы
Ну , новые идеи , разумеются , могут принести успех , хоть шанс и не велик , но делать еще одну из множества библиотек по работе с коллекциями , когда стандартная библиотека , думаю , многих вполне устраивает - это точно не путь Форд-а , Вы пытаетесь протоптать еще одну тропинку в том же направлении , не понимая кто/зачем/и почему по ней будет ходить.
0
Труд вопреки насмешкам
 Аватар для Etyuhibosecyu
430 / 181 / 41
Регистрация: 13.07.2017
Сообщений: 4,640
Записей в блоге: 14
01.05.2025, 23:38  [ТС]
Цитата Сообщение от sau Посмотреть сообщение
Вы то как раз пытаетесь протоптать новую тропинку в том же направлении
Ну почему же, параллельное хэш-множество, например, которое при 24 потоках на машине быстрее хэш-множества от Microsoft в 10 раз - это вполне новое направление.
0
 Аватар для sau
2773 / 2073 / 386
Регистрация: 22.07.2011
Сообщений: 7,820
01.05.2025, 23:54
Цитата Сообщение от Etyuhibosecyu Посмотреть сообщение
Ну почему же, параллельное хэш-множество, например, которое при 24 потоках на машине быстрее хэш-множества от Microsoft в 10 раз - это вполне новое направление.
Хорошо , тогда определите круг решаемых проблем , и поймете какие функции в этот круг не входят , не нужно распыляться во все стороны, затем подумайте кому это можно продать , презентуйте достоинства в сравнении , и если вокруг этого образуется группа - там уже у нее уточните где болит сильнее и куда стоит двигаться дальше , считайте это и будет ваша целевая аудитория.
А у нас спрашивать какая функция нужна , в библиотеке которая нам в принципе непонятно зачем - ну такое себе ).
0
Труд вопреки насмешкам
 Аватар для Etyuhibosecyu
430 / 181 / 41
Регистрация: 13.07.2017
Сообщений: 4,640
Записей в блоге: 14
02.05.2025, 00:12  [ТС]
sau, вот я выпилил все методы Find(All|Last)?(Mean|Median)(Index(es)?) ? - а теперь посмотрите хотя бы на заголовки классов и методов и тестов и подскажите - что еще не протестировано, а больше всего нуждается в тестировании? А что, возможно, стоит выпилить следующим?

Добавлено через 9 минут
Цитата Сообщение от sau Посмотреть сообщение
А у нас спрашивать какая функция нужна , в библиотеке которая нам в принципе непонятно зачем - ну такое себе ).
Вообще-то ваше мнение для меня авторитетно, как одного из немногих, хотя бы иногда и немного помогающих мне что-то сделать с моим ужасным вонючим кодом. А библиотека понятно зачем, чтобы исправлять косяки Microsoft хотя бы в чем-то.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
02.05.2025, 00:12
Помогаю со студенческими работами здесь

Сделать исключения в двух задачах на массив
Не могу сделать исключения в двух задачах на массив, я знаю синтаксис и как работает, но просто не...

Требуется ли использование блокировки в задачах (Task)?
Краткое описание моего класса: class MyClass { public Int32 Val { get; set; } = 0; ...

Использование общего кода в нескольких задачах (Task)
Подскажите, как правильно: Есть несколько экземпляров параллельно и асинхронно выполняющихся задач...

Как узнать, используется ли файл другим процессом
Снова здравствуйте. У меня вопрос: как можно проверить или узнать, используется ли файл другим...

Окно для регистрации автомобилей ( используется DataGridView )
Всем привет!!! ОООООчень нужна ваша помошь. Мне нужно сдавать домашку по формам и задача...


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru