program p180315;
// Найти разницу между произведением четных и нечетных цифр 4-значного числа.
// IF не использовать
var
c1, c2, c3, c4: 0..9;
p1, p2, p3, p4: 0..9;
p_odd, p_even : integer;
po, pe, n_odd, n_even : 0..4;
r: integer;
x:integer;
begin
write('x=');
readln(x);
// Определяем отдельные цифры числа
r:= x;
c4 := r mod 10;
r:= r div 10;
c3 := r mod 10;
r:= r div 10;
c2 := r mod 10;
c1 := r div 10;
p1 := c1 mod 2;
p2 := c2 mod 2;
p3 := c3 mod 2;
p4 := c4 mod 2;
po := p1+p2+p3+p4;
n_odd:=(po and 1) or ((po shr 1) and 1) or ((po shr 2) and 1);
pe := 4-po;
n_even:=(pe and 1) or ((pe shr 1) and 1) or ((pe shr 2) and 1);
p_odd := (c1*p1 or 1)*(c2*p2 or 1)*(c3*p3 or 1)*(c4*p4 or 1);
p_even := c1*c2*c3*c4 div p_odd;
Writeln('Разность произведений четных и нечетных цифр числа ', x, ' равна ',
p_even*n_even-p_odd*n_odd);
end.
x=1234
Разность произведений четных и нечетных цифр числа 1234 равна 5
x=3333
Разность произведений четных и нечетных цифр числа 3333 равна -81
x=2525
Разность произведений четных и нечетных цифр числа 2525 равна -21
x=2222
Разность произведений четных и нечетных цифр числа 2222 равна 16
x=1111
Разность произведений четных и нечетных цифр числа 1111 равна -1
1111
0
2222
15
Если Вы уже зарегистрированы на Портале - войдите в систему, если Вы еще не регистрировались - пройдите простую процедуру регистрации.