Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 14.12.2012, 00:06   #11
Abstraction
Старожил
 
Аватар для Abstraction
 
Регистрация: 25.10.2011
Сообщений: 3,178
По умолчанию

Цитата:
(Отрицательные не обрабатываются)
Ноль тоже не обрабатывается.
Abstraction вне форума Ответить с цитированием
Старый 14.12.2012, 01:53   #12
pproger
C++ hater
СтарожилДжуниор
 
Аватар для pproger
 
Регистрация: 19.07.2009
Сообщений: 3,333
По умолчанию

Код:
#include <iostream>

#define SINGLE_DIGIT(x) \
template <> \
struct MaxRank<(x)> { \
	enum { value = 1 }; \
};

template <int N>
struct MaxRank {
	enum { value = MaxRank<N / 10>::value * 10 };
};

SINGLE_DIGIT(0);
SINGLE_DIGIT(1);
SINGLE_DIGIT(2);
SINGLE_DIGIT(3);
SINGLE_DIGIT(4);
SINGLE_DIGIT(5);
SINGLE_DIGIT(6);
SINGLE_DIGIT(7);
SINGLE_DIGIT(8);
SINGLE_DIGIT(9);

template <int N, size_t RANK = MaxRank<N>::value>
struct ReverseNumber {
	enum { value = ReverseNumber<N / 10, RANK / 10>::value + (N % 10) * RANK };
};

template <size_t RANK>
struct ReverseNumber<0, RANK> {
	enum { value = 0 };
};

int main()
{
	std::cout << ReverseNumber<12345>::value << std::endl;
	std::cout << ReverseNumber<123456789>::value << std::endl;
	std::cout << ReverseNumber<1>::value << std::endl;
	std::cout << ReverseNumber<2236>::value << std::endl;
}
I invented the term Object-Oriented, and I can tell you I did not have C++ in mind. (c)Alan Kay

My other car is cdr.

Q: Whats the object-oriented way to become wealthy?
A: Inheritance
pproger вне форума Ответить с цитированием
Старый 16.12.2012, 22:41   #13
zorg-kirill
Пользователь
 
Регистрация: 11.11.2012
Сообщений: 32
По умолчанию

Спасибо за помощь!)
P.s. последний пост для меня пока вообще темный лес в плане понимания кода...
zorg-kirill вне форума Ответить с цитированием
Старый 16.12.2012, 23:15   #14
Rififi
Старожил
 
Регистрация: 19.08.2009
Сообщений: 2,119
По умолчанию

Цитата:
Сообщение от Murashov Посмотреть сообщение
Код:
    if(number==NULL) return 0;
Rififi вне форума Ответить с цитированием
Старый 17.12.2012, 08:19   #15
Murashov
Форумчанин
 
Аватар для Murashov
 
Регистрация: 30.10.2012
Сообщений: 121
По умолчанию

Цитата:
Сообщение от Rififi Посмотреть сообщение
знаю, лень было.. о чём думал о том и писал)
Murashov вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Цифры заданного натурального числа запишите в обратном порядке Radius100 Помощь студентам 2 09.02.2012 11:39
Возврат числа в обратном порядке C tem_80 Общие вопросы C/C++ 5 25.01.2011 01:07
Вывод на экран записей в прямом и обратном порядке mileshin Помощь студентам 3 20.04.2010 09:19
Вывести числа в обратном порядке asmcc Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 14 20.02.2010 11:46