Viết hàm tính n giai thừa của một số nguyên dương(n!)
Hãy nhập câu hỏi của bạn vào đây, nếu là tài khoản VIP, bạn sẽ được ưu tiên trả lời.
#include <bits/stdc++.h>
using namespace std;
int gt(int n)
{
if(n==1)
return 1;
return n*gt(n-1);
}
int main()
{
int n;
cin>>n;
cout<<"Giai thua"<<n<<"la: "<<gt(n);
return 0;
}
Làm bằng pascal thì những bài như thế này thì test lớn chạy không nổi đâu bạn
#include <bits/stdc++.h>
using namespace std;
long long n,a,b;
int main()
{
cin>>n;
a=1;
while (pow(a,3)<=n)
{
a++;
}
if (pow(a,3)==n) cout<<"YES";
else cout<<"NO";
cout<<endl;
b=1;
while (pow(5,b)<=n) do b++;
if (pow(5,b)==n) cout<<"YES";
else cout<<"NO";
cout<<endl<<pow(n,n)%7;
return 0;
}
Tham khảo:
* Lặp tiến :
uses crt;
var i, n, P : longint;
begin
clrscr;
P := 1;
write('nhap so n : '); readln(n);
for i := 1 to n do P := P * i;
writeln(n,'! = ', P);
readln
end.
* Lặp lùi :
uses crt;
var i, n, P : longint;
begin
clrscr;
P := 1;
write('nhap so n : '); readln(n);
for i := n downto 1 do P := P * i;
writeln(n,'! = ', P);
readln
end.