Вопрос задан 08.10.2023 в 02:43. Предмет Информатика. Спрашивает Часнойть Валера.

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

клавиатуры, подсчитать количество элементов, равных предпоследнему, и выдать их номера на экран.2) Дан массив из 16 целых чисел, случайно заданных в диапазоне от 0 до 90 .Получить MAX (a1-a16, a2-a15, …, a8-a9).3) Дан массив из 12 целых чисел, введённых с клавиатуры. Вычислить среднее геометрическое чётных элементов массива.
0 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


0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Конечно, вот решения ваших задач на языке программирования Pascal:

  1. Подсчет количества элементов, равных предпоследнему, и выдача их номеров на экран:
pascal
program Task1; var i, count, prevLast, n: integer; begin count := 0; prevLast := 0; writeln('Введите 14 действительных чисел:'); for i := 1 to 14 do begin read(n); if i = 13 then prevLast := n else if n = prevLast then begin writeln('Элемент ', i, ' равен предпоследнему'); count := count + 1; end; end; writeln('Количество элементов, равных предпоследнему: ', count); end.
  1. Получение максимальной разницы между элементами:
pascal
program Task2; var arr: array[1..16] of integer; i, maxDifference: integer; begin writeln('Введите 16 целых чисел от 0 до 90:'); for i := 1 to 16 do begin read(arr[i]); end; maxDifference := abs(arr[1] - arr[16]); for i := 2 to 8 do begin if abs(arr[i] - arr[17 - i]) > maxDifference then maxDifference := abs(arr[i] - arr[17 - i]); end; writeln('Максимальная разница между элементами: ', maxDifference); end.
  1. Вычисление среднего геометрического четных элементов массива:
pascal
program Task3; var arr: array[1..12] of integer; i, count, product: integer; geometricMean: real; begin count := 0; product := 1; writeln('Введите 12 целых чисел:'); for i := 1 to 12 do begin read(arr[i]); if arr[i] mod 2 = 0 then begin count := count + 1; product := product * arr[i]; end; end; if count = 0 then writeln('В массиве нет четных элементов') else begin geometricMean := power(product, 1 / count); writeln('Среднее геометрическое четных элементов: ', geometricMean:0:2); end; end.

Скопируйте код каждой задачи в свою среду разработки Pascal и запустите программы для выполнения каждой из задач.

0 0

Похожие вопросы

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос