Модераторы: Akina
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> MIN и МАХ, помогит вспомнить ф-ию 
:(
    Опции темы
FCSM
Дата 29.6.2006, 08:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 2
Регистрация: 29.6.2006

Репутация: нет
Всего: нет



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


ЗЫ. написал два вопроса в одной теме, т.к. они оооочень похожи... 
PM MAIL   Вверх
Naghual
Дата 29.6.2006, 09:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1893
Регистрация: 15.5.2004
Где: Украина, Днепр

Репутация: 26
Всего: 49



Лично я о таких родных для Барсика функциях не знаю.
Всегда писал свои функции. 


--------------------
Я желаю всем Счастья!
PM ICQ Skype   Вверх
mihanik
Дата 29.6.2006, 09:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


-=Белый Медведь=-
****


Профиль
Группа: Комодератор
Сообщений: 4054
Регистрация: 24.4.2006
Где: г. Тверь

Репутация: 11
Всего: 109



В Excel-е такая фишка есть среди обычных функция, которые можно писать в формуле ячейки...
А в бейсике...
Посмотри тут
 
А вообще-то Naghual прав... 

Это сообщение отредактировал(а) mihanik - 29.6.2006, 09:14


--------------------
Программистами не рождаются, - это родовая травма...
user posted imageuser posted image
PM MAIL WWW ICQ   Вверх
FCSM
Дата 29.6.2006, 09:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 2
Регистрация: 29.6.2006

Репутация: нет
Всего: нет



Не smile 
Ну Ифами это понятно как писать:-)
Но всё равно спасибо...
Просто, не хотелось заморачиваться с ифами - думал есть какая то ф-ия отдельная.
Ну ладно... Потрачу 10 минут жизни на написание этой ф-ии  smile  
PM MAIL   Вверх
Тутанхамец
Дата 29.6.2006, 09:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 612
Регистрация: 10.10.2005
Где: в пирамидЕ!

Репутация: 4
Всего: 6



А прикольно было бы один раз написать несложный класс, который представляет собой числовой ряд со статистическими характеристиками - min, max, средние всякие там, квадратичные отклонения и пр. 
PM MAIL   Вверх
mihanik
Дата 29.6.2006, 09:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


-=Белый Медведь=-
****


Профиль
Группа: Комодератор
Сообщений: 4054
Регистрация: 24.4.2006
Где: г. Тверь

Репутация: 11
Всего: 109



Цитата

А прикольно было бы один раз написать несложный класс, который представляет собой числовой ряд со статистическими характеристиками - min, max, средние всякие там, квадратичные отклонения и пр.  



Может, займёмся?  smile  smile  


--------------------
Программистами не рождаются, - это родовая травма...
user posted imageuser posted image
PM MAIL WWW ICQ   Вверх
Тутанхамец
Дата 29.6.2006, 17:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 612
Регистрация: 10.10.2005
Где: в пирамидЕ!

Репутация: 4
Всего: 6



Может и займемся. smile Класс, представляющий статистический ряд чисел. С экселем заведомо не сравнится, но, думаю, будет иногда полезен. Хотя бы как упражнение для моих учеников. smile  Я набросал примитивный вариант (см. аттач). Там есть: 
1) добавление элемента в конец ряда
2) вставка в заданную позицию
3) удаление из заданной позиции
4) метод Evaluate (пока ищет только максимум, минимум и их индексы). 
5) свойство evalonfly - если true, то вычисляемые значения автоматически меняются после изменения ряда. 
6) свойства getMax, getMin, getMinIndex и getMaxIndex. 
7) очистка ряда

Там нету (в частности):

1) сортировка (лучше несколько способов, чтобы сортировалось разными в зависимости от количества элементов)

2) стат. показателей типа средней, моды, медианы etc. 

Думаю, раз уж класс будет искать много показателей, то их вычисления надо перенести в соответствующие свойства (getMax, getMin...). Иначе метод evaluate будет каждый раз выполнять много лишней работы. 

mihanic, продолжишь? smile 

  

Это сообщение отредактировал(а) Тутанхамец - 29.6.2006, 17:50

Присоединённый файл ( Кол-во скачиваний: 1 )
Присоединённый файл  StatRow.rar 1,86 Kb
PM MAIL   Вверх
mihanik
Дата 30.6.2006, 06:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


-=Белый Медведь=-
****


