Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Общие вопросы по .NET и C# > количество элементов


Автор: derek 1.11.2008, 15:39
поставил в тупик простой вопрос. Представьте что есть деталь ABC состоящая из трех компонентов (a,b,c). Требуется посчтитать сколько возможно собрать деталей ABC при заданных количествах a,b и с

т.е. например при 1,2,2 - это 1ABC. при 3,3,3 - это 3 ABC и т.д.

надеюсь понятно объяснил. 
В голове есть мысль - но что то мне кажется что это можно сделать очень просто...подскажите как - с примером, будет вообще супер!

Автор: QryStaL 1.11.2008, 16:00
Код

int d = Math.Min(Math.Min(a, b), c);

Автор: derek 1.11.2008, 16:05
класс! спасибо smile 
кстати сорри что здесь, но сразу же - для php наверняка какой нить аналог есть?

Добавлено через 2 минуты и 19 секунд
да, нашел - так и называется min();

сорри за оффтоп еще раз )

Автор: derek 3.11.2008, 06:59
собственно главный тупик нефига не ушел. А как быть если деталь ABC состоит из нескольких комплектующих a,b,c?
например 
1ABC = 3a,2b,1c....

т.е. при заданных (9,6,3) программа должна покзаать что можно сделать 3 ABC?



Автор: QryStaL 3.11.2008, 10:21
Так это уже другой вопрос )

Код

            int nA = 3;
            int nB = 2;
            int nC = 1;

            int a = 9;
            int b = 6;
            int c = 3;
            int d = Math.Min(Math.Min(a / nA, b / nB), c / nC);

Автор: derek 3.11.2008, 16:06
QryStaL, 
smile супер! спасибо большое!
да, так на всякий случай - а как работать если не три элемента - а например 6. Как в этом случае пользоваться  Math.Min? 

Автор: QryStaL 3.11.2008, 16:08
Тут проще LINQ использовать

Код

            int[] a = { 5, 2, 4, 7, 8, 6 };
            int b = a.Min();

Автор: derek 4.11.2008, 05:41
QryStaL, ясно smile спасибо!

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)