Вопрос задан 05.07.2023 в 07:21. Предмет Информатика. Спрашивает Зубак Яна.

Найдите сумму и количество элементов массива , попавших в интервал [a; b]. Границы интервала

вводятся с клавиатуры Решите задачу при помощи функции Язык : Pscal Abc
0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Конышев Степа.

PascalABC.NET ₃.₆.₃.₂₅₇₇

Ответ:

  • ##
  • var (a,b) := ReadInteger2('Введите a, b:');
  • var n := ReadInteger('Введите длину массива:');
  • var m := ReadArrInteger('Введите элементы массива:', n);
  • var mf := m.Where(x -> x in a..b);
  • Println('Сумма:', mf.Sum);
  • Print('Количество:', mf.Count);

"Функции":

ReadInteger2, ReadInteger, ReadArrInteger, Where, Sum, Count.

Пример работы:


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

Конечно! Вот пример программы на языке Pascal ABC, которая решает данную задачу:

pascal
program SumAndCountInRange; const MaxArraySize = 100; var arr: array[1..MaxArraySize] of Integer; n, a, b: Integer; sum, countInInterval: Integer; procedure ReadArray(var arr: array of Integer; n: Integer); var i: Integer; begin for i := 1 to n do begin Write('Введите элемент массива arr[', i, ']: '); ReadLn(arr[i]); end; end; function SumAndCountInRange(arr: array of Integer; n, a, b: Integer; var countInInterval: Integer): Integer; var i: Integer; begin Result := 0; countInInterval := 0; for i := 1 to n do begin if (arr[i] >= a) and (arr[i] <= b) then begin Result := Result + arr[i]; Inc(countInInterval); end; end; end; begin Write('Введите количество элементов в массиве (n <= ', MaxArraySize, '): '); ReadLn(n); if (n < 1) or (n > MaxArraySize) then begin WriteLn('Неверное количество элементов.'); Exit; end; ReadArray(arr, n); Write('Введите левую границу интервала (a): '); ReadLn(a); Write('Введите правую границу интервала (b): '); ReadLn(b); if a > b then begin WriteLn('Неверные границы интервала.'); Exit; end; sum := SumAndCountInRange(arr, n, a, b, countInInterval); WriteLn('Сумма элементов в интервале [', a, '; ', b, ']: ', sum); WriteLn('Количество элементов в интервале [', a, '; ', b, ']: ', countInInterval); end.

Программа сначала запрашивает количество элементов в массиве, затем элементы массива, а также границы интервала [a; b]. После этого, она вычисляет сумму элементов, попавших в интервал, и выводит эту сумму, а также количество элементов в интервале.

0 0

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

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

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

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