С Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы

как проверить цифру, на то что она является степенью тройки - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Ошибка C2106. http://www.cyberforum.ru/cpp-beginners/thread354333.html
Здравствуйте, при попытке символьному элементу структуры (char name ) присвоить такой же символьный элемент выдается ошибка C2106 - левый операнд должен быть левосторонним значением. Вот фрагмент...
C++ Поблочное чтение из файла Здравствуйте, балуюсь с чтением из файла. Так вот если читать посимвольно всё в порядке, но больно долго. А если хитро "буферизированно" читать методом ifstream::read() то быстро но... проблемма...... http://www.cyberforum.ru/cpp-beginners/thread354331.html
Паттерны C++
Паттерн Flyweight Паттерн Domain Model (Модель области определения).Кто знает что это.И может на сайте есть коды хоть примерно этого.
C++ Оцените код нахождения числа уникальных элементов строк матрицы
Суть задания: дана непрямоугольная матрица(в каждой строке разное кол-во элементов). Необходимо вывести в другую строку число уникальных элементов. Например вводим: 1 2 3 1 1 1 2 1 3 3 2 3...
C++ Составить программы вычисления значений суммы и произведений ряда http://www.cyberforum.ru/cpp-beginners/thread354306.html
Помогите кто нибудь. (0.5*n!)/(0/1*n+1) надо Составить программу вычисления значений суммы и произведений ряда там перед формулой П большая. над ней m под ней n-2
C++ вопрос по среде программирования dev-cpp Объясните пожалуйста чем в среде программирования %lf отличается от ну например %i. К примеру в такой задачке "Дано трехзначное число. В нем зачеркнули первую слева цифру и приписали ее в конце.... подробнее

Показать сообщение отдельно
Thinker
Эксперт С++
4229 / 2203 / 150
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
21.09.2011, 12:00
Зачем деления в алгоритмах?! Вот:

C++
1
2
3
4
5
6
7
8
9
int Is_deg(unsigned long a)
{
   unsigned long b = 1;
   if (a == 0)
      return 0;
   while (b < a)
      b *= 3;
   return a == b;
}
Цитата Сообщение от adilet Посмотреть сообщение
как проверить цифру, на то что она является степенью тройки? помогите плиз
Правильнее сказать проверить число.

Цитата Сообщение от BoBaH26 Посмотреть сообщение
Вы еще "нагружаете" программу пользовательской функцией "is_power_of".
Но, согласитесь, ваш цикл
C++
1
for (int i=1;i<=200;i++)
не блещет универсальностью. Число 200 с потолка взято. Хорошо зато, что делений нет в вашем алгоритме.


Цитата Сообщение от BoBaH26 Посмотреть сообщение
Согласитесь, самый рациональный вариант из всех предложенных, причем идеи взяты из всех 3 способов.
А где у вас проверка собственно на степень?
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.