Код:
var
Form1: TForm1;
N, i, p ,s: integer;
A: array [1..100] of integer;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
var
i : Integer;
begin
N := StrToInt(InputBox('5.16','Введи количество чисел','')) ;
p:= 0;
for i:=1 to n do
begin
A[i]:= StrToInt(InputBox('5.16','Введи числo','')) ;
p := p + A[i] ;
end;
s := Round(p / n); // Сдесь ошибка// уже нет =)
Edit1.Text:= FloatToStr(s);
end;
end.
Поясню ошибок в выложенном коде моя делфа нашла 3:
1. ';' после 'end';
2. Приравнивание Integer Real'ное (

) значение;
3. И переменная в цикле должна быть локальной.
Round - (насколько я знаю) округляет real до Integer
Можно так же через div:
А проще всего просто сделать s : Real:
Код:
var
Form1: TForm1;
N, i, p : Integer;
s: Real;
A: array [1..100] of integer;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
var
i : Integer;
begin
N := StrToInt(InputBox('5.16','Ââåäè êîëè÷åñòâî ÷èñåë','')) ;
p:= 0;
for i:=1 to n do
begin
A[i]:= StrToInt(InputBox('5.16','Ââåäè ÷èñëo','')) ;
p := p + A[i] ;
end; // А ТУТ!!!
s := p / n ; // ОШИБКА НЕ ТУТ!!!
Edit1.Text:= FloatToStr(s);
end;
end.
На самом деле ошибка строкой выше - надо после end ставить ';'

.
P.s. ...на всяк случай если в инпут бокс нажать "Отмена" ниче хорошего не выйдет!...