Имеется код: var a: array[1..15] of integer; i,k,l,z,b,c,qu: integer; min,max,u: byte; begin randomize; l: = 0; k: = 0; for i: = 1 to 15 do a[i]: =random(20,40); writeln; for i: = 1 to 15 do write(a[i]: 4); writeln; writeln; for i: = 1 to 15 do if a[i]< 0 then l: = l+1 else if a[i]> 0 then k: = k+1; if l> k then writeln('а) отрицательных чисел больше чем положительных') else if l else writeln('а) отрицательных и положительных чисел одинаково'); writeln; writeln('б) поставить минимальный элемент на первое место и максимальный элемента массива на последнее'); writeln; min : = 1; max : = 1; for u: =1 to 15 do begin if a[u] < a[min] then min : = u; if a[u] > a[max] then max : = u; end; c: =a[1]; a[1]: =a[min]; a[min]: =c; b: =a[15]; a[15]: =a[max]; a[max]: =b; for i: = 1 to 15 do write(a[i]: 4); writeln; writeln; end. здесь он сравнивает положительные и отрицательные числа, ставит минимальный элемент массива на первое место и максимальный элемент на последнее место. нужно реализовать вывод всех номеров элементов, на которых встречается минимальное значение. (элемент - a[min], его номер в массиве - min). я уже запутался что-то мальца, , , дописать уже этот код.

Mari2909 Mari2909    2   12.09.2019 18:00    0

Ответы
angelina0512200 angelina0512200  07.10.2020 10:09
Const n=15;
var a: array[1..n] of integer;
i,k,l,c:integer;
min,max:byte;
begin
randomize;
for i:= 1 to n do
 begin
 a[i]:=random(-20,20);
 write(a[i]:4);
 end;
writeln;

l:=0; k:=0;
for i:= 1 to n do
 if a[i]<0 then l:=l+1 
 else if a[i]>0 then k:=k+1;
if l>k then writeln('а) Отрицательных чисел больше чем положительных')
 else if k>l then writeln('а) Положительных чисел больше чем отрицательных')
  else writeln('а) Отрицательных и положительных чисел одинаково');
writeln;
writeln('б) Поставить минимальный элемент на первое место и максимальный элемента массива на последнее');
writeln;
min := 1; max := 1;
for i:=2 to n do begin
 if a[i] < a[min] then min := i;
 if a[i] > a[max] then max := i;
end;
c:=a[1]; a[1]:=a[min]; a[min]:=c;
c:=a[n]; a[n]:=a[max]; a[max]:=c;
for i:= 1 to n do write(a[i]:4);
writeln;
writeln; 
writeln('в) Номера элементов с минимальным значением:');
for i:= 1 to n do 
 if a[i]=a[1] then write(i,' '); // Минимальный элемент поставлен на первое место!
writeln; 
end.

Пример (для элементов из диапазона [-10; 10]):
   6  -6   6  -9  -9  -3  -7   9  -3   9   6  -8   7  -3   6
а) Отрицательных чисел больше чем положительных

б) Поставить минимальный элемент на первое место и максимальный элемента массива на последнее

  -9  -6   6   6  -9  -3  -7   6  -3   9   6  -8   7  -3   9

в) Номера элементов с минимальным значением:
1 5 
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика