Показать сообщение отдельно
  #15  
Старый 07.03.2008, 15:29
Phedor Phedor вне форума
Начинающий
 
Регистрация: 28.02.2008
Сообщения: 118
Репутация: 21
По умолчанию

А вам не кажется глупым два цикла делать тем более что мы САМИ генерируем значения массива?

Код:
procedure TfmExample.BEnterClick(Sender: TObject);
const
  Max_Value = 100;
var
  i, Min, Max, Sum: integer;
  m: array of Integer;
begin
  Randomize;
  Sum := 0;
  setlength(m, StrToInt(Edit1.Text));
  for i:=0 to length(m)-1 do
  begin
    m[i] := Round(Random(MaxValue));
    inc(Sum, m[i]);
    if i=0 then
    begin
      Max := m[i];
      Min := m[i];
    end else begin
      if m[i]<Min then Min := m[i];
      if m[i]>Max then Max := m[i];
    end;
  end;
 mmOutput.Lines.Clear;
 mmOutput.Lines.Add('Минимальное значение данного массива равно '+inttostr(Min));
 mmOutput.Lines.Add('Среднее арифметическое число данного массива равно '+floattostr(Sum/length(m)));
 mmOutput.Lines.Add('Максимальное значение данного массива равно '+inttostr(Max));
end;
Ответить с цитированием