Вопрос Как в C++ разбить число на цифры и вывести их через пробел? Решение задачи реализовать с помощью кон

Регистрация
17 Ноя 2013
Сообщения
90
Репутация
0
Спасибо
0
Монет
0
Как написать программу, которая принимает от пользователя целое число в
диапазоне от 0 до 100000 и выводит это число по цифрам через пробел?
Решение задачи реализовать с помощью конструкции switch.
 
#include "iostream" #include "cmath" using namespace std; int main() { int n; cin >> n; for(int x = (int)log10(n); x >= 0; cout << n / (int)pow(10, x) << , n %= (int)pow(10, x--)); cin.get(); return 0; }
 
можно и через switch: #define switch(x) {int i=1;for(;i<=x;i*=10);for(i/=10;i>1;i/=10){printf("%d ",x/i%10);}printf("%d",x%10);} void main() { switch(12345); }
 
Разбить на цифры - остаток от деления на 10 Вывести цифру ( можно и через switch, только зачем? ) Или предлагается switch(num) { case 0: cout<<"0";break; case 1: cout<<"1";break; .... case 100000:cout<<"1 0 0 0 0 0";break; } сто тысяч строк??
 
Вообще-то решение с помощью switch - по моему худший из всех возможных вариантов. Такие задачи решаются делением на 10 по модулю. Если на простом примере, то 23 - это вывод 23/10=2 + пробел + 23%10=3
 
Назад
Сверху