Вопрос задан 02.08.2018 в 07:10. Предмет Информатика. Спрашивает Борзова Лаура.

Дано N. Найти произведение четных чисел этого числа. Решить с помощью паскаля. Ребят, у меня вышла

такая программа: Program Pr1; var n,p,m:integer; begin write('n='); readln(n); m:=n; p:=1; while m>0 do begin if (m mod 10) mod 2=0 then p:=p*m mod 10; m:=m div 10; end; writeln('В числе ',n,' произведение четных цифр = ',p); end. И в ответе, если произведение превышает число 9, выводится его последняя цифра. Например: n=881 В числе 881 произведение четных цифр = 4 А на самом деле выходит 8*8=64. Надеюсь, кто-нибудь сможет помочь. И, да, мне нужна помощь исключительно в улучшении программы, а не написания новой.
0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Лунёв Данил.
Ошибка в строке
p:=p*m mod 10;
При подсчете произведения
Приоритетность операций

должно быть 
p:=p* (m mod 10);
скобки
0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Solving for the Product of Even Digits in a Number Using Pascal

To improve the given program for finding the product of even digits in a number and ensuring that the correct result is displayed, we can make the following modifications:

```pascal Program Pr1; var n, p, m: integer; begin write('n='); readln(n); m := n; p := 1; while m > 0 do begin if (m mod 10) mod 2 = 0 then p := p * (m mod 10); // Update the calculation to multiply the even digit directly m := m div 10; end; if p > 9 then p := p mod 10; // If the product exceeds 9, display its last digit writeln('В числе ', n, ' произведение четных цифр = ', p); end. ```

With these modifications, the program will correctly calculate the product of even digits in the given number and display the last digit if the product exceeds 9.

For example, for n=881, the program will now correctly output: "В числе 881 произведение четных цифр = 4"

This modification ensures that the program accurately calculates the product of even digits in the given number and displays the correct result as per the provided requirements.

0 0

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос