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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 26.01.2011, 23:00   #1
Donatello
Форумчанин
 
Аватар для Donatello
 
Регистрация: 22.12.2010
Сообщений: 109
По умолчанию Функции

Здравствуйте, вот несколько дней не занимался программированием и вот опять сел за него, но пока не занимался им мозги перестали немного думать и вот что вышло

Есть задача.
Напишите ф-ию integerPower( base, exponent ), которая возвращает значение base в exponent
Например, integerPower( 3, 4 ) = 3 * 3 * 3 * 3. Считайте что exponent - положительное целое число, не равное нулю, а base - целое. Функция integerPower должна использовать для управления вычисление for или while. Не используйте никаких математический ф-ий.

Вот то что у меня получилось, но он возводит только в квадрат. Не могу что то придумать как возвести таким методом не только в квадрат но и в куб, точнее я понимаю как это должно быть, но что то записать это не получается, либо в 4 степень возводит либо во вторую.
Код:
#include <iostream>
using namespace std;

int integerPower(int base, int exponent);
int base, exponent;

int main()
{
    cout << "Введите целое число и степень в которую его нужно возвести: ";
    cin >> base >> exponent;

    cout << "Возведение в степень равно: " << integerPower( base, exponent ) << endl;
    return 0;
}

int integerPower( int base, int exponent )
{
    int base1, base2;
    while( exponent != 0 )
    {
        base1 = base;
        base2 = base1 * base;
        exponent--;
    }
    return base2;
}
Я бы изменил мир, но бог не дает исходников (c)

И сказал мыслитель, напиши свою проблему на бумаге и ты увидишь свои ошибки.
Donatello вне форума Ответить с цитированием
Старый 26.01.2011, 23:13   #2
veniside
Старожил
 
Регистрация: 03.01.2011
Сообщений: 2,508
По умолчанию

Код:
int base1 = 1;
while (0 < exponent--) base1 *= base;
return base1;
"Когда приходит положенное время, человек перестаёт играть в пинбол. Только и всего."
veniside вне форума Ответить с цитированием
Старый 26.01.2011, 23:22   #3
Donatello
Форумчанин
 
Аватар для Donatello
 
Регистрация: 22.12.2010
Сообщений: 109
По умолчанию

Спасибо, вечно забываю что в некоторых случаях нужно объявить переменную единицей.
Я бы изменил мир, но бог не дает исходников (c)

И сказал мыслитель, напиши свою проблему на бумаге и ты увидишь свои ошибки.
Donatello вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Мини бэйсик:объявление функции, вызов функции , возврат. AL_LORD Помощь студентам 2 14.10.2010 17:48
Программа на СИ++, используя функции работы с файлами и функции <string.h> Аня Popova Фриланс 9 13.09.2010 15:52
Функции в си. Вывод двумерного массива из функции. Evgen51 Общие вопросы C/C++ 9 13.05.2010 03:59
Чем отличается описание функции от определения функции в С++? Go6a Помощь студентам 4 18.07.2009 18:07
Функции. Передача массива в качестве параметра функции. Wia Помощь студентам 2 17.03.2009 14:57