Здравствуйте! помогите пожалуйста решить 2 задачу с Паскалем. (я просто вообще не шарю в...

0 голосов
50 просмотров

Здравствуйте! помогите пожалуйста решить 2 задачу с Паскалем. (я просто вообще не шарю в этом, а писать всё равно нада хех)Вопрос: Напишите процедуру, в которой определяется сумма четных цифр числа N. Процедуру включите в программу, в которой пользователь вводит N, запускается процедура и программа печатает ответ.​


image

Информатика (12 баллов) | 50 просмотров
Дан 1 ответ
0 голосов

Выбирайте, как вам больше нравится: первая картинка - рекурсия, вторая - итерация. Окно вывода: первая строка - ввод, вторая - вывод. Код можно скопировать из комментариев под решением.


image
image
(2.5k баллов)
0

procedure foo(a, n: integer);begin if a = 0 then Write(n) else foo(a div 10, n + (a mod 10) * Ord(a mod 2 = 0));end;var a: integer;begin Read(a); foo(Abs(a), 0);end.

0

procedure bar(a, n: integer);begin while a <> 0 do begin if a mod 2 = 0 then n += a mod 10; a := a div 10 end; Write(n)end;var a: integer;begin Read(a); bar(Abs(a), 0)end.

0

И лучший ответ поставьте.