ПОМОГИТЕ ПОЖАЛУЙСТА!!!СРОЧНО!!!!!ПАСКАЛЬ!1) Среди 14 действительных чисел, введённых с...

0 голосов
23 просмотров

ПОМОГИТЕ ПОЖАЛУЙСТА!!!СРОЧНО!!!!!ПАСКАЛЬ!1) Среди 14 действительных чисел, введённых с клавиатуры, подсчитать количество элементов, равных предпоследнему, и выдать их номера на экран.2) Дан массив из 16 целых чисел, случайно заданных в диапазоне от 0 до 90 .Получить MAX (a1-a16, a2-a15, …, a8-a9).3) Дан массив из 12 целых чисел, введённых с клавиатуры. Вычислить среднее геометрическое чётных элементов массива.


Информатика (25 баллов) | 23 просмотров
Дан 1 ответ
0 голосов
Правильный ответ

PascalABC.NET 3.4.2, сборка 1884 от 24.11.2018

Внимание! Если программа не работает, обновите версию!

1)

begin

 var n := 14;

 var a := ReadArrReal(n);

 var p := a[n - 2];

 var s := a.IndexesOf(t -> t = p);

 s.Select(i -> i + 1).Println.Count.Println // индексы,потом кол-во

end.

Пример

1 4.5 4 -0.3 -0.5 4.2 -1.1 4.4 -3.1 -3.4 4.2 -1.2 -1.1 1.1

7 13

2

2)

begin

 var n := 16;

 var a := ArrRandom(n, 0, 90);

 a.Println;

 var max := -1;

 for var i := 0 to n div 2 - 1 do

 begin

   var t := a[i] - a[n - i - 1];

   if max < t then max := t

 end;

 max.Println

end.

Пример

79 73 62 60 29 3 71 21 64 9 53 32 15 24 16 28

62

3)

begin

 var a := ReadArrInteger(12);

 var s := a.Where(t -> t.IsEven);

 var k := s.Count;

 if k > 1 then ((s.Aggregate(1.0, (p, q)-> p * q)) ** (1 / k)).Println

 else

 if k = 0 then Println(0)

 else s.First.Println

end.

Пример

63 96 84 43 19 56 41 36 8 46 1 57

42.6070511534269


(654k баллов)