KTLT_9
1.Viết hàm int GiaiThua(int n), tính giá trị n’ và trả về. Dùngvòng lặp.
int GiaiThua(int n);
void main()
{
clrscr();
int i,n,kq=0;
printf("nhap vao n = ");
scanf("%d",&n);
for(i=1;i<=n;i++)
{
kq+=GiaiThua(i);
}
printf("
Ket qua = %d",kq);
getch();
}
int GiaiThua(int n)
{
int kq=1;
for (int i =2 ; i<=n ; i++)
{
kq *= i ;
}
Return kq ;
}2. giống b1 nhưng dùng đệ quy
int GiaiThua(int n)
{
if(n==1)
{
return 1;
}
return n*GiaiThua(n-1);
}
3. Viết hàm int Fib (int k) trả về giá trị số thứ k trong dãy Fibonacci với Fib(1)=1 , Fib(2)=1 , Fib(k)=Fib(k-1) + Fib(n-2). Viết chương trình nhập vào số nguyên dương n. Xuất ra n số Fibonacci đầu tiên.
int Fib(int k);
void main()
{
clrscr();
int i,n;
printf("nhap vao n ");
scanf("%d",&n);
printf(“
So Fibonacci dau tien la:
”,n);
for(i=1;i<=n;i++)
{
printf("%d ",Fib(i));
}
printf(“ \b. ”) ;
getch();
}
int Fib(int k)
{
if(k==1||k==2)
{
return 1;
}
return Fib(k-1)+Fib(k-2);
}
4. Viết hàm int BacNhat(int a, int b, double &x) a,b là hệ số của phương trình ax + b = 0 . x là nghiệm. Trả về 1 khi có 1 nghiệm 0 khi VN -1 khi VSN
int BacNhat(int a,int b,double &x);
void main()
{
clrscr();
int a,b;
double x;
printf("giai phuong trinh bac nhat ax+b=0 ");
printf("
\tnhap vao a = ");
scanf("%d",&a);
printf("
\tnhap vao b = ");
scanf("%d",&b);
int kq=BacNhat(a,b,x);
if(kq==-1)
{
printf("
PT co vo so nghiem");
}
else if(kq==0)
{
printf("
PT vo nghiem");
}
else
{
printf("
PT co 1 nghiem la x = %0.2f",x);
}
getch();
}
int BacNhat(int a,int b,double &x)
{
if(a==0 && b==0)
{
return -1;
}
else if(a==0 &&b!=0)
{
return 0;
}
else
{
x=-b/(a*1.0);
return 1;
}
}
Bạn đang đọc truyện trên: AzTruyen.Top