پنجشنبه 5 دی 1392
06:23
نظرات()
با سلام ، در این پست پیرو پست آقای دانوش به بررسی کد برنامه مثلث خیام - نیوتون - پاسکال خواهیم پرداخت .
برای مشاهده و مطالعه ی توضیحات و کد برنامه به ادامه مطلب مراجعه نمایید.
این برنامه به ترتیب زیر نوشته شده است:
1- تابعی جهت محاسبه فاکتوریل یک عدد.
نکته : برای این که تابع فاکتوریل قادر به محاسبه ی فاکتوریل اعداد بزرگتر نیز باشد از long int استفاده می کنیم.
2-تابعی جهت محاسبه ی جایگشت .
3- حال در تابع اصلی (main) ، ابتدا یک آرایه 100 خانه ای و یک عدد از نوع اعداد صحیح تعریف می کنیم.
4- تعداد سطر هایی را که باید از چاپ شود را از کاربر دیافت می نماییم.
5- می دانیم که اعداد واقع در هر سطر این مثلث ، ضرایب بسط کاشانی می باشند که آنها نیز از جایگشت بدست می آیند ؛
در حلقه ی اول i از 0 و تا زمانی که کوچکتر از عدد ورودی می باشد به پیش می رود (i=0 نشان دهنده سطر اول ، i=2 نشان دهنده سطر دوم و ... میباشد) و در حلقه ی دوم مقادیر جایگشت در خانه های آرایه قرار می گیرند .
و در حلقه ی آخر نیز مقادیر واقع در خانه های آرایه چاپ می شوند.
نکته : ما می توانیم از نوشتن حلقه ی سوم صرف نظر کنیم و چاپ مقادیر آرایه ها را نیز در حلقه دوم قرار دهیم.
6- در آخر نیز برای اینکه پس از اتمام هر سطر به سطر پایین تر برویم از دستور endl استفاده نموده ایم.
کد برنامه :
//In The Name of God
//inftek . tk
#include <iostream.h>
#include <conio.h>
long int fact (int a)
{
long int f=1;
for(int i=1;i<=a;i++)
{
f*=i;
}
return f;
}
float jaygasht(int a , int b)
{
float z=0;
z=fact(a)/(fact(b)*fact(a-b));
return z;
}
void main()
{
clrscr();
int n ;
int a[100];
cout<<"lotfan tedade satr ha ra vared konid = ";
cin>>n;
cout<<"\n";
for(int i=0;i<n;i++)
{
for(int j=0;j<=i;j++)
{
a[j]= jaygasht(i,j);
}
for(int k=0;k<=i;k++)
{
cout<<a[k]<<" ";
}
cout<<endl;
}
getch();
}
به امید بهره مندی کامل از این پست.
لطفا سوالات ، انتقادات ، پیشنهادات و ... را از طریق پست الکترونیک و یا از قسمت نظرات با ما در میان بگذارید.