Экспертная система Delphi.int.ru

Сообщество программистов
Общение, помощь, обмен опытом

Логин:
Пароль:
Регистрация | Забыли пароль?

Delphi.int.ru Expert

Другие разделы портала

Переход к вопросу:

#   

Статистика за сегодня:  


Лучшие эксперты

Подробнее »



Вопрос # 5 388

/ вопрос открыт /

Приветствую, уважаемые эксперты!
Мне нужно написать программу для вычисления систем нелинейных уравнений методом Ньютона. Я уже писал эту программу в Паскале, но в Дэлфи никак не могу. Подскажите кто как может. В программе должна быть возможность решать не менее 2х уравнений одновременно, с постороением графика. Никак не могу справиться сданной задачей. Неделю пытаюсь, уже не знаю куда обратиться...

К вопросу прикреплён файл. Загрузить » (срок хранения: 60 дней с момента отправки вопроса)

Maks6169 Вопрос ожидает решения (принимаются ответы, доступен мини-форум)

Вопрос задал: Maks6169 (статус: Посетитель)
Вопрос отправлен: 8 июня 2011, 01:19
Состояние вопроса: открыт, ответов: 0.


Мини-форум вопроса

Всего сообщений: 15; последнее сообщение — 14 июня 2011, 06:08; участников в обсуждении: 5.
Мережников Андрей

Мережников Андрей (статус: Абитуриент), 8 июня 2011, 05:59 [#1]:

если есть рабочая программа на паскале, то в чем проблема перенести ее в Delphi? Отличия будут только в вводе/выводе информации.
min@y™

min@y™ (статус: Доктор наук), 8 июня 2011, 08:18 [#2]:

Цитата (Maks6169):

Никак не могу справиться сданной задачей. Неделю пытаюсь, уже не знаю куда обратиться...

Ну а конкретнее? Что не получается-то?
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
Maks6169

Maks6169 (статус: Посетитель), 8 июня 2011, 11:00 [#3]:

я пытался перенести, но либо программа работает не так как ожидалось, либо ошибку выдаёт, а про график я вообще молчу, ни разу с таким не сталкивался.
min@y™

min@y™ (статус: Доктор наук), 8 июня 2011, 11:24 [#4]:

Да не надо ничего переносить! Надо написать заново, с нуля, только основываясь на отлаженном паскальном коде. Этот код содержит в себе алгоритм действий, который надо воспроизвести на delphi.
А построение графика - это отдельная подзадача. За неё берись позже, когда будет готова первая часть.
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
Maks6169

Maks6169 (статус: Посетитель), 8 июня 2011, 11:32 [#5]:

спасибо за совет, попробую.
nar

nar (статус: Посетитель), 8 июня 2011, 20:51 [#6]:

паскалевский код в студию.
Maks6169

Maks6169 (статус: Посетитель), 10 июня 2011, 01:55 [#7]:

у меня ещё одна проблема, я не знаю как ввести несколько уравнений с синусами, косинусами, квадратами и т. д. И сделать с ними определённые операции. Всё время выскакивает ошибка.
bugmenot

bugmenot (статус: 3-ий класс), 10 июня 2011, 02:15 [#8]:

function Y(X: Real): Real;
begin
  Y := 2*Sin(X)/(Sqr(Cos(X))/3);
end;
виконання програми розпочинається з того самого мiсця, де призупинилося.

Maks6169

Maks6169 (статус: Посетитель), 10 июня 2011, 02:19 [#9]:

вся проблема в том что мне нужно ввести данное уравнение с клавиатуры...
min@y™

min@y™ (статус: Доктор наук), 10 июня 2011, 08:19 [#10]:

Цитата (Maks6169):

вся проблема в том что мне нужно ввести данное уравнение с клавиатуры...

А ты сколько лет уже програмируешь? Для решения такой задачи нужен нехилый стаж за плечами.
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
bugmenot

bugmenot (статус: 3-ий класс), 10 июня 2011, 18:11 [#11]:

Цитата (Maks6169):

ввести данное уравнение с клавиатуры...

Боян, юзай поиск. Множество раз уже поднимался вопрос.

Цитата (min@y™):

нужен нехилый стаж за плечами
Как будто стаж внезапно перейдет в качество... Поиск. Там название книги с курсом.
виконання програми розпочинається з того самого мiсця, де призупинилося.

Maks6169

Maks6169 (статус: Посетитель), 12 июня 2011, 19:16 [#12]:

кароче нифига у меня не получается, сделал только вот чё
unit Unit1;
 
interface
 
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;
 
type
  TForm1 = class(TForm)
    Edit1: TEdit;
    Edit2: TEdit;
    Label1: TLabel;
    Edit3: TEdit;
    Edit4: TEdit;
    Label2: TLabel;
    Button1: TButton;
    Label4: TLabel;
    Edit7: TEdit;
    Label5: TLabel;
    Label6: TLabel;
    Label7: TLabel;
    Label8: TLabel;
    Label9: TLabel;
    Label3: TLabel;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;
 
var
a,b,e,x,en:real;
 n,i,c,d:integer;
  fi:text;
  Form1: TForm1;
 
implementation
 
{$R *.dfm}
 
 function f(x:real;n:integer):real;
begin
  case n of
  1:  f:=x*x*x*x+d*x*x+x+c;
  2:  f:=x*x*x+c*x;
  3:  f:=x*x*c+d*x;
end;
end;
function f1(x:real;n:integer):real;
begin
case n of
1:  f1:=4*x*x*x+2*d*x+1;
2:  f1:=3*x*x+c;
3:  f1:=2*x*c+d;
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
 
a:=StrToInt(Edit1.Text);
b:=StrToInt(Edit2.Text);
c:=StrToInt(Edit3.Text);
d:=StrToInt(Edit4.Text);
n:=StrToInt(Edit7.text);
en:=abs(a-b);
Label5.Caption:=FloatToStr(x);
x:=b;
i:=1;      
while (abs(en)>e) do begin     
x:=x-f(x,n)/f1(x,n);
en:=abs(x-b);
b:=x;
i:=i+1;
end;
end;
end.
но даже это не пашет, кто может подправить чтобы 2 уравнения вычислялись?
Maks6169

Maks6169 (статус: Посетитель), 13 июня 2011, 00:09 [#13]:

или чтобы это хоть как то работало...
Maks6169

Maks6169 (статус: Посетитель), 13 июня 2011, 22:58 [#14]:

хоть скажите тут хоть чтото правильное есть или нет?
Мережников Андрей

Мережников Андрей (статус: Абитуриент), 14 июня 2011, 06:08 [#15]:

Цитата (Maks6169):

while (abs(en)>e) do begin

где присваивается значение e?

Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте.

Версия движка: 2.6+ (26.01.2011)
Текущее время: 22 февраля 2025, 11:54
Выполнено за 0.03 сек.