Поменять местами максимальный элемент массива с минимальным - Turbo Pascal

Формулировка задачи:

Размерность массива: 4, элементы: 1,2,3,4. Вот тут все работает, макс и мин местами меняются. А когда я ввожу совсем другие числа, получается черт знает что. Помогите разобраться)
Program z1;
  const n=10;
  var
   x:array [1..n] of integer;
   i,k,b,buf,max,min:integer;
Begin
 writeln('Ââåäèòå Г°Г*çìåðГ*îñòü Г¬Г*Г±Г±ГЁГўГ*');
 readln(b);
 writeln('Ââåäèòå ýëåìåГ*ГІГ» Г¬Г*Г±Г±ГЁГўГ*');
 for i:=1 to b do read(x[i]);
 max:=x[1]; k:=1;
 for i:=1 to b do
   if x[i]>max then
    begin
     max:=x[i]; k:=i;
    end;
 writeln('Max element:',max);
 min:=x[1]; k:=1;
 for i:=1 to b do
  if x[i]<min then
   begin
    min:=x[i]; k:=i;
   end;
 writeln('Min element:',min);
 buf:=x[max]; x[max]:=x[min]; x[min]:=buf;
 for i:=1 to b do writeln(x[i]);
End.

Код к задаче: «Поменять местами максимальный элемент массива с минимальным - Turbo Pascal»

textual
buf:=x[max]; x[max]:=x[min]; x[min]:=buf;

11   голосов, оценка 4.273 из 5


СОХРАНИТЬ ССЫЛКУ
Похожие ответы