Точно и четко сформулировать условие задачи, которая решается в данной программе: Program Kr_2_3; Var N, St : LongInt; Begin Write('Введите нат...
Точно и четко сформулировать условие задачи, которая решается в данной программе:
Program Kr_2_3;
Var N, St : LongInt;
Begin
Write('Введите нат...Точно и четко сформулировать условие задачи, которая решается в данной программе:
Program Kr_2_3;
Var N, St : LongInt;
Begin
Write('Введите натуральное число: ');
ReadLn(N);
St := 1;
While N Div St <> 0 Do
If Not Odd(N Mod (St * 10) Div St)
Then N := N Div (St * 10) * St + N Mod St
Else...
Ответ(ы) на вопрос:
Гость
Программа для введённого с клавиатуры числа N выводит число, составленное из нечётных цифр десятичной записи числа N. Если в записи N нет ни одной нечётной цифры, выводится 0. Если N < 0, выводится что-то жуткое.
St - в любой момент степень 10, пусть St = 10^k. Тогда N Mod (St * 10) Div St получает (k + 1)-ую цифру справа в десятичной записи числа N. Затем, если она чётная, то вместо N рассматривается число N Div (St * 10) * St + N Mod St - число, получаемое из N вычитанием (k + 1)-й цифры. Если нечетное - берется следующее k.
Например, для N = 1234567 будет выведено "Ответ: 1357", а для N = 24680 будет выведено "Ответ: 0".
Не нашли ответ?
Похожие вопросы