Войти

Показать полную графическую версию : [решено] Ошибка в коде простейшей программы.


Warrior of light
25-12-2011, 15:33
Здравствуйте, помогите, пожалуйста разобраться с задачей.
Собственно задача так звучит: Найти среднее арифметическое членов, имеющих нечетные порядковые номера и являющихся четными числами.
procedure TForm1.Button2Click(Sender: TObject); var j:integer; p,s,k,m,nom,s1,s2:integer;
begin
if CheckBox4.Checked then begin
for j:=1 to n do begin
if (j mod 2 <> 0) and (StrToInt(StringGrid1.cells[j,1]) > 0) then begin
s1:=s1+1;
s2:=s2+StrToInt(StringGrid1.cells[j,1]);
end;
end;
m:=s2/s1;
Label4.Caption:='Средн. арифметическое'+IntToStr(m);
end
else
Label4.Caption:='';


end;
end.
Выдает ошибку, ссылаясь на строку, выделенную красным цветом. [Error] My_Unit3_4.pas(129): Incompatible types: 'Integer' and 'Extended'

Hector
25-12-2011, 16:37
Warrior of light, вероятно переменная m объявлена типом Integer, а нужен Extended ибо по правилам, результат деления не является Integer

Warrior of light
25-12-2011, 17:55
спасибо, разобрался.




© OSzone.net 2001-2012