
Вопрос задан 27.07.2023 в 18:36.
Предмет Информатика.
Спрашивает Марков Денис.
Помогите написать программу на паскале. Федя с клавиатуры последовательность натуральных чисел.
Он хочет получить и вывести на экран максимально возможную сумму трех чисел из последовательности, каждое из которых оканчивается на цифру 3. Программа получает на вход количество чисел в последовательности, а затем сами числа. В последовательности всегда имеется число, оканчивающееся на 3. Количество чисел не превышает 10 в 6. Введённые числа не превышают 30000. Программа должна вывести одно число - максимальную сумму трех чисел, каждое из которых оканчивается на цифру 3. Если чисел, отвечающих условия не нашлось, выводится 0.Пример: вход: 6 7 13 15 3 23 103вывод: 139

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

Отвечает Кулак Миша.
Федя с клавиатуры последовательность PascalABC.NET





Отвечает Коваленко Наталья.
PascalABC.NET 3.4.2, сборка 1814 от 02.10.2018
begin
var a := ReadArrInteger(ReadInteger).Where(t -> t mod 10 = 3)
.SortedDescending;
Println(a.Count >= 3 ? a.Take(3).Sum : 0)
end.




Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.
Для решения этой задачи на Паскале, можно использовать следующий код:
pascalprogram MaxSumOfThreeNumbers; const MaxCount = 100000; var numbers: array[1..MaxCount] of integer; count, i, maxSum, currentSum: integer; function IsEndsWithThree(num: integer): boolean; begin IsEndsWithThree := num mod 10 = 3; end; begin // Ввод количества чисел в последовательности writeln('Введите количество чисел в последовательности:'); readln(count); // Ввод чисел writeln('Введите числа:'); for i := 1 to count do read(numbers[i]); // Инициализация максимальной суммы и текущей суммы maxSum := 0; currentSum := 0; // Поиск и суммирование трех чисел, оканчивающихся на 3 for i := 1 to count do begin if IsEndsWithThree(numbers[i]) then begin currentSum := currentSum + numbers[i]; if currentSum > maxSum then maxSum := currentSum; end; end; // Вывод результата writeln('Максимальная сумма трех чисел, оканчивающихся на 3: ', maxSum); end.
Обратите внимание, что здесь используется вспомогательная функция IsEndsWithThree
, которая определяет, оканчивается ли число на 3. Затем программа проходит по введенной последовательности, суммирует три числа, оканчивающихся на 3, и находит максимальную сумму. Результат выводится на экран.


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