Вопрос задан 14.02.2019 в 17:21. Предмет Информатика. Спрашивает Надолинный Олег.

Паскаль Написать функцию нахождения суммы максимальных цифр элементов массива. Массив состоит из

натуральных чисел. Помогите пожалуйста
0 0
Перейти к ответам

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

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

type
  Vector = array[1..n] of integer;

function SumDig(a: Vector): integer;
var
  i, m, d, s, max: integer;
begin
  s := 0;
  for i := 1 to n do
  begin
    m := a[i];
    max := -1;
    repeat
      d := (m mod 10);
      if max < d then max := d;
      m := m div 10
    until m = 0;
    s := s + max
  end;
  SumDig := s
end;

var
  i: integer;
  M: Vector;

begin
  Writeln('Введите ', n, ' чисел:');
  for i := 1 to n do Read(M[i]);
  Writeln('Сумма максимальных цифр всех чисел равна ', SumDig(M))
end.

Тестовое решение:
Введите 10 чисел:
613 269 839 10 575 569 812 56 401 616
Сумма максимальных цифр всех чисел равна 65



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

Нахождение суммы максимальных цифр элементов массива

Для нахождения суммы максимальных цифр элементов массива, состоящего из натуральных чисел, можно использовать следующую функцию на языке Pascal:

```pascal function SumOfMaxDigits(arr: array of Integer): Integer; var i, num, digit, maxDigit, sum: Integer; begin sum := 0; for i := 0 to Length(arr) - 1 do begin num := arr[i]; maxDigit := 0; while num > 0 do begin digit := num mod 10; if digit > maxDigit then maxDigit := digit; num := num div 10; end; sum := sum + maxDigit; end; Result := sum; end; ```

Эта функция принимает массив `arr` в качестве параметра и возвращает сумму максимальных цифр элементов массива.

Пример использования функции:

```pascal var arr: array[0..4] of Integer; i, sum: Integer; begin arr[0] := 123; arr[1] := 456; arr[2] := 789; arr[3] := 987; arr[4] := 654;

sum := SumOfMaxDigits(arr);

WriteLn('Сумма максимальных цифр элементов массива: ', sum); end. ```

В данном примере массив `arr` содержит пять элементов: 123, 456, 789, 987 и 654. Вызов функции `SumOfMaxDigits(arr)` вернет сумму максимальных цифр этих чисел, которая равна 9 + 6 + 9 + 9 + 6 = 39. Результат будет выведен на экран.

Примечание: Пожалуйста, учтите, что данная функция написана на языке Pascal. Если вам нужна помощь с написанием функции на другом языке программирования, пожалуйста, уточните это.

0 0

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

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

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