酷代码 AI
菜单
服务商

c++使用高精度算法计算斐波那契数列第200项

以下是一个使用 C++ 实现高精度计算斐波那契数列第 200 项的示例代码: ```cpp #include <iostream> #include <vector> std::vector<int> add(const std::vector<int>& a, const std::vector<int>& b) { std::vector<int> result; int carry = 0; int i = a.size() - 1; int j = b.size() - 1; while (i >= 0 || j >= 0 || carry) { int sum = carry; if (i >= 0) sum += a[i--]; if (j >= 0) sum += b[j--]; carry = sum / 10; result.push_back(sum % 10); } std::reverse(result.begin(), result.end()); return result; } std::vector<int> fibonacci(int n) { if (n <= 0) { return std::vector<int>(); } else if (n == 1) { return std::vector<int>{1}; } else if (n == 2) { return std::vector<int>{1}; } std::vector<int> a{1}; std::vector<int> b{1}; for (int i = 3; i <= n; ++i) { std::vector<int> temp = add(a, b); a = b; b = temp; } return b; } int main() { std::vector<int> result = fibonacci(200); for (int digit : result) { std::cout << digit; } std::cout << std::endl; return 0; } ``` 这段代码使用了向量来存储每一位数字,通过逐位相加来计算斐波那契数列的项。由于斐波那契数列增长很快,普通的数据类型无法存储第 200 项的值,所以采用高精度算法来处理。 [2024-11-06 16:31:34 | AI写代码神器 | 472点数解答]

相关提问
实用工具查看更多
今日油价 [生活类]
图片互转base64 [开发类]
时间转换器 [开发类]
数独游戏 [娱乐类]
经典推箱子 [娱乐类]
AI摸鱼五子棋 [娱乐类]