Другие языки программирования и технологии

помогите решить задачку, на VBA для Excel

помогите огласить данный и массивы нужного размера, и сама важная проблема для меня это придумать цикл по ограничениям, цикл по поиску функции цели(максимума)не обязателенТуристическая фирма, помимо своих непременных обязанностей, также занимается изготовление двух видов загранпаспотров: срочный и обычные. Для этого он обрабатывается последовательно тремя специалистами. Время затрачиваемое на обработку документов каждым специалистом приведено в таблице.1-ый Специалист 2-ой Специалист 3-ий СпециалистСрочный 0,6 0,5 0,3Обычный 0,35 0,4 0,5Стоимость человеко-часа составляет соответственно50, 70, 100. При этом рабочая неделя составляет 5 дней по 8 часов. Цена на срочный паспорт составляет 600, а на обычный — 400.Требуется составить план оптимального изготовления паспортов двух видов, при котором еженедельная прибыль будет максимальнаПожалуйста помогите решить, для того кто знает эту программу это пятиминутное дело...а я в это просто ни бумбум
ладн, накидаю примерный алгоритм для одного человека.
1. считаем количество часов в рабочей неделе: 5*8=40.
2. считаем сколько он может сделать обычных паспортов Max=40/.35
3. Делаем цикл от максимального числа до 0 (или от нуля до максимального)) ) и для каждой итерации считаем сколько бабок с паспортов мы имеем
примерный код, правда без проверки
Sub Pasporta()
Dim Spec(3, 5)

Spec(1, 1) = 0.6
Spec(1, 2) = 0.35
Spec(1, 3) = 50
Spec(2, 1) = 0.5
Spec(2, 2) = 0.4
Spec(3, 3) = 70
Spec(3, 1) = 0.3
Spec(3, 2) = 0.5
Spec(3, 3) = 100

RabNedel = 5 * 8
PriceNormal = 400
PriceSpeed = 600
BablosTotal = 0

For i = 1 To 3
MaxBabla = 0
MaxBablaNormalCount = 0
MaxBablaSpeedCount = 0

For x = 0 To RabNedel / Spec(i, 1)
NormalCount = x
SpeedCount = Int((RabNedel - Spec(i, 1) * x) / Spec(i, 2))
Bablos = NormalCount * PriceNormal + SpeedCount * PriceSpeed - RabNedel * Spec(i, 3)
If Bablos > MaxBabla Then
MaxBabla = Bablos
Spec(i, 4) = NormalCount
Spec(i, 5) = SpeedCount
End If
Next x
BablosTotal = BablosTotal + MaxBabla
Next i

'Вывод результатов
msg = "Бабла всего: " + Str(BablosTotal) + Chr(10) + Chr(13)
For i = 1 To 3
msg = msg + "Специалист: " + Str(i) + " обычных паспортов " + Str(Spec(i, 4)) + " срочных " + Str(Spec(i, 5)) + Chr(10) + Chr(13)
Next i
MsgBox msg

End Sub
MS
Max Soveliev
8 391
Лучший ответ
Айрат Мулюков Благодарности моей нет границ!!!!)))
VBA я знаю, но чего вы хотите нифига не понял.
И, кажется у вас первый и второй специалисты с обычными паспортами работают медленне, чем с обычными, это нормально?
Айрат Мулюков эта задача решена у меня в Excel...теперь мне нужно решить её вторым способом на VBA...а даже не знаю с чего начать