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

Возвод в степень - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ С чего начать учить? http://www.cyberforum.ru/cpp-beginners/thread331609.html
Посоветуйте учебные пособия и IDE для изучения C++
C++ Текст и графика Всем привет.Не разобрался пока с текстом и графикой,1 задача дан текст,нужно сделать корректировку,если встретятся символы:$-красная строка(7 пробелов),#-удалить следующее слово,@-удалить следующую... http://www.cyberforum.ru/cpp-beginners/thread331604.html
разработать приложение "Лабиринт" (c++) C++
разработать приложение "Лабиринт" в котором описан класс (структура), реализующий стек. программа должна использовать этот стек для описания прохода по лабиринту. Лабиринт представляется в виде...
Даный целые числа, заменить нулями члены, модуль которых при делении на p даёт в остатке q C++
Помогите написать программу на Си, не С++, обычный Си. Вот условие: "Даный целые числа p, q, a1, .... a67 (p>q>=0). В последовательности a1, ....., a67 заменить нулями члены, модуль которых при...
C++ Откорректировать программу: вхождение символов строки в другую строку http://www.cyberforum.ru/cpp-beginners/thread331566.html
Дана задача: Написать и протестировать функцию STRS(str1, str2), Написать и протестировать функцию STRS(str1, str2), которая определяет, встретился ли в строке str1 какой-нибудь символ из строки...
C++ Поиск в файле Всем привет) Нужно прочитать фаил и вывести все имена в консоль. Но никак не могу сообразить как. Помогите пожалуйста. Содержимое файла: n Рома n Паша n Игорь ....и т.д. и т.п. подробнее

Показать сообщение отдельно
CoVeReTeSS
3 / 3 / 0
Регистрация: 24.03.2011
Сообщений: 99

Возвод в степень - C++

10.07.2011, 22:07. Просмотров 792. Ответов 9
Метки (Все метки)

Здравствуйте дорогие форумчане, у Вас на сайте видел я код программы для вычисления огромных факториалов
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
#include "StdAfx.h"
#include <stdio.h>
#include <iostream>
#include <sstream>
#include <vector>
 
#define base 1000000000
 
 
void writelong(std::vector<int> vec){
    printf ("%d", vec.empty() ? 0 : vec.back());
    for (int i=(int)vec.size()-2; i>=0; --i)
        printf ("%09d", vec[i]);
}
std::vector<int> smult(std::vector<int> a, int b){
    int carry = 0;
    for (size_t i=0; i<a.size() || carry; ++i) {
        if (i == a.size())
            a.push_back (0);
        long long cur = carry + a[i] * 1ll * b;
        a[i] = int (cur % base);
        carry = int (cur / base);
    }
    while (a.size() > 1 && a.back() == 0)
        a.pop_back();
    return a;
}
 
int main(){
    int b;
    std::cin >> b;
    std::vector<int> a(1,1);
    for (int i = 1; i <= b; i++)
        a=smult(a,i);
    writelong(a);
    system("pause");
}
Извините, но как реализовать код возведения в степень через вектор.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru