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

1. Заполнить одномерный массив B вещественными числами из промежутка от -20 до 5. Найти сумму и среднее положительных и четных элементов массива. Найти произведение отрицательных элементов массива. Найти минимальный элемент массива. Отсортировать массив по убыванию. 2. Заполнить одномерный массив А целыми числами из промежутка от -12 до 7. Вывести элементы массива, значения которых больше заданного числа Н и кратны числу К. Найти максимальный элемент массива. Отсортировать массив по возрастанию. На паскале

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

Задание №1

//PascalABC.NET (версия 3.1, сборка 1210 от 29.03.2016)
var
  b: array of real;
  i, n,pn: integer;
  ps,op,min:real;
begin
  write(Количество элементов массива :);readln(n);
  SetLength(b, n); // задаем длину массива
  min:=MaxReal; op:=1;
  writeln(Исходный массив:);
  for i:=0 to n-1 do begin
    repeat
      write(Введите ,i+1, число из ,n, : );readln(b[i]);
    until (b[i]=-20);
    if (b[i]>0) and (round(b[i]/2)*2=b[i]) then begin
      ps +=b[i];pn+=1;
      end
    else if b[i]    if b[i]  end;
  writeln;
  writeln(сумма положительных и четных элементов массива :,ps:0:3);
  writeln(Среднее положительных и четных элементов массива :,ps/pn:0:3);
  writeln(Произведение отрицательных элементов массива :,op:0:3);
  writeln(Минимальный элемент массива :,min);
  writeln(Отсортированный массив по убыванию :);
  b.sorteddescending.println;
end.

Тестовое решение:
Количество элементов массива :8
Исходный массив:
Введите 1 число из 8 : -18.5
Введите 2 число из 8 : 3.4
Введите 3 число из 8 : 4
Введите 4 число из 8 : -12
Введите 5 число из 8 : 2.2
Введите 6 число из 8 : -6.3
Введите 7 число из 8 : 2
Введите 8 число из 8 : 5

сумма положительных и четных элементов массива :6.000
Среднее положительных и четных элементов массива :3.000
Произведение отрицательных элементов массива :-1398.600
Минимальный элемент массива :-18.5
Отсортированный массив по убыванию :
5 4 3.4 2.2 2 -6.3 -12 -18.5

Задание №2
//PascalABC.NET (версия 3.1, сборка 1210 от 29.03.2016)
var
  a: array of integer;
  i,n ,max,h,k: integer;
begin
  write(Количество элементов массива :);readln(n);
  write(Число H :);readln(h);
  write(Число K :);readln(k);
  SetLength(a, n); // задаем длину массива
  max:=-MaxInt;
  writeln(Исходный массив:);
  for i:=0 to n-1 do
    repeat
      write(Введите ,i+1, число из ,n, : );readln(a[i]);
      if a[i]>max then max:=a[i];
    until (a[i]=-12);
  for i:=0 to n-1 do begin 
    if (a[i]>h) and (a[i]mod k=0) then
      writeln(Число , a[i], больше ,h, и кратно ,k);
  end;
  writeln(Максимальный элемент массива :,max);
  writeln(Отсортированный массив по возрастанию :);
  a.sorted.println;
end.

Тестовое решение:
Количество элементов массива :8
Число H :-8
Число K :2
Исходный массив:
Введите 1 число из 8 : -10
Введите 2 число из 8 : 6
Введите 3 число из 8 : -4
Введите 4 число из 8 : 3
Введите 5 число из 8 : 1
Введите 6 число из 8 : -1
Введите 7 число из 8 : -12
Введите 8 число из 8 : 4
Число 6 больше -8 и кратно 2
Число -4 больше -8 и кратно 2
Число 4 больше -8 и кратно 2
Максимальный элемент массива :6
Отсортированный массив по возрастанию :
-12 -10 -4 -1 1 3 4 6



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

Форма вопроса доступна на полной версии этой страницы.