МАССИВЫ 11 КЛАСС ПАСКАЛЬ!!! 100баллов!!!

Приложения:

Ответы

Ответ дал: ober555
1

Ответ:

program ReshenieZadachi;

var Mas:array[1..100] of integer;

i, Min, Max, MinI, MaxI, n:integer;

begin

//заполнение массива и вывод массива в строчку

writeln("Введите количество элементов массива");

readln(n);

writeln("Введите диапазон случайных чисел");

readln(x1,x2);

for i:=1 to n do begin

Mas[i]:=random(x1,x2);

write(Mas[i],' ');

end;

//нахождение минимального элемента массива

Min:=Mas[1];

MinI:=1;

Max:=Mas[1];

MaxI:=1;

for i:=2 to n do

begin  

 if Min>=Mas[i] then  

  begin  

  Min:=Mas[i];

  MinI:=i;

  end;

 if Max<=Mas[i] then  

  begin

   Max:=Mas[i];

   MaxI:=i;

  end;

end;

// проверяем последовательность индексов массива, если минимальный элемент позже максимального, то меняем местами

If MinI>=MaxI Then  

begin  

MinI:=MinI+MaxI;

MaxI:=MinI-MaxI;

MinI:=MinI-MaxI;

end;

 

//вывод результата из диапазона м и М

for i:=MinI to MaxI do  

write(''+Mas[i]+',');

end.


mrshaishnik: Программа должна вывести первоначальный массив, заданный датчиком случайных чисел, найти минимум и максимум, напечатать фрагмент массива, расположенный между ними. Вот что мне ответил учитель. Как переделать?
ober555: да точно есть 2 неточности...
удили строки:
writeln("Введите количество элементов массива");
readln(n);
и
write(Mas[i],' ');
ober555: в целом программа работает, я проверял
Вас заинтересует