UCHEES.RU - помощь студентам и школьникам
В 17:26 поступил вопрос в раздел Информатика, который вызвал затруднения у обучающегося.
На обработку поступает натуральное число, не превышающее 10^9. Нужно написать программу, которая выводит на экран произведение цифр числа, кратных 3. Если в числе нет цифр, кратных 3, требуется на экран вывести "NO". Программист написал программу неправильно.
Напоминание: 0 делится на любое натуральное число.
Текст написанной программистом программы (с ошибками):
var N, k, digit, prod: longint;
begin
readln(N);
prod := N mod 10;
k := 0;
while (N > 0) do begin
digit := N mod 10;
if (digit mod 3 = 0) then begin
prod := prod*digit;
k := k+1;
end;
N := N div 10;
end;
if (k = 0) then
writeln('NO')
else
writeln(N)
end.
Найдите все ошибки в этой программе и исправьте их, при этом не меняя весь алгоритм.
Как правило, ошибок две. Я их нашёл, но задание мне не засчитали. Помогите найти ошибки в программе, из-за которых алгоритм работает неверно!
Для того чтобы дать полноценный ответ, был привлечен специалист, который хорошо разбирается требуемой тематике "Информатика". Ваш вопрос звучал следующим образом: На обработку поступает натуральное число, не превышающее 10^9. Нужно написать программу, которая выводит на экран произведение цифр числа, кратных 3. Если в числе нет цифр, кратных 3, требуется на экран вывести "NO". Программист написал программу неправильно.
Напоминание: 0 делится на любое натуральное число.
Текст написанной программистом программы (с ошибками):
var N, k, digit, prod: longint;
begin
readln(N);
prod := N mod 10;
k := 0;
while (N > 0) do begin
digit := N mod 10;
if (digit mod 3 = 0) then begin
prod := prod*digit;
k := k+1;
end;
N := N div 10;
end;
if (k = 0) then
writeln('NO')
else
writeln(N)
end.
Найдите все ошибки в этой программе и исправьте их, при этом не меняя весь алгоритм.
Как правило, ошибок две. Я их нашёл, но задание мне не засчитали. Помогите найти ошибки в программе, из-за которых алгоритм работает неверно!
После проведенного совещания с другими специалистами нашего сервиса, мы склонны полагать, что правильный ответ на заданный вами вопрос будет звучать следующим образом:
Var N, k, digit, prod: longint;
begin
readln(N);
prod := 1; // Произведение не должно быть равно 0, в вашем случае просто отделают последнюю цифру, не проверяя ее кратна она 3 или нет
k := 0;
while (N > 0) do
begin
digit := N mod 10;
if (digit mod 3 = 0) and (digit<>0) then begin // (digit<>0) проверка на неравенство нулю(любое число*0=0)
prod := prod*digit;
k := k+1;
end;
N := N div 10;
end;
if (k = 0)
then writeln('NO')
else writeln(prod) // Выводить нужно не конечное N, а именно произведение(prod)
end.
НЕСКОЛЬКО СЛОВ ОБ АВТОРЕ ЭТОГО ОТВЕТА:
Работы, которые я готовлю для студентов, преподаватели всегда оценивают на отлично. Я занимаюсь написанием студенческих работ уже более 4-х лет. За это время, мне еще ни разу не возвращали выполненную работу на доработку! Если вы желаете заказать у меня помощь оставьте заявку на этом сайте. Ознакомиться с отзывами моих клиентов можно на этой странице.
Волкова Лиза Агафоновна - автор студенческих работ, заработанная сумма за прошлый месяц 61 200 рублей. Её работа началась с того, что она просто откликнулась на эту вакансию
ПОМОГАЕМ УЧИТЬСЯ НА ОТЛИЧНО!
Выполняем ученические работы любой сложности на заказ. Гарантируем низкие цены и высокое качество.
Деятельность компании в цифрах:
Зачтено оказывает услуги помощи студентам с 1999 года. За все время деятельности мы выполнили более 400 тысяч работ. Написанные нами работы все были успешно защищены и сданы. К настоящему моменту наши офисы работают в 40 городах.
РАЗДЕЛЫ САЙТА
Ответы на вопросы - в этот раздел попадают вопросы, которые задают нам посетители нашего сайта. Рубрику ведут эксперты различных научных отраслей.
Полезные статьи - раздел наполняется студенческой информацией, которая может помочь в сдаче экзаменов и сессий, а так же при написании различных учебных работ.
Красивые высказывания - цитаты, афоризмы, статусы для социальных сетей. Мы собрали полный сборник высказываний всех народов мира и отсортировали его по соответствующим рубрикам. Вы можете свободно поделиться любой цитатой с нашего сайта в социальных сетях без предварительного уведомления администрации.
ЗАДАТЬ ВОПРОС
НОВЫЕ ОТВЕТЫ
ПОХОЖИЕ ВОПРОСЫ