+ 1

Как написать программу

найти самое маленькое натуральное число такое, чтобы произведение его цифр было равно заданному числу

18th Apr 2018, 9:44 AM
Фаткулина Ильзира
Фаткулина Ильзира - avatar
7 ответов
+ 1
это все условия? Я задам число 13. Нельзя получить это число произведением из цифр(0-9), а только числами 1 и 13.
21st Apr 2018, 10:53 PM
Андрей Вологодский
Андрей Вологодский - avatar
0
значит выводим -1)
22nd Apr 2018, 6:40 PM
Фаткулина Ильзира
Фаткулина Ильзира - avatar
0
пробуй в VS using System; namespace ConsoleApplication1 { class Program { static void Main(string[] args) { Console.Write("Введите число: "); int ch = int.Parse(Console.ReadLine()); int ost; int x = 0; int[] massiv = new int[] {}; while (ch > 1) { for (int i = 9; i > 0; i--) { if (i == 1) { ch = 0; Array.Resize(ref massiv, 0); } else { ost = ch % i; if (ost == 0) { x += 1; Array.Resize(ref massiv, x); massiv[x - 1] = i; ch /= i; break; } } } } if (massiv.Length > 0) { Array.Sort(massiv); for (int i = 0; i < x; i++) { Console.Write(massiv[i]); } Console.ReadKey(); } else { Console.WriteLine("-1"); Console.ReadKey(); } } } }
22nd Apr 2018, 11:16 PM
Андрей Вологодский
Андрей Вологодский - avatar
0
спасибо)
23rd Apr 2018, 7:58 AM
Фаткулина Ильзира
Фаткулина Ильзира - avatar
0
единственное....там не работает вывод, если входное число меньше 10. Мне непонятно какой результат ты хочешь увидеть. При в вводе допустим 6, чтобы выводилось 6 или 16.
23rd Apr 2018, 12:49 PM
Андрей Вологодский
Андрей Вологодский - avatar
0
вроде, работает, ну это если често и сама не по6имаю)
24th Apr 2018, 8:32 PM
Фаткулина Ильзира
Фаткулина Ильзира - avatar
0
ну, если нужно, то добавь в код доп проверку if (ch<10) { Console.WriteLine(ch или ch+10);} else { весь код начиная с while}
25th Apr 2018, 5:48 AM
Андрей Вологодский
Андрей Вологодский - avatar