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

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

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



Нахождение суммы максимальных цифр элементов массива
Для нахождения суммы максимальных цифр элементов массива, состоящего из натуральных чисел, можно использовать следующую функцию на языке 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. Если вам нужна помощь с написанием функции на другом языке программирования, пожалуйста, уточните это.


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







Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili