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

โปรแกรมค้นหาคำ N-th ในซีรีย์ที่กำหนดใน C++


ในปัญหานี้ เราได้รับตัวเลข N หน้าที่ของเราคือสร้างโปรแกรมเพื่อค้นหาคำศัพท์ N-th ในซีรีส์ที่กำหนดใน C++

คำอธิบายปัญหา

เพื่อหาผลรวมของอนุกรมที่กำหนด −

1, 1, 2, 3, 4, 9, 8, 27, 16, 81, 32, 243, 64, 729, 128, 2187, 256, ... ข้อกำหนด

เราจะหาคำศัพท์ทั่วไปของซีรีส์นี้

มาดูตัวอย่างเพื่อทำความเข้าใจปัญหากัน

ตัวอย่างที่ 1

ป้อนข้อมูล

ไม่มี =6

ผลผลิต

9

ตัวอย่างที่ 2

ป้อนข้อมูล

ไม่มี =13

ผลผลิต

64

แนวทางการแก้ปัญหา

ในการแก้ปัญหา เราต้องสังเกตชุดข้อมูลอย่างรอบคอบ เนื่องจากเป็นอยู่ อนุกรมผสมและซีรีส์ประเภทนี้จำยากในตอนแรก แต่ภายหลังจึงใช้งานได้ง่าย

ซีรีย์นี้เป็นซีรีย์ผสมของประเภทที่

ที่ตำแหน่งคู่ ดัชนีของอนุกรมเป็นอนุกรมของกำลัง 3

ที่ตำแหน่งคี่ ดัชนีของอนุกรมเป็นอนุกรมของกำลัง 2

ศัพท์ทั่วไปได้มาเป็น −

T_{N}=2^{N/2} ถ้า N เป็นเลขคี่

3^{N/2} ถ้า N เป็นคู่

ตัวอย่าง

#include <iostream>
#include <math.h>
using namespace std;
int findLCM(int a, int b) {
   int LCM = a, i = 2;
   while(LCM % b != 0) {
      LCM = a*i;
      i++;
   }
   return LCM;
}

int findNTerm(int N) {
   if(N%2 == 0){
      return pow(3, ((N-1)/2));
   }
   else
      return pow(2, (N/2));
}
int main() {
   int N = 9;
   cout<<N<<"th term of the series is "<<findNTerm(N)<<endl; N = 14; cout<<N<<"th term of the series is "<<findNTerm(N);
}

ผลลัพธ์

9th term of the series is 16
14th term of the series is 729