أكواد برمجية بلغة سي (02)

مجموعة من الأكواد البرمجية بلغة البرمجة سي (02)

مرحبا بكم اعزائي متابعي مدونة التارقي إلى هذه التدوينة 


اليوم اصدقائي أشارككم  هذا الموضوع والذي يتمثل في مجموعة من الشيفرات البرمجية الخاصة بلغة البرمجة سي , هذه الاكواد خاصة بالدوال والدوال التراجعية ,  كل ما عليكم أعزائي هو نسخ الكود أو الشيفرة البرمجية وعمل لصق للكود في البرنامج الذي تستخدمه للتشفير .
يمكنك إستعمال برنامج  pelles c for windows 

  للتحميل إضغط هنا  

وهذه الصورة تقدم توضيح مختصر للعملية :






الكود الاول :
دالة تراجعية تقوم بحساب عاملي n 
#include<stdio.h>
int fact(int n)
{
int s;
if(n==0)
{
s=1;
}
else
{
s=fact(n-1)*n;
    }
return s;
}
int main()
{
int a,n;
printf("entre la valeur de n=");
scanf("%d",&n);
a=fact(n);
printf("factorial n= %d",a);
}

الكود الثاني :
دالة تراجعية تقوم بحساب x^n 
#include<stdio.h>
int pui(int n,int x)
{
int s;
if(n==0)
{
s=1;
}
else
{
s=pui(n-1,x)*x;
}
return s;
}
int main()
{
int c,n,x;
printf("entre la valeur de n=");
scanf("%d",&n);
    printf("entre la valeur de x=");
scanf("%d",&x);
c=pui(n,x);
printf("le pui s= %d",c);
}

الكود الثالث :
دالة تراجعية تقوم بحساب المجموع 1+2+3+...+N
#include<stdio.h>
int some(int n)
{
int s;
if(n==0)
{
s=0;
}
else
{
s=some(n-1)+n;
}
return s;
}
int main()
{
int n,x;
printf("entre la valeur de n=");
scanf("%d",&n);
x=some(n);
printf("la some s= %d",x);
}
الكود الرابع : 
دالة تقوم بحساب القاسم المشترك الاكبر 
#include<stdio.h>

int pgcd(int a,int b)
{
while(a!=b)
    {
    if(a>b)
   {
   a=a-b;
   }
    else
{
   b=b-a;
   }
    }
return a;
}

int main()
{
int a,b,c;
printf("etre a=");
scanf("%d",&a);
printf("etre b=");
scanf("%d",&b);
c=pgcd(a,b);

printf("la some = %d",c);



}
الكود الخامس :
دالة تقوم بترتيب الاعداد من الكبر الى الاصغر والعكس .
#include <stdio.h>
int sup(int tab[10]){
int i,j,k;

for (j= 0 ; j<10 ; j++){
     for (i= 0 ; i<9 ; i++){
    if (tab[i]>tab[i+1]){
        k = tab[i];
        tab[i]=tab[i+1];
        tab[i+1]=k;}}}
}
int inf(int tab[10]){
int i,j,k;

for (j= 0 ; j<10 ; j++){
     for (i= 0 ; i<9 ; i++){
    if (tab[i]<tab[i+1]){
        k = tab[i];
        tab[i]=tab[i+1];
        tab[i+1]=k;}}}
}

int main()
{
    
     int tab [10],i,m;
     for (i= 0 ; i<10 ; i++){
     printf("\nvaleur %d =  ",i);
         scanf("%d",&tab[i]);}
       printf("\n Choassi Type de Ordre : \n\n 1-min a max      2-max a min \n\n");
       scanf("%d",&m);
               if(m==1){
     sup(tab);
    for (i= 0 ; i<10 ; i++){
    printf("\n tab[%d] = %d  \n",i,tab[i]);}
                            } 
                   else if(m==2){ 
     inf(tab);
    for (i= 0 ; i<10 ; i++){
    printf("\n tab[%d] = %d  \n",i,tab[i]);}
                                   }                         
}


أرجوا ان يكون الموضوع قد نال إعجابكم ☺ .


هناك تعليق واحد :