gpt4 book ai didi

c - 如何在 tribonacci 序列中打印非常大的数字

转载 作者:行者123 更新时间:2023-12-04 12:14:38 25 4
gpt4 key购买 nike

<分区>

所以我最近参加了一次大学考试,其中一个问题要求我们创建一个程序来打印出 tribonacci 序列中的第 n 个数字 (1,1,1,3,5,9,17,31.. .).据说这些数字长达 1500 位。我创建了一个适用于前 37 个 tribonacci 数的递归函数。但是在第38个数处发生了栈溢出。这个问题已经警告过我们,并说我们需要以某种方式克服这个问题,但我不知道如何克服。我们打算创建自己的数据类型吗?

double tribonacci(int n){
if(n < 4){
return 1;
}else{
return tribonacci(n-3) + tribonacci(n-2) + tribonacci(n-1);
}
}

int main(int argc, char *argv[]){
double value = tribonacci(atoi(argv[1]));
printf("%lf\n", value);
}

这是我在考试条件下写的解决方案,用时不到 15 分钟。

程序从命令行中的输入中获取 n 的值。除了 stdlib.h 和 stdio.h 之外,我们不允许使用任何库。因此,综上所述,如何创建一种大到足以打印出 1500 位数字的数据类型(因为 double 据类型只能容纳直到第 37 个 tribonacci 数)?或者这个问题还有其他方法吗?

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com