alislisa191
?>

Дан массив f(20 найти сумму положительных элементов, лежащих перед наименьшим элементом этого массива и количество отрицательных элементов, лежащих после наименьшего элемента.

Информатика

Ответы

svetkinm158
Задание 1

const
  n=10;
var
  a:array[1..n] of integer;
  i,k,t,imin,imax:integer;
begin
  randomize; { инициализация датчика пчевдослучайных чисел }
  Writeln('*** Исходный массив ***');
  for i:=1 to n do begin
    a[i]:=random(20); { интервал [0;19] }
    Write(a[i]:4)
    end;
  Writeln;
  { 1. меняем местами правую и левую половины }
  Writeln('*** 1 ***');
  k:=n div 2;
  for i:=1 to k do begin
    t:=a[i]; a[i]:=a[i+k]; a[i+k]:=t
    end;
  for i:=1 to n do Write(a[i]:4);
  Writeln;
  { 2. Элементы массива, большие 10, заменяем на 100 }
  for i:=1 to k do
    if a[i]>10 then a[i]:=100;
  Writeln('*** 2 ***');
  for i:=1 to n do Write(a[i]:4);
  Writeln;
  { 3. Удаляем максимальный элемент, вставляем 0 перед минимальным }
  { замороченная задача ! }
  Writeln('*** Исходный массив ***');
  for i:=1 to n do begin
    a[i]:=random(50)+1; { интервал [1;49] }
    Write(a[i]:4)
    end;
  Writeln; Writeln('*** 3 ***');
  imin:=1; imax:=1;
  for i:=2 to n do
    if a[i]>a[imax] then imax:=i
    else
      if a[i]<a[imin] then imin:=i;
  if imin < imax then begin { минимальный встречается раньше максимального }
    { подвигаем вправо на 1 все элементы от imin и до imax }
    for i:=imax-1 downto imin do a[i+1]:=a[i];
    a[imin]:=0 { вставляем 0 в позицию imin }
    end
  else begin { минимальный встречается позже максимального }
    { подвигаем влево на 1 элементы от imax до imin -1 }
    for i:=imax to imin-1 do a[i]:=a[i+1];
    a[imin-1]:=0; { вставляем 0 в позицию перед imin }
    end;
  for i:=1 to n do Write(a[i]:4);
  Writeln  
end.

Пример
*** Исходный массив ***
  14   1  11   7  14   8  12   8   1  14
*** 1 ***
   8  12   8   1  14  14   1  11   7  14
*** 2 ***
   8 100   8   1 100  14   1  11   7  14
*** Исходный массив ***
  24  36  25   4  42  42  16  39  45  44
*** 3 ***
  24  36  25   0   4  42  42  16  39  44

Задание 2

const
  n=10;
var
  a:array[1..n] of integer;
  i:integer;
begin
  randomize; { инициализация датчика пчевдослучайных чисел }
  Writeln('*** Исходный массив ***');
  for i:=1 to n do begin
    a[i]:=random(20); { интервал [0;19] }
    Write(a[i]:4)
    end;
  Writeln;
  { 1. выводим нечетные элементы }
  Writeln('*** 1 ***');
  for i:=1 to n do
    if a[i] mod 2 <>0 then Write(a[i]:4);
  Writeln;
  { 2. Элементы на четных позициях обнуляем }
  i:=2;
  while i<=n do begin
    a[i]:=0;
    i:=i+2
    end;
  Writeln('*** 2 ***');
  for i:=1 to n do Write(a[i]:4);
  Writeln
end.

Пример
*** Исходный массив ***
  12   0  14   8  13  17   3   1  12  17
*** 1 ***
  13  17   3   1  17
*** 2 ***
  12   0  14   0  13   0   3   0  12   0

Замечание:
Третью подзадачу решить в такой постановке невозможно.
В самом деле, требуется удалить последний нечетный элемент, а перед третьим элементом вставить ноль. Что делать, если этим последним нечетным окажется третий?
randat887040
Мальчик, увлекающийся лёгкой атлетикой, рассказывает о новостях спорта Лёше и Саше;
Лёгкая атлетика - не Саша и не Лёша => остаются: Юра, Виталий или Антон

Виталий не занимается лёгкой атлетикой, как Антон;
Лёгкая атлетика - не Антон и не Виталий => остался: Юра

Юра - атлет

В отличие от Саши, его сестра умеет плавать;
Саша - не плаванье => остаётся: борьба, гимнастика, гребля

Саша, гимнаст и мальчик занимающийся греблей - друзья;
Саша - не гимнастика и не гребля = > остаётся борьба

Саша - борец

Антон и Лёша никогда не посещали бассейн;
Плаванье - не Антон и не Лёша => остался: Виталий

Виталий - пловец

Лёша, в отличие от Антона, умеет держать в руках вёсла.

Лёша - гребец

Антон - гимнаст

Итого:


Юра - атлет
Саша - борец
Виталий - пловец
Лёша - гребец
Антон - гимнаст

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

Дан массив f(20 найти сумму положительных элементов, лежащих перед наименьшим элементом этого массива и количество отрицательных элементов, лежащих после наименьшего элемента.
Ваше имя (никнейм)*
Email*
Комментарий*

Популярные вопросы в разделе

marketing3
Vrpeshka
BelyaevNadezhda223
Vladimirovich Aleksandr1889
dimanov
Оксана Анна
Nataliatkachenko1
panstel
Pastushenkoen
mihalewanadia20176987
ldstroy
esnails17
suhanowaswetlana
Алена-Петрова285
elmiro4ka868617