Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 03.05.2008, 16:57   #1
Droid
Форумчанин
 
Аватар для Droid
 
Регистрация: 24.04.2008
Сообщений: 440
По умолчанию В чем ошибка ?

var
Form1: TForm1;
a,b,c,z: array [1..3,1..3] of real;
i,j,h,l,k: integer;
m,Lmax:real;
implementation

uses Unit2;

{$R *.dfm}

function tform1.lamb(m: real): real;
var
w: array [1..3] of real;
i1,j1,h1:integer;
begin
for i1:=1 to stringgrid1.ColCount do
begin
l:=1;
Lmax:=power(g+g+g,1/l);
w[1]:=a[i1,1]/a[i1,1]+a[i1,2]+a[i1,3];
w[2]:=a[i1,2]/a[i1,1]+a[i1,2]+a[i1,3];
w[3]:=a[i1,3]/a[i1,1]+a[i1,2]+a[i1,3];
end;
end;
1 старый программист, лучше новых 2-х
Droid вне форума Ответить с цитированием
Старый 03.05.2008, 16:58   #2
SunKnight
Участник клуба Подтвердите свой е-майл
 
Аватар для SunKnight
 
Регистрация: 14.12.2007
Сообщений: 1,434
По умолчанию

function lamb(m: real): real;
var
w: array [1..3] of real;
i1,j1,h1:integer;
begin
for i1:=1 to stringgrid1.ColCount do
begin
l:=1;
Lmax:=power(g+g+g,1/l);
w[1]:=a[i1,1]/a[i1,1]+a[i1,2]+a[i1,3];
w[2]:=a[i1,2]/a[i1,1]+a[i1,2]+a[i1,3];
w[3]:=a[i1,3]/a[i1,1]+a[i1,2]+a[i1,3];
Result:=значение;
end;

первое что бросается в глаза
Проповедую design patterns, верую в MVC, доверяю eXtrime programming.

Последний раз редактировалось SunKnight; 03.05.2008 в 17:02.
SunKnight вне форума Ответить с цитированием
Старый 03.05.2008, 17:03   #3
alexBlack
Участник клуба
 
Регистрация: 12.10.2007
Сообщений: 1,204
По умолчанию

Цитата:
for i1:=1 to stringgrid1.ColCount do
А ColCount = 3 ?
alexBlack вне форума Ответить с цитированием
Старый 03.05.2008, 17:04   #4
Droid
Форумчанин
 
Аватар для Droid
 
Регистрация: 24.04.2008
Сообщений: 440
По умолчанию

даже если 3 ставлю ошибку выдает !
1 старый программист, лучше новых 2-х
Droid вне форума Ответить с цитированием
Старый 03.05.2008, 17:05   #5
Droid
Форумчанин
 
Аватар для Droid
 
Регистрация: 24.04.2008
Сообщений: 440
По умолчанию

w[1]:=a[i1,1]/a[i1,1]+a[i1,2]+a[i1,3];
w[2]:=a[i1,2]/a[i1,1]+a[i1,2]+a[i1,3];
w[3]:=a[i1,3]/a[i1,1]+a[i1,2]+a[i1,3];
указывает на несовпадения типов
1 старый программист, лучше новых 2-х
Droid вне форума Ответить с цитированием
Старый 03.05.2008, 17:12   #6
SunKnight
Участник клуба Подтвердите свой е-майл
 
Аватар для SunKnight
 
Регистрация: 14.12.2007
Сообщений: 1,434
По умолчанию

Lmax:=power(g+g+g,1/l);
подозрительная строка
Проповедую design patterns, верую в MVC, доверяю eXtrime programming.
SunKnight вне форума Ответить с цитированием
Старый 03.05.2008, 17:13   #7
Droid
Форумчанин
 
Аватар для Droid
 
Регистрация: 24.04.2008
Сообщений: 440
По умолчанию

unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Menus, StdCtrls, Grids,Math;
const
a12=2;
a23=3;
a13=4;
g=1;
type
TForm1 = class(TForm)
MainMenu1: TMainMenu;
N1: TMenuItem;
N3: TMenuItem;
StringGrid1: TStringGrid;
Label1: TLabel;
Label2: TLabel;
Button1: TButton;
StringGrid2: TStringGrid;
StringGrid3: TStringGrid;
Memo1: TMemo;
procedure N1Click(Sender: TObject);
procedure N3Click(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure FormActivate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
function lamb(m: real): real;
end;

var
Form1: TForm1;
a,b,c,z: array [1..3,1..3] of real;
i,j,h,l,k: integer;
m,Lmax:real;
implementation

uses Unit2;

{$R *.dfm}

function tform1.lamb(m: real): real;
var
w: array [1..3] of real;
i1,j1,h1:integer;
begin
for i1:=1 to stringgrid1.ColCount do
begin
l:=1;
Lmax:=power(g+g+g,1/l);
w[1]:=a[i1,1]/a[i1,1]+a[i1,2]+a[i1,3];
w[2]:=a[i1,2]/a[i1,1]+a[i1,2]+a[i1,3];
w[3]:=a[i1,3]/a[i1,1]+a[i1,2]+a[i1,3];
memo1.lines.add(floattostr(w[1])+floattostr(w[2])+floattostr(w[3]));
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
for i:=1 to 3 do
for j:=1 to 3 do
for h:=1 to 3 do
begin
stringgrid1.Cells[i,i]:=inttostr(g);
stringgrid1.Cells[2,1]:=inttostr(a12);
stringgrid1.Cells[3,2]:=inttostr(a23);
stringgrid1.Cells[3,1]:=inttostr(a13);
stringgrid1.Cells[1,2]:=floattostr(1/a12);
stringgrid1.Cells[2,3]:=floattostr(1/a23);
stringgrid1.Cells[1,3]:=floattostr(1/a13);
end;
lamb(m);
end;
end.
Весь код
1 старый программист, лучше новых 2-х

Последний раз редактировалось Droid; 03.05.2008 в 17:18.
Droid вне форума Ответить с цитированием
Старый 03.05.2008, 17:24   #8
alexBlack
Участник клуба
 
Регистрация: 12.10.2007
Сообщений: 1,204
По умолчанию

Цитата:
Сообщение от Droid Посмотреть сообщение
w[1]:=a[i1,1]/a[i1,1]+a[i1,2]+a[i1,3];
w[2]:=a[i1,2]/a[i1,1]+a[i1,2]+a[i1,3];
w[3]:=a[i1,3]/a[i1,1]+a[i1,2]+a[i1,3];
указывает на несовпадения типов
Все-таки уточню.
Ошибка времени выполнения ?
Invalid floating point operation ?

Потому как компиляция проходит.

Если до, то это потому, что вы не заполняете массив A до нажатия Button1. И это не несоответствие типов.
alexBlack вне форума Ответить с цитированием
Старый 03.05.2008, 17:31   #9
Droid
Форумчанин
 
Аватар для Droid
 
Регистрация: 24.04.2008
Сообщений: 440
По умолчанию

чет я не понял как это так ? ;(
1 старый программист, лучше новых 2-х
Droid вне форума Ответить с цитированием
Старый 03.05.2008, 17:36   #10
Droid
Форумчанин
 
Аватар для Droid
 
Регистрация: 24.04.2008
Сообщений: 440
По умолчанию

как ее исправить можно ?
1 старый программист, лучше новых 2-х
Droid вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
ошибка с mod Kn793 Помощь студентам 2 16.07.2008 13:28
В чем ошибка!!! juden Общие вопросы Delphi 12 10.03.2008 08:53
в чем ошибка? Lonix Общие вопросы Delphi 2 24.03.2007 09:41