| 
| 
 | Вопрос # 3 616/ вопрос открыт / | 
 |  Здравствуйте,уважаемые эксперты!мне нужна консультация по нижеследующей программе 
|  |   Вопрос задал: Виноградов Алексей/Prog_man (статус: Посетитель)Вопрос отправлен: 5 января 2010, 01:04
 Состояние вопроса: открыт, ответов: 2.
 |  Ответ #1. Отвечает эксперт: Паровоз Здравствуйте, Виноградов Алексей/Prog_man!
 var
  a:array[1..20] of Extended;
 
procedure TForm1.Button1Click(Sender: TObject);
var
  i:Integer;
  Min,Max,Average:Extended;
begin
  Min:=a[1];
  Max:=a[1];
  Average:=a[1]/20;
  for i:=2 to 20 do
  begin
    if a[i]<Min then Min:=a[i];
    if a[i]>Max then Max:=a[i];
    Average:=Average+a[i]/20;
  end;
end;
|  | Ответ отправил: Паровоз (статус: 10-ый класс)Время отправки: 5 января 2010, 10:35
 
 |  Ответ #2. Отвечает эксперт: Жикльор Здравствуйте, Виноградов Алексей/Prog_man!
 Вот другой пример! Код в приложении:
 Приложение:Переключить в обычный режим program Project2; {$APPTYPE CONSOLE} uses  SysUtils;varmas: array [1..20] of integer;Middle,Suma: real;i,Max,Min: integer;beginRandomize;for i:=1 to 20 do  mas[i]:=Random(5);Max:=mas[1];Min:=mas[1];Middle:=0;Suma:=0;for i:=1 to 20 do  begin  if mas[i] > Max then Max:=mas[i];  if mas[i] < Min then Min:=mas[i];  Suma:=Suma + mas[i];  end;Middle:=Suma/20;writeln('Min = ',Min,' Max = ',Max,' Middle = ',Middle:0:2);readln;end.
|  | Ответ отправил: Жикльор (статус: 5-ый класс)Время отправки: 5 января 2010, 15:24
 
 |  
 Мини-форум вопросаВсего сообщений: 1; последнее сообщение — 5 января 2010, 15:41; участников в обсуждении: 1. 
|   | T$imokhin (статус: 1-ый класс), 5 января 2010, 15:41 [#1]:Делить на 20 лучше в конце, а не каждый раз. При нахождении минимума(максимума) лучше делать "допустим первое число минимум(максимум)"
 При подсчёте суммы - сумма это первый элемент плюс от 2-го до 20-го.
 Немного экономит время.
 Для 20 - незаметно. Для большого массива уже заметно.
 -------"Вечна жыві і квітней Беларусь"
 |  Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте. |