
Задача: Дано натуральное число N. Найти сумму четных цифр в данном числе.
Если кто знает, как её решать - подскажите, буду очень благодарна.
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() |
vell |
![]()
Сообщение
#1
|
![]() Группа: Пользователи Сообщений: 4 Репутация: ![]() ![]() ![]() |
Нам задали 15 задач на Pascalе. Я решила 14, но последняя все никак не получается.
![]() Задача: Дано натуральное число N. Найти сумму четных цифр в данном числе. Если кто знает, как её решать - подскажите, буду очень благодарна. |
![]() ![]() |
Client |
![]()
Сообщение
#2
|
Профи ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 865 Пол: Мужской Реальное имя: Вячеслав Репутация: ![]() ![]() ![]() |
попробуй так
while (n<>0) and ((n mod 10)<>0) then s:=s+a; сам не пробовал, но вроде должна работь.. Сообщение отредактировано: Client - |
BE@ST |
![]()
Сообщение
#3
|
![]() Группа: Пользователи Сообщений: 9 Пол: Мужской Реальное имя: Сергей Репутация: ![]() ![]() ![]() |
попробуй так if ((a mod 2)=0)and(a<10) and ((n mod 10)<>0) then s:=s+a; сам не пробовал, но вроде должна работь.. ввёл 24066 и выдало 10... Добавлено через 10 мин. попробуй так while (n<>0) and ((n mod 10)<>0) then s:=s+a; сам не пробовал, но вроде должна работь.. так оно берёт числа справа а не слева ... Код uses crt; var s,a,n:integer; begin clrscr; writeln('vvedite naturalnoe chislo'); readln(n); s:=0; while (n<>0) and ((n mod 10)<>0) do begin a:=n mod 10; n:=n div 10; if (((a mod 2)=0)and(a<10)) then s:=s+a; end; writeln('summa cifr... =',abs(s)); readln; end. получилось 12... |
![]() ![]() |
![]() |
Текстовая версия | 4.09.2025 23:11 |