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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

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

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 30.06.2011, 20:00   #11
Pein95
Форумчанин
 
Регистрация: 25.04.2010
Сообщений: 881
По умолчанию

последовательность A1,A2,..,An состои из нулей и единиц. Поставить в начало этой последовательности нули, а затем единицы.
можно сделать обычной сортировкой масива, в сети алгоритмов навалом.
Pein95 вне форума
Старый 30.06.2011, 20:11   #12
Сtrl
C++
Форумчанин
 
Аватар для Сtrl
 
Регистрация: 27.03.2011
Сообщений: 803
По умолчанию

Цитата:
Применение рекурсивных функций: Подсчитать количество цифр в заданном натуральном числе.
Пытался решить на Паскале, но по-моему я уже разучился им пользоваться, так что вот написал реализацию на C++:
Код:
#include <cmath>

inline int IntPow(int _X, int _Y) //int-обертка для pow
{
	return static_cast<int>(
		std::pow(static_cast<double>(_X), _Y)
		);
}


int UnsignedSumOfDecimalDigits(int num)
{
	if (num < 10)
		return num;
	else
	{
		int first_digit = num;
		int count_of_divides = 0;
		while (first_digit >= 10)
		{
			first_digit /= 10;
			++count_of_divides;
		}
		int num_without_first_digit = //волшебная формула:
			num - first_digit * IntPow(10, count_of_divides);
		return first_digit + UnsignedSumOfDecimalDigits(num_without_first_digit);
	}
}

inline int SumOfDecimalDigits(int num) //signed-обертка
{
	/* Убираем минус у числа */
	if (num < 0)
		num = -num;
	return
		UnsignedSumOfDecimalDigits(num);
}
Ищете информацию по C++?
cplusplus.com
Сtrl вне форума
Закрытая тема


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Очень нужна помощь c матрицами, макросами в Excel. Заранее благодарен(поверьте, очень-очень нужна помощь) Farridjan Помощь студентам 1 03.07.2009 12:24
Очень нужна помощь! Нужно найти ошибку в очень простой программе. Lex55555777 Помощь студентам 3 07.12.2008 20:32