Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C++

N-th Tribonacci Number ใน C++


สมมติว่าเรามีค่า n เราต้องสร้างหมายเลข Tribonacci ที่ n ตัวเลข Tribonacci นั้นคล้ายกับตัวเลข Fibonacci แต่ในที่นี้ เรากำลังสร้างคำศัพท์โดยการเพิ่มคำศัพท์ก่อนหน้าสามคำ สมมติว่าเราต้องการสร้าง T(n) จากนั้นสูตรจะเป็นดังนี้ -

T(n) = T(n - 1) + T(n - 2) + T(n - 3)

ตัวเลขสองสามตัวแรกที่จะเริ่มต้นคือ {0, 1, 1}

เราสามารถแก้ไขได้โดยทำตามอัลกอริธึมนี้ -

อัลกอริทึม

• first := 0, second := 1, third := 1
• for i in range n – 3, do
   o next := first + second + third
   o first := second, second := third, third := next
• return third

ตัวอย่าง (C++)

#include<iostream>
using namespace std;
long tribonacci_gen(int n){
   //function to generate n tetranacci numbers
   int first = 0, second = 1, third = 1;
   for(int i = 0; i < n - 3; i++){
      int next = first + second + third;
      first = second;
      second = third;
      third = next;
   }
   return third;
}
main(){
   cout << "15th Tribonacci Term: " << tribonacci_gen(15);
}

อินพุต

15

ผลลัพธ์

15th Tribonacci Term: 1705