Профиль
Группа: Комодератор
Сообщений: 4054
Регистрация: 24.4.2006
Где: г. Тверь

Репутация: 11
Всего: 109



Ща позырим... smile  


--------------------
Программистами не рождаются, - это родовая травма...
user posted imageuser posted image
PM MAIL WWW ICQ   Вверх
mihanik
Дата 30.6.2006, 07:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


-=Белый Медведь=-
****


Профиль
Группа: Комодератор
Сообщений: 4054
Регистрация: 24.4.2006
Где: г. Тверь

Репутация: 11
Всего: 109



Ну, что ж...
Очень даже неплохо. Даже я всё понял.  smile 
Я, например, в работе с классами не силён и поэтому очень редко их использую...

А давай-ка я сортировку сделаю... ПУЗЫРЬКОМ!  smile  smile 
 


--------------------
Программистами не рождаются, - это родовая травма...
user posted imageuser posted image
PM MAIL WWW ICQ   Вверх
Akina
Дата 30.6.2006, 11:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20581
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 34
Всего: 454



Цитата(mihanik @  30.6.2006,  08:14 Найти цитируемый пост)
А давай-ка я сортировку сделаю... ПУЗЫРЬКОМ! 

Зачем делать абы как, если можно сделатьхорошо? уж прикручивать - так нормальный сорт... бери на algolist.manual.ru и переписывай на VB. 


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
mihanik
Дата 30.6.2006, 12:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


-=Белый Медведь=-
****


Профиль
Группа: Комодератор
Сообщений: 4054
Регистрация: 24.4.2006
Где: г. Тверь

Репутация: 11
Всего: 109



Akina!

Это же была шутка юмора! (Про пизирёк...) smile 
Что ж мы?.. Не тупее паровоза...
Фишку рубим! smile  


--------------------
Программистами не рождаются, - это родовая травма...
user posted imageuser posted image
PM MAIL WWW ICQ   Вверх
Akina
Дата 30.6.2006, 15:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20581
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 34
Всего: 454



А можно поступить и так:

Код

Public Function Min(var1 As Variant, ParamArray var2() As Variant) As Variant
Dim i As Integer
Min = var1
For i = LBound(var2) To UBound(var2)
    If Min > var2(i) Then Min = var2(i)
Next i
End Function

Public Function Max(var1 As Variant, ParamArray var2() As Variant) As Variant
Dim i As Integer
Max = var1
For i = LBound(var2) To UBound(var2)
    If Max < var2(i) Then Max = var2(i)
Next i
End Function
 

Как видим, одни и те же функции можно использовать как для получения мин/макс числа, так и мин/макс строки... главное - не перемешать типы в одном вызове. 


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
Тутанхамец
Дата 1.7.2006, 10:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 612
Регистрация: 10.10.2005
Где: в пирамидЕ!

Репутация: 4
Всего: 6



Akina, а зачем передавать отдельно var1? Почему не передавать всё в одном парамэррэе, а за минимум не брать первый его элемент? Чтобы можно было, скажем, выяснить, является ли число X меньшим, чем ряд чисел? Или есть еще какой-то резон? 
PM MAIL   Вверх
Тутанхамец
Дата 1.7.2006, 11:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 612
Регистрация: 10.10.2005
Где: в пирамидЕ!

Репутация: 4
Всего: 6



Ну и если кому интересно, то вот новая версия класса ряда. Так он лично мне куда больше нравится.

Перспективы:

- сортировка (Миханик, ты не передумал? smile );
- сохранение/чтение в/из файл(а);
- копирование объекта этого класса в другой объект того же класса (как в делфи метод assign);
- добавление легенды и названия ряда;
- подумать насчет весов и комментариев к каждому члену ряда;
- подумать насчет операций с двумя объектами-рядами (например, вычитание членов одного ряда из другого);
- и добавление функций, вычисляющих показатели (дело долгое и монотонное... smile ). 
 

Присоединённый файл ( Кол-во скачиваний: 2 )
Присоединённый файл  StatRow.rar 2,84 Kb
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "VB6"
Akina

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по VB обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • Используйте теги [code=vb][/code] для подсветки кода. Используйтe чекбокс "транслит" (возле кнопок кодов) если у Вас нет русских шрифтов.


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Akina.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | VB6 | Следующая тема »


 




[ Время генерации скрипта: 0.0540 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.