Найти частное произведений четных и не четных цифр четырехзначного числа n

Five11 Five11    1   06.06.2019 22:20    17

Ответы
tadzhigul tadzhigul  01.10.2020 21:07
Есть книжка такая, "Песни о Паскале". Глава 47.

Нужно разложите число на цифры и вычислить соответствующие произведения,
flag: false; m1: = 1; m2: = 1;
while N <> 0 do begin
if flag then m1:= m1*(N mod 10) else m2:= m2*(N mod 10);
flag:= not flag;
N:= N div 10;
end;
if m1<>0 then Writeln(m2 div m1) else Writeln('Бесконечность');

Видела уже такой вопрос где-то года три назад.
ПОКАЗАТЬ ОТВЕТЫ
жук234 жук234  01.10.2020 21:07
Var
  i,n,x:integer;
  a:array[1..4]of integer;
begin
readln(n);
for i:=4 downto 1 do
  begin
  x:=n mod 10;
  a[i]:=x;
  n:=(n-x) div 10;
  end;
writeln('Произведение четных: ',a[2]*a[4]);
writeln('Произведение нечетных: ',a[1]*a[3]);
end.

Если можно использовать строковые функции, то будет проще:
var
  i:integer;
  n:string;
  a:array[1..4]of integer;
begin
readln(n);
for i:=1 to 4 do a[i]:=StrToInt(n[i]);
writeln('Произведение четных: ',a[2]*a[4]);
writeln('Произведение нечетных: ',a[1]*a[3]);
end.
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика