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

พิมพ์รูปแบบโดยไม่ใช้การวนซ้ำใน C++


ในปัญหานี้ เราได้รับตัวเลข n งานของเราคือการพิมพ์ลวดลายโดยลดลงเหลือ 0 หรือติดลบแล้วเพิ่มกลับเป็นตัวเลข

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

Input: n = 12
Output: 12 7 2 -3 2 7 12

เพื่อแก้ปัญหานี้ เราจะใช้การเรียกซ้ำและเรียกใช้ฟังก์ชันหลังการอัปเดตแต่ละครั้ง ติดตามการอัปเดตโดยใช้ตัวแปรแฟล็กซึ่งบอกให้ฟังก์ชันเพิ่มหรือลดจำนวนขึ้น 5

ตัวอย่าง

โค้ดด้านล่างช่วยให้ใช้งานโซลูชันของเราได้

#include <iostream>
using namespace std;
void printNextValue(int m){
   if (m > 0){
      cout<<m<<'\t';
      printNextValue(m - 5);
   }
   cout<<m<<'\t';
}
int main(){
   int n = 13;
   cout<<"The pattern is:\n";
   printNextValue(n);
   return 0;
}

ผลลัพธ์

The pattern is −
13 8 3 -2 3 8 13