Аватар
Информатика, опубликовано 2018-08-22 23:35:21 by Гость

1.заполните одномерный массив B1 размерностью в N(< 30 задает пользователь при выполнении программы) элементов так, чтобы каждый элемент с четным номером был равен половине своего номера, а каждый элемент с нечетным номером - количеству элементов в массиве. сформированный массив вывести на экран в столбик.2.а) найдите среднюю температуру за неделю. (температура была: -5; -3; -7; -6; -2; -4; -3)б) сколько дней было выше средней? ниже средней?3. сформируйте массив BC размерностью 30 элементов случайным образом из диапазона 0 - 50. сформированный массив выведите на экран в строку. подсчитайте сумму всех четных элементов массива и отдельно сумму элементов имеющих четные индексы. выведите результаты подсчета на экран. замените элементы равные своему индексу на самый большой элемент массива, если таковые имеются. получившийся массив выведите на экран в столбик. отсортируйте получившейся массив по убыванию.

Аватар
Ответ оставил Гость

1.
var
 n,i: integer;
 B1: array [1..30] of real;
begin
 writeln(Введите N: );
 read(n);
 writeln(Введите ,n, элементов: );
 for i:= 1 to n do
  begin
  readln(B1[i]);
  if i mod 2 = 0 then B1[i]:=B1[i]/2;
  if i mod 2 0 then B1[i]:=n;
  end;
 writeln(Массив: );
 for i:= 1 to n do writeln(B1[i])
end.

2.
var
 sum,c1,c2,i: integer;
 T: array [1..7] of integer;
begin
 writeln(Введите температуру за 7 дней: );
 for i:= 1 to 7 do
  begin
  readln(T[i]);
  sum:=sum+T[i];
  end;
 writeln(Средняя температура: ,sum/7);
 for i:= 1 to 7 do
  begin
  if T[i] > sum/7 then inc(c1);
  if T[i]   end;
 writeln(Кол-во дней с температурой выше средней: ,c1,; ниже средней: ,c2);
end.

3.
var
 x,j,max,c,sum,i: integer;
 BC: array [1..30] of integer;
begin
 randomize;
 writeln(Массив: );
 for i:= 1 to 30 do
  begin
  BC[i]:=random(51);
  write(BC[i]:4);
  if BC[i] mod 2 = 0 then inc(c);
  if i mod 2 = 0 then sum:=sum+BC[i];
  end;
 writeln;
 writeln(Кол-во четных элементов: ,c);
 writeln(Сумма элементов с четными индексами: ,sum);
 max:=BC[1];
 for i:= 1 to 30 do
  if BC[i] > max then max:=BC[i];
 writeln(Результат: );
 for i:= 1 to 30 do
  begin
  if BC[i] = i then BC[i]:=max;
  writeln(BC[i]);
  end;
 for i := 30 downto 2 do
  for j := 2 to i do
  if BC[j] > BC[j - 1] then
   begin
    x := BC[j];
    BC[j] := BC[j - 1];
    BC[j - 1] := x;
   end;
  writeln(По убыванию: );
 for i:= 1 to 30 do write(BC[i]:4);
end.

Вопрос
Не нашли ответа?
Если вы не нашли ответа на свой вопрос, или сомневаетесь в его правильности, то можете воспользоваться формой ниже и уточнить решение. Или воспользуйтесь формой поиска и найдите похожие ответы по предмету Информатика.