Уравнения
Нашла код программки, хочу её изменить.
Подскажите пожалуйста как это сделать. Заранее спасибо =) 1. В подобных программах всегда берут процедуру F и конкретное уравнение. Как изменить код так, чтобы я могла с клавиатуры вводить Любое уравнение? Если я меняю строку - Код:
function f(x:real):real; Код:
function f(x:real):real; 2. Именно в этой программе много строк Код:
line(maxx2,0,maxx2,maxy); Код программы: Код:
uses crt, graph; |
Ой. я кажется поняла про Line. Это просто Оси координат рисуются?))
|
1) у вас в функцию f после считывания запихивается строка когда f объявлена real... при считывании функция не вычисляется!!!
|
тут надо будет делать некий парсер...
|
про real, я уже подумала... вот как бы так это всё красиво сделать?)
|
Вложений: 1
нужно делать разбор строк! например разбить всю введеную строку на подстроки разделенные пробелы. дальше вычленить арифметические знаки и скобки(относящиеся к арифметике) и построить дерево. дальше вычленить функции и подсчитать их значение.... например для функции
( x * x + sin(x + 1) - 1 ) / 4 дерево после разбоки будет таким ну это приблизительно там нужно еще учитывать расположение чисел относительно операций(чтоб не получилось что вместо x - 1 получилось 1 - x) ну и т.д. а дальше сворачивать это дерево в обратном порядке(подсчитывать значение). но это даже если не очень сложно то муторно... |
и всё-таки, я выбрала сложный путь. Может, если объяснить суть задания, будет проще помочь.
Нужна программа умеющая посчитать корни Любого уравнения. Будь то ax^2+bx+c или cos(x)-2x. вот как-то так... :tehnari_ru_325: |
ну я уже написал что надо делать. а дальше есть метод половинного деления, метод Ньютона и еще какой-то....
|
Часовой пояс GMT +4, время: 08:49. |
Powered by vBulletin® Version 4.5.3
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.