Важная информация
Показано с 1 по 5 из 5

Тема: Прошу помощи в решении задачи с циклами и графиками...

  1. #1 Прошу помощи в решении задачи с циклами и графиками... 
    Новичок
    Регистрация
    21.12.2011
    Сообщений
    6
    Сказал(а) спасибо
    0
    Поблагодарили 0 раз(а) в 0 сообщениях
    Доброго времени суток, уважаемые! ))
    Прошу Вашей помощи.
    Необходимо составить укрупненный алгоритм и программу на QBasic для решения задачи по своему варианту.
    Удельные затраты на выпуск продукции, складские и транспортные расходы, общие затраты описываются эмпирическими формулами:
    P = (28 – F / 10) / (Q ^ (a – F / 50) + b)
    W = 0.5 + (0.05 + F / 100) * Q ^ (c – F / 100)
    Total = P + W
    Где
    a=0,5;
    b=1,28;
    c=1,01;
    P - удельные затраты на выпуск продукции (руб. /тыс. шт.);
    W - затраты на складские и транспортные расходы (руб. /тыс. шт.);
    Total – общие затраты (руб. /тыс. шт.);
    Q - объем выпуска продукции (тыс. шт.);
    F – безразмерный фактор, учитывающий особенности производства;
    Вычислить и построить график изменения P, W, Total для изменения выпуска Q в пределах 0..40 с шагом 0,1 и фактора F в пределах 0..100 с шагом 4.
    А также какое значение принимает Q (Минимальный выпуск продукции) при минимуме общих затрат (Total)?

    Написал я примерно это.

    screen 12
    a=0.5
    b=1.28
    c=1.01
    for F=0 to 100 step 4
    for Q=0 to 40 step 0.1
    P = (28 – F / 10) / (Q ^ (a – F / 50) + b)
    W = 0.5 + (.05 + F / 100) * Q ^ (c – F / 100)
    Total = P + W
    pset (Q, Total)
    pset (Q, P)
    pset (Q, W)
    next Q
    next F

    но при выполнении выдается ошибка "Incorrect function call". и подсвечивается выражение "Р=.....", то есть проблема где-то в нём...
    Не могу понять, что не так. Очень надеюсь на Вашу скорую помощь! ))

    P.S. на всякий случай приложил файл с задачей (это Rar архив с doc внутри, просто тут ограничение для док файлов всего лишь 19 Кбайт.), там есть график,если он кнешно поможет.[Ссылки могут видеть только зарегистрированные пользователи. ]
    Ответить с цитированием  
     

  2. #2  
    Гуру Аватар для Абадябер
    Регистрация
    09.12.2010
    Адрес
    Беларусь, Минск
    Сообщений
    1,219
    Сказал(а) спасибо
    302
    Поблагодарили 176 раз(а) в 144 сообщениях
    Записей в блоге
    5
    Уже несколько поздновато у меня, и некогда разбираться более подробно, но вот что я могу сказать:
    В выражении P = (28 – F / 10) / (Q ^ (a – F / 50) + b) скорее всего происходит некорректное действие, связанное с чем то вроде деления на 0, или подобным, что приводит к ошибке.
    Смотрите, если заменить значения цикла по Q с for Q=0 to 40 step 0.1 на for Q=0.1 to 40 step 0.1 то программа запускается и работает, и даже строит нечто похожее на график.
    Дружба-магия-радость!
    Ответить с цитированием  
     

  3. #3  
    Новичок
    Регистрация
    21.12.2011
    Сообщений
    6
    Сказал(а) спасибо
    0
    Поблагодарили 0 раз(а) в 0 сообщениях
    Действительно рисует, только блин сильно мелко.... и ничего там не понятно..
    Ответить с цитированием  
     

  4. #4  
    Новичок
    Регистрация
    21.12.2011
    Сообщений
    6
    Сказал(а) спасибо
    0
    Поблагодарили 0 раз(а) в 0 сообщениях
    Внес некоторые изменения в код
    вот:
    SCREEN 12
    a = .5 'описываем переменные
    b = 1.28
    c = 1.01
    MinTotal = 999999 'Это чтобы было с чем сравнивать'
    MinQ = 999999
    FOR Q = .1 TO 40 STEP .1
    FOR F = 0 TO 100 STEP 4
    P = (28 - F / 10) / (Q ^ (a - F / 50) + b)
    W = .5 + (.05 + F / 100) * (Q ^ (c - F / 100))
    Total = P + W
    IF Total < MinTotal THEN MinTotal = Total
    MinQ = Q
    PSET (10 * Q, 10 * Total) ' 10 для увеличения
    PSET (10 * Q, 10 * W), 2
    PSET (10 * Q, 10 * P), 4
    NEXT F
    NEXT Q
    LOCATE 15, 1
    PRINT "Belij - (Q, Total)"
    PRINT "Zelenij - (Q, W)"
    PRINT "Krasnij - (Q, P)"
    PRINT "Q=", MinQ; ", pri Total=", MinTotal

    и теперь вот не знаю как сделать так, чтобы при нахождении MinTotal он выдавал значение Q соответствующее этому MinTotal
    Жду вестей)))
    Ответить с цитированием  
     

  5. #5  
    Новичок
    Регистрация
    21.12.2011
    Сообщений
    6
    Сказал(а) спасибо
    0
    Поблагодарили 0 раз(а) в 0 сообщениях
    Огромное спасибо...(((
    Ответить с цитированием  
     

Информация о теме
Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Ответов: 6
    Последнее сообщение: 22.05.2012, 16:15
  2. Помогите решить задачи с циклами
    от Дмитрий 1993 в разделе QBasic
    Ответов: 10
    Последнее сообщение: 19.02.2012, 22:51
  3. Ответов: 3
    Последнее сообщение: 05.01.2012, 15:34
  4. Ответов: 2
    Последнее сообщение: 22.12.2011, 12:28
  5. Программы для помощи школьнику
    от Kakos_nonos в разделе Проекты на Pascal
    Ответов: 5
    Последнее сообщение: 26.07.2011, 18:00
Ваши права
  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •