Вопрос о прорамме, рисования графиков

Тема в разделе "Университет", создана пользователем Лаврик_Дмитрий, 17 ноя 2008.

  1. Лаврик_Дмитрий
    Оффлайн

    Лаврик_Дмитрий баннер

    Репутация:
    0
    Разумеется в любом учебнике по информатике есть несколько типов программ, которые позволяют увидеть наглядное построение графика зависимости X от Y. Вот, например, подредактированный код из среды Visual Basic 6.0.
    Dim X As Single, Y As Integer
    Private Sub Command1_Click()
    Picture1.Scale (-10, 10)-(10, -10)
    For X = -10 To 10 Step 0.001
    Picture1.PSet (X, Y)
    Next X
    Picture1.Line (-10, 0)-(10, 0)
    For Y = -10 To 10
    Picture1.PSet (Y, 0)
    Picture1.Print Y
    Next Y
    Picture1.Line (0, 10)-(0, -10)
    For Y = -10 To 10
    Picture1.PSet (O, Y)
    Picture1.Print Y
    Next Y
    То есть на Picture1 отображается график 10 на 10. Однако, программа очень неудобная. При данном коде будет просто пустые линии координат. А чтобы компьютер показывал зависимость надо менять в пятой строке кода (Picture1.PSet (X, Y)) Y на допустим X^3, или, например, X^2+Tan(X) .
    Программа наипростейшая и... очень-очень неудобная. Это ж постоянно надо выходить из запуска, лезть в код, менять, а потом снова заходить. Я пытался добовлять текстовое окно и код Y=Val(Text1.Text) но тогда Y не воспринимался.
    К уважаемым програмистам форума вопрос: "Что добавить, чтобы программа стала удобнее?" То есть, чтобы в графе "Y=" пишешь связь с X и автоматом рисует.
     
  2. evgeny
    Оффлайн

    evgeny Старожил

    Репутация:
    0
    А я обычно пользуюсь MATLAB-ом. Любой график можно построить при желании.
     
  3. gambler
    Оффлайн

    gambler Старожил

    Репутация:
    1
    Попробуйте использовать функцию EbExecuteLine
     
  4. Vladimirovich
    Оффлайн

    Vladimirovich Консультант

    Репутация:
    31
    Y сделать FUNCTION
    (Это если очень тупо)
     
  5. Лаврик_Дмитрий
    Оффлайн

    Лаврик_Дмитрий баннер

    Репутация:
    0
    Мда... Опять ничего не получилось. Всё-таки язык Visial Basik очень специфичен, да и сама программа слабовата. Выяснилось, что она может воспринимать только целую степень... Где это видано, где это слыхано....
    Что касается рисования графиков- ничего не получается. Видимо, данная система кода просто рисует Y="HZ" X :), без способности его восприятия в текстовом поле. Если что-то менять, то в корне.
     
  6. gambler
    Оффлайн

    gambler Старожил

    Репутация:
    1
    Где это видано? Дробные степени должны прекрасно восприниматься...
    Вы смотрели функцию EbExecuteLine? (в яндексе)
    Заменяем 5 строчку в Вашем коде..
    stringValue = "Picture1.PSet (X,"& Text1.Text &")"
    EbExecuteLine(StrPtr(stringValue), 0&, 0&, 1)
    —-
    Дмитрий, главное не отчаивайтесь! Ищите о обрящите! Лучше, конечно, на специализированных форумах..
    Или воспользуйтесь MATLAB-ом :)
     
  7. Лаврик_Дмитрий
    Оффлайн

    Лаврик_Дмитрий баннер

    Репутация:
    0
    Большое спасибо за помощь! Однако EbExecuteLine(StrPtr(stringValue), 0&, 0&, 1) выделяется красным цветом. Поищу ещё в яндексе.
    А на счёт возведения в степень всё очень туманно: пробовал писать и X^0.5, и X^(0.5), и X^(1/2).
    Зато, неожиданно для себя, составил возведение в степень в восьмеричной и шестнадцатеричной системах.
     
  8. gambler
    Оффлайн

    gambler Старожил

    Репутация:
    1
    Чтоб немного облегчить Ваши страдания, вот более-менее информативная ссылка
    http://ru.infocom.uz/more.php?id=131_0_1_0_M
     
  9. romus33
    Оффлайн

    romus33 Роман баннер

    Репутация:
    0
    А если возводить в степень через формулу с логарифмом
     
  10. Лаврик_Дмитрий
    Оффлайн

    Лаврик_Дмитрий баннер

    Репутация:
    0
    Проблема в том, что мы ещё не проходили тонкости логарифма. То бишь я отдельно от школы изучал подобное, но в свойства особо не вникал. Попробую... Ведь функцию "Ебл Х" по прежнему выделяет красным.
     
  11. Лаврик_Дмитрий
    Оффлайн

    Лаврик_Дмитрий баннер

    Репутация:
    0