امتیاز موضوع:
  • 7 رأی - میانگین امتیازات: 3.43
  • 1
  • 2
  • 3
  • 4
  • 5
کد چندتا تابع بازگشتی به زبان C
#1
این کد ی برنامه س که تابع های
جستجوی خطی بازگشتی
تابع توان
فاکتوریل
جستجوی دودویی
ب.م.م
رو تو منو داره و داده میگیره و حساب میکنه


میخواستم کدش رو رو صفحه بذارم که مهمونای عزیز نخوان عضو شدن ولی نمیش کدها رو جا به جا میزد !
پس ناچارن به ما پپیوندید.
در ضمن جوایم میده خیال تون تخت.
با زبان سی هم هست تو محیط ویژوال استادیو ج میده با کنسول اپلیکیشن.

پروژه های بانکی هم تو راهه ! میذارم تا چندوقت دیگه Wink
#include<stdio.h>
#include<conio.h>
int fibo(int);

int recursiveSequential( int a[], int size, int value );
int gcd(int a, int b);
int rBinarySearch(int sortedArray[], int first, int last, int key);
int power (int base, int exp);
int factorial(int number);
int fib(int x);

int main()
{

printf ("%s \n", "1:recursive sequential search");
printf ("%s \n", "2:great commmon divisor");
printf ("%s \n", "3:recursive binary search");
printf ("%s \n", "4:power");
printf ("%s \n", "5:factorial");
printf ("%s \n", "6:Fibonacci");
printf ("%s \n", "0:exit");
printf ("%s \n", "Enter a number between 1 and 6 : ");
int a[] ={1,3,5,6,7,9};
int num ;
scanf("%d",&num);
while(num!=0)
{
switch (num)
{
case 1:
{
for(int i =0;i<6;i++)
{
printf("%s \n","enter array numbers : ");
scanf("%d",&a[i]);
}
printf("%s \n","enter a numbers for search : ");
int j=0;
scanf("%d",&j);
printf("%s %d \n","location of number in array with recursive sequential search is :",recursiveSequential(a,6,j)+1);
break;
}
case 2:
{
int i,j;
printf ("%s \n", "enter two number");
scanf("%d",&i);
scanf("%d",&j);
printf("%s %d \n","great commmon divisor of this number is :",gcd(i,j));
break;
}
case 3:
{
int j=0;
for(int i =0;i<6;i++)
{
printf("%s \n","enter array numbers : ");
scanf("%d",&a[i]);
}
printf ("%s \n", "enter a number");
scanf("%d",&j);
printf("%s %d \n","location of number in array with recursive binary search is :",rBinarySearch(a,0,5,j)+1);
break;
}
case 4:
{
int i,j;
printf ("%s \n", "enter two number");
scanf("%d",&i);
scanf("%d",&j);
printf("%s %d \n","2 power 5 is :",power(i,j));
break;
}
case 5:
{
int i;
printf ("%s \n", "enter a number");
scanf("%d",&i);
printf("%s %d \n","factorial of this Number is :",factorial(i));
break;
}
case 6:
{
int i;
printf ("%s \n", "enter a number");
scanf("%d",&i);
printf("%s %d \n","Fibonacci of this number is :",fib(i));break;
}
default:printf ("%s \n", "wrong number !!! ");
}
printf ("\n");
printf ("\n");
printf ("%s \n", "1:recursive sequential search");
printf ("%s \n", "2:great commmon divisor");
printf ("%s \n", "3:recursive binary search");
printf ("%s \n", "4:power");
printf ("%s \n", "5:factorial");
printf ("%s \n", "6:Fibonacci");
printf ("%s \n", "0:exit");
printf ("%s \n", "Enter a number between 1 and 6 : ");
scanf("%d",&num);

}
return 0;
}

int recursiveSequential( int a[], int size, int value )
{
if( size == 0 )
return -1;
if( value == a[ size - 1 ] )
return size - 1;
return recursiveSequential( a, size - 1, value );
}


int gcd(int a, int b)
{
if(b == 0)
return a;
else
return gcd(b, a % b);
}


int rBinarySearch(int sortedArray[], int first, int last, int key)
{
if (first <= last)
{
int mid = (first + last) / 2;
if (key == sortedArray[mid])
return mid;
else if (key < sortedArray[mid])
return rBinarySearch(sortedArray, first, mid-1, key);
else
return rBinarySearch(sortedArray, mid+1, last, key);
}
return -(first + 1);
}


int power (int base, int exp)
{
if (exp==1)
return base * 1;
else if (exp >-1)
exp--;
return base * (power(base,exp));
}


int factorial(int number)
{
int temp;

if(number <= 1) return 1;

temp = number * factorial(number - 1);
return temp;
}

int fib(int x)
{
if ((x == 1)||(x==2))
return 1;
else
return fib(x-1)+fib(x-2);
}

ترترتر
پیوست م رو ساپورت نکرد (...)
یکی یادم داده این ... معنی مفیدی داره اینجاها Tongue

پاسخ
 سپاس شده توسط yaran
#2
نه بابا مفید شدی رفیق !!!!!!!!!!!!
پاسخ
 سپاس شده توسط Hossein.J
#3
دور مارو خط کشیده! ما کاری نداریما ولی با شیخ مفید پریده!!!!
Big Grin Big Grin Big Grin Big Grin Big Grin Big Grin Big Grin Tongue Tongue Tongue Tongue Tongue Tongue Tongue
................!
پاسخ
 سپاس شده توسط motahare


پرش به انجمن:


کاربرانِ درحال بازدید از این موضوع: 1 مهمان