-
فاکتوریل ماکزیمم
تابعی بنویسید که ورودی آنnبوده,nعددرادریافت کندوماکزیمم آن ها را محاسبه کند و بعد از محاسبه فاکتوریل ماکزیمم,جمع جملات فیبوناچی از جمله اول تا جمله فاکتوریل ماکزیمم را به عنوان خروجی بازگرداند؟برنامه به زبانc++
برنامه فیبوناچی این میشه:
[CODE]
#include <stdlib.h>
#include <time.h>
#include <iostream.h>
#include <Conio.h>
using namespace std;
int main()
{
int b,r,a,c,d,f;
cout<<"chand ta donbale fiubunachi mikhahid?"<<endl;
cin>>d;
long int y[49];
y[1]=1;
y[2]=1;
for (int a=3;a<d+3;a++)
{
y[a]=0;
}
for (int a=3;a<d+3;a++)
{
y[a+1]=y[a]+y[a-1];
cout<<y[a+1]<<endl;
}
getch();
return 0;
}
برنامه فاکتوریل این میشه:
کد:
#include "stdafx.h"
#include "Conio.h"
#include "iostream"
#include "windows.h"
using namespace std;
int main()
{
unsigned long int d,max,a,b,c,x;
cout<<"faktoriel che adadi ra mikhahid hesab konid?"<<endl;
cout<<"faktoriel adad bozorgtar az 33 ra nemitavanad hesab konad."<<endl;
d=1;
cin>>a;
if (a>33)
{
cout<<"error."<<endl<<"lotfam addad kuchektar az 33 ra vared konid.";
getch();
goto esc;
}
for (int b=1;b<=a;b++)
{
d=d*b;
}
cout<<"faktoriel adad "<<a<<" mosavi ast ba "<<d;
getch();
esc:return 0;
}
ولی نمیدونم جواب سوال اصلی چی میشه!!!ممنون میشم کمک کنید
-
جوابشو پیدا کردم
کدشو میذارم شاید بدرد کسی بخوره
کد:
#include <iostream>
using namespace std;
long int fibo(long int n)
{
int a = 1, b = 0, c = 1, i = 0;
long int fibo = 0;
while (i < n)
{
i++;
c = a + b;
fibo += c;
a = b;
b = c;
}
return fibo;
}
long int fact(int n)
{
long int f = 1;
for (int i = 1; i <= n; i++)
f *= i;
return f;
}
int max(int n)
{
int i = 0, num, max;
cout << "Enter Number " << i + 1 << " : ";
i++;
cin >> num;
max = num;
for (int j = 0; j < n - 1; j++ , i++)
{
if (num>max)
max = num;
cout << "Enter Number " << i + 1 << " : ";
cin >> num;
}
return max;
}
int main()
{
int n, a, b, c;
cout << "How Many Numbers ? ";
cin >> n;
a = max(n);
b = fact(a);
c = fibo(b);
system("cls");
cout << c;
system("pause");
}
-
امیدوارم به درد کسی بخوره