Вопрос по информатике:
Помогите написать программу на с++, которая для заданного натурального числа удаляет из записи числа все цифры, кратные минимальной цифре
- 19.03.2018 14:06
- Информатика
- remove_red_eye 894
- thumb_up 28
Ответы и объяснения 1
#include
int minimal_digit(int n)
{
const int base = 10;
int min_digit = 0;
while (n>0) {
int digit = n%base;
if (digit < min_digit)
min_digit = digit;
n /= base;
}
return min_digit;
}
int filter_digits(int n, int filter_by)
{
const int base = 10;
int pow_base = 1;
int result = 0;
if (filter_by == 0) {
return n;
}
while (n>0) {
int digit = n%base;
if (digit % filter_by != 0) {
result += digit * pow_base;
pow_base *= base;
}
n /= base;
}
return result;
}
int main()
{
int n;
std::cout << "Введите число n: " << std::endl;
std::cin >> n;
int digit = minimal_digit(n);
int result = filter_digits(n, digit);
std::cout << "Ответ: " << result << std::endl;
return 0;
}
- 20.03.2018 12:36
- thumb_up 1
Знаете ответ? Поделитесь им!
Есть сомнения?
Не нашли подходящего ответа на вопрос или ответ отсутствует? Воспользуйтесь поиском по сайту, чтобы найти все ответы на похожие вопросы в разделе Информатика.
Трудности с домашними заданиями? Не стесняйтесь попросить о помощи - смело задавайте вопросы!
Информатика — наука о методах и процессах сбора, хранения, обработки, передачи, анализа и оценки информации с применением компьютерных технологий, обеспечивающих возможность её использования для принятия решений.