Форум программистов, компьютерный форум CyberForum.ru

Определить является ли число к степенью 3 - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Нахождение палиндрома http://www.cyberforum.ru/cpp-beginners/thread244080.html
Написать функцию, которая определяет, является ли строка палиндромом. Заголовок функции: bool isPolindrom(const char *s); Написать программу, которая принимает от пользователя набор строк (массив строк), и выводит на экран только те строки, которые являются палиндромами
C++ Перегрузка operator<< Доброе время суток. Есть очередная задачка - перегрузить оператор вывода таким образом: Есть три объекта разных классов - А а, В в, С с; Нужно, чтобы при записи а << b << c; изменялось значение некоторых членов всех трех классов, ну грубо говоря, пусть там есть по одному члену типа float и пусть при такой записи вывода произойдет нечто вроде b.f+=0.2*c.f; a.f+=0.8*c.f; http://www.cyberforum.ru/cpp-beginners/thread244075.html
C++ Открытие и Закрытие дисковода.
Вот такой у меня код #pragma comment(lib,"winmm.lib") #include <iostream> #include <mmsystem.h> using namespace std; int main () { mciSendString("Set cdaudio door open wait", NULL, 0, NULL); mciSendString("Set cdaudio door closed wait", NULL, 0, NULL); }
C++ Найти максимальный четный элемент массива
Здравствуйте! Если вам не сложно - напишите пожалуйста программу для нахождения максимального четного элемента массива на Си.
C++ освоение основ http://www.cyberforum.ru/cpp-beginners/thread244063.html
я учусь на инженера программного обеспечения на втором курсе. Нам дают всего по чу-чуть, возникла нужда в самообразовании. Как я выяснил для себя, я плохо знаю основы и самому трудно написать программу. Решил самостоятельно пройтись по следующим темам условия, циклы, массивы, указатели, функции, алгоритмы сортировки и поиска, структуры данных. По выполнять упражнения с книги, пописать по больше....
C++ MessageBox выводит китайские(японские) иероглифы DWORD dwRead = 0; DWORD buf_size = 4096; DWORD dwSize = GetFileSize(hFile, NULL); char* pBuffer=(char*)VirtualAlloc(NULL,buf_size,MEM_COMMIT,PAGE_READWRITE); ReadFile(hFile, pBuffer, dwSize, &dwRead, NULL); CString ptr2 = reinterpret_cast<LPCWSTR>(pBuffer); MessageBox(ptr2) подробнее

Показать сообщение отдельно
silent_1991
Эксперт С++
4963 / 3039 / 149
Регистрация: 11.11.2009
Сообщений: 7,027
Завершенные тесты: 1
17.02.2011, 01:26
ForEveR, красиво)))
Я бы вашу реализацию так разбил:

C++
1
2
3
4
5
6
7
8
9
10
11
12
bool degr(int, int);
int degr_helper(int, int, int);
 
bool degr(int one, int deg)
{
    return one == degr_helper(one, deg, 1);
}
 
int degr_helper(int one, int deg, int res)
{
    return one <= 1 ? res : degr_helper(one / 3, deg, res * 3);
}
ИМХО, пользователь должен ввести два числа и получить ответ, является ли одно число степенью другого, не вникая в детали реализации (обязательная передача 1) и не сравнивая потом результат с самим числом. Но это ИМХО, конечно)))
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru