Написать Программу по PASCAL вычислить произведение нечетных цифр трехзначного числа. Если нет в цифре нет нечетных то ответ выводиться- 0
ПРОШУ БЫСТРЕЕ ДАЮ МНОГО БАЛЛОВ

Ответы

Ответ дал: aimprivet
0

Ответ:

var a,b,c,d,s: integer;

begin

s:=0;

writeln('введите число');

readln(a);

b:=a div 100;

c:=(a div 10) mod 10;

d:=a mod 10;

if b mod 2 =1 then s:=b;

if c mod 2 =1 then s:=s*c;

if d mod 2=1 then s:=s*d;

writeln(s);

end.


LSM54: Помогите, пожалуйста, с заданием https://znanija.com/task/38676622
Ответ дал: nastikots
0

Ответ:

var a,p: integer;

begin

p:=1;

write('Введите число: ');

readln(a);

if (a div 100 mod 2 = 0) and (a div 10 mod 10 mod 2 = 0) and (a mod 10 mod 2 = 0) then p:=0

else

begin

if a div 100 mod 2 <> 0 then p:=p*a div 100;

if a div 10 mod 10 mod 2 <> 0 then p:=p*(a div 10 mod 10);

if a mod 10 mod 2 <> 0 then p:=p*a mod 10

end;

writeln('Произведение нечетных цифр равно: ',p);

end.

Объяснение:

Первая цифра:   a div 100

Вторая цифра:   a div 10 mod 10

Третья цифра:   a mod 10

div - целочисленное деление

mod - остаток от целочисленного деления

if (a div 100 mod 2 = 0) and (a div 10 mod 10 mod 2 = 0) and (a mod 10 mod 2 = 0) then p:=0  //если все цифры четные, то произведение нечетных цифр равно 0

else //иначе

begin

if a div 100 mod 2 <> 0 then p:=p*a div 100;

if a div 10 mod 10 mod 2 <> 0 then p:=p*(a div 10 mod 10);

if a mod 10 mod 2 <> 0 then p:=p*a mod 10

//если цифра нечетная, то умножаем

end;

Проверки на трехзначность числа нет


LSM54: Помогите, пожалуйста, с заданием https://znanija.com/task/38676622
Вас заинтересует