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

โปรแกรม C เพื่อย้อนกลับตัวเลขที่กำหนดโดยใช้ฟังก์ชันแบบเรียกซ้ำ


"ฟังก์ชันแบบเรียกซ้ำ" คือสิ่งที่เรียกตัวเองอีกครั้งในเนื้อหาของฟังก์ชัน

ตัวอย่างเช่น

  • ฟังก์ชันข้อเท็จจริง ( ) ซึ่งคำนวณแฟกทอเรียลของจำนวนเต็ม 'N' ซึ่งเป็นผลคูณของจำนวนเต็มทั้งหมดตั้งแต่ 1 ถึง N

  • fact ( ) ด้วยอาร์กิวเมนต์ 1 (หรือ) 0 ฟังก์ชันจะคืนค่า 1 มิฉะนั้น ฟังก์ชันจะคืนค่า n*fact (n-1) ซึ่งจะเกิดขึ้นจนกว่า 'n' จะเท่ากับ 1

Fact (5) =5* fact (4)
   =5*4*3* fact (3)
   =5*4*3*2* fact (2)
   =5*4*3*2*1 fact (1)
   =5*4*3*2*1
   = 120.

ตัวอย่าง

ต่อไปนี้เป็นโปรแกรม C สำหรับใช้ฟังก์ชันแบบเรียกซ้ำเพื่อย้อนกลับตัวเลข -

#include<stdio.h>
main ( ){
   int n,f;
   int fact (int);
   clrscr ( );
   printf ("enter a number");
   scanf ("%d", &n);
   f= fact (n);
   printf (factorial value = %d",f);
}
int fact (int n){
   int f;
   if ( ( n==1) || (n==0))
      return 1;
   else
      f= n*fact (n-1);
   return f;
}

ผลลัพธ์

ผลลัพธ์จะได้รับด้านล่าง -

Enter a number 5
Factorial value = 120

รับด้านล่างเป็นโปรแกรม C อื่นที่จะกลับตัวเลขที่กำหนดโดยใช้ฟังก์ชันแบบเรียกซ้ำ -

#include<stdio.h>
int sum=0,rem;
int main(){
   int num,revNum;
   printf("enter number:\n");
   scanf("%d",&num);
   revNum=revNumFunction(num);//calling function to reverse the given number
   printf("the number after reverse :%d",revNum);
   return 0;
}
revNumFunction(int num){
   if(num){
      rem=num%10;
      sum=sum*10+rem;
      revNum(num/10);
   }
   else
      return sum;
}

ผลลัพธ์

ผลลัพธ์จะเป็นดังนี้ −

enter number: 1357
the number after reverse is :7531