Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.03.14;
Скачать: CL | DM;

Вниз

Типы   Найти похожие ветки 

 
novi   (2004-02-29 19:35) [0]

Уважаемые мастера! Помогите разобраться с типами, у меня не запускается функция, ругается на тип.

function Count(var s:real):real;
var i: Integer; c: mas;
begin
n:=length(m);
for i:=1 to n-1 do
s:=s + c[i];
s:=s/n-1;
result:= s;
end;

procedure TForm1.N5Click(Sender: TObject);
var sb, s:Real; i:byte;
begin
sb:= m[i].Ball[Count(s)];
Edit1.Text:=FloatToStr(sb);
end;

Заранее благодарю.


 
Palladin ©   (2004-02-29 19:48) [1]

1 количество может быть не целым?
2 индекс точно не целым быть не может


 
Думкин ©   (2004-02-29 19:57) [2]

Да тут есть много на что ругаться.
1. Откуда n?
2. Причем тут length(m) когда c[i]?
3....И вообще.
Гдк ругается? А есть уже где-то Count?.....


 
Petr V. Abramov ©   (2004-02-29 20:23) [3]

А в c: mas; - мусор, но это Вы прочувствуете, когда функция запустится. Или обратите внимание на warning`и


 
Palladin ©   (2004-02-29 20:27) [4]


> Petr V. Abramov © (29.02.04 20:23) [3]

какие там warning"и... человек не может в сообщении об ошибке разобратся... а тут еще warning"и


 
jack128 ©   (2004-02-29 20:32) [5]


> 2 индекс точно не целым быть не может
Если m[i] - объект, то может быть.

А вообще авторы не помешало бы привести объявление ВСЕХ переменных, используемых в коде..


 
novi   (2004-02-29 20:38) [6]

Type Student = record
Fam: String[30];
Ball: Integer;
end;
baza = array of Student;
mas = array [1..100] of Integer;
var
Form1: TForm1;
m : baza ;
f : File of Student ;
n : byte ;
Filename: String[50];


 
Palladin ©   (2004-02-29 20:40) [7]


> novi (29.02.04 20:38) [6]

ну а теперь скопируй сюда все твои сообщения об ошибках и расскажи как ты их понимаешь


 
jack128 ©   (2004-02-29 20:51) [8]


> n:=length(m);
использовать глобальную переменную для хранения длины дин массива - это гениальнное решение ;-)

> Student = record
> Fam: String[30];
> Ball: Integer;
> end;
>


> sb:= m[i].Ball [Count(s)];
Что это??


 
novi   (2004-02-29 21:12) [9]

sb:= m[i].Ball[Count(s)];
Это нахождение среднего балла.


 
jack128 ©   (2004-02-29 21:20) [10]

Ball - это целое число, а ты обращаешься с ним как с массивом


 
YurikGl ©   (2004-02-29 21:21) [11]

У тебя Count возвращает real, а индекс должен быть целым


 
Palladin ©   (2004-02-29 21:22) [12]

ох.. бедняга... абсолютно не соображает что делает...

function СреднийМяч:real;
var
i:integer;
begin
result:=0;
if Length(м)=0 then exit;
for i:=0 to Length(м)-1 do
result:=result+м[i].мяч;
result:=result/Length(м);
end;

будет работать если ты все верно читаешь в свою сверх базу...



Страницы: 1 вся ветка

Текущий архив: 2004.03.14;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.02 c
1-43641
Мыш
2004-03-02 11:43
2004.03.14
TChart, как задать нач. и конечное значение горизонтальной оси?


1-43553
Image
2004-02-27 19:09
2004.03.14
Hello all !!! Как извлечь JPEG картинку из TStream и


3-43270
Zilog
2004-01-23 13:25
2004.03.14
DBGrid - напонятный глюк.


1-43678
Ivolg
2004-03-01 18:18
2004.03.14
Прозрочность


8-43688
Klon
2003-11-11 12:01
2004.03.14
*.bmp в другие форматы.