С++ Цикл while пользователь вводит число надо найти произведение цифр его числа ....

0 голосов
65 просмотров

С++ Цикл while пользователь вводит число надо найти произведение цифр его числа . МАКСИМАЛЬНО ПРОСТО


спросил от (19 баллов) в категории Информатика
оставил комментарий от Одаренный (2.5k баллов)

Переведи число в строку S, потом задаешь i = 1 и P = 1, потом в цикле пока i<длины строки делаешь агрегацию (произведение) P*=S[i] и увеличиваешь i++. Я С++ не знаю, но тут нужно найти всего две функции (метода): перевод целого в строку и перевод символа (или строки) в целое. Должны такие быть в С++.

1 Ответ

0 голосов
ответил от Одаренный (3.4k баллов)

#include

#include

using namespace std;

int main()

{

int number, multi = 1;

cin >> number;

while(number != 0){

 multi *= number %10;

 number /= 10;

}

cout

system("pause");

return 0;

}

оставил комментарий от Начинающий (172 баллов)

1. Почему дефайним и инициализируем в строчку?

оставил комментарий от Начинающий (172 баллов)

2. Почему ввод данных не валидируется?

оставил комментарий от Начинающий (172 баллов)

3. Почему в цикле литерал - справа?

оставил комментарий от Начинающий (172 баллов)

4. Зачем ставим паузу? Или работаем в винде и не умеем запускать консольные рпограммы?

оставил комментарий от Начинающий (172 баллов)

5. Зачем для паузы целый заголовок инклюдить? Может тогда уж просто сделает inf loop?

оставил комментарий от Начинающий (172 баллов)

Одним словом: данные не валидируются, код потенциально опасный, так ещё и с лишним функционалом, но без необходимого (:

оставил комментарий от Начинающий (172 баллов)

6. Зачем глобальный using namespace? Не знаем к чему это приводит?

...