Bài tập phân số - Fibonaci - Công nghệ thông tin | Trường đại học Hồng Đức

Bài tập phân số - Fibonaci - Công nghệ thông tin | Trường đại học Hồng Đức được sưu tầm và soạn thảo dưới dạng file PDF để gửi tới các bạn sinh viên cùng tham khảo, ôn tập đầy đủ kiến thức, chuẩn bị cho các buổi học thật tốt. Mời bạn đọc đón xem!

BÀI TẬP VỀ PHÂN SỐ
#include <bits/stdc++.h>;
using namespace std;
long long ucln(long x, long y)
{
if(y==0) return x;
return ucln(y,x%y);
}
long long bcnn(long x, long y)
{
long long tich=x*y;
if(y==0) return x;
return tich/ucln(x,y);
}
//CAC BAI TOAN VE PHAN SO
void nhap(int&x, int&y)
{
cin>>x>>y;
}
void xuat(int x, int y)
{
cout<<x<<"/"<<y;
}
//Rút gọn phân số
void rutgon(int x, int y)
{
int m=x/ucln(x,y);
int n=y/ucln(x,y);
cout<<m<<"/"<<n;
}
//Kiểm tra có phải phân số tối giản không?
bool toigian(int x, int y)
{
if(ucln(x,y)==1) return true;
else return false;
}
//Viết phân số về dạng hỗn số
void honso(int x, int y)
{
int m=x/y, n=abs(x)%abs(y);
if(abs(x)>abs(y)) cout<<m<<" "<<n<<"/"<<y;
else cout<<x<<"/"<<y;
}
//quy đồng phân số
void quydong(int x,int y, int z,int t)
{
x=x*bcnn(y,t)/y; z=z*bcnn(y,t)/t;
cout<<endl<<x<<"/"<<bcnn(y,t)<<endl;
cout<<z<<"/"<<bcnn(y,t)<<endl;
}
//Cộng hai phân số.
void cong(int x,int y, int z,int t )
{
x=x*bcnn(y,t)/y; z=z*bcnn(y,t)/t;
rutgon(x+z,bcnn(y,t)); cout<<endl;
}
//Trừ hai phân số
void truphanso(int x,int y, int z,int t )
{
x=x*bcnn(y,t)/y; z=z*bcnn(y,t)/t;
rutgon(x-z,bcnn(y,t)); cout<<endl;
}
//Nhân hai phân số.
void nhan(int x,int y, int z,int t )
{
x=x*z; y=y*t;
rutgon(x,y); cout<<endl;
}
//Chia hai phân số.
void chia(int x,int y, int z,int t )
{
x=x*t; y=y*z;
rutgon(x,y); cout<<endl;
}
//Kiểm tra phân số âm, dương
bool psa(int x, int y)
{
if((x>0&&y>0)||(x<0&&y<0)) return true;
else return false;
}
//So sánh 2 phân số: hàm trả về 1 trong 3 giá trị: 0,-1,1
void sosanh(int x, int y, int z, int t)
{
x=x*bcnn(y,t)/y; z=z*bcnn(y,t)/t;
if(x==z) cout<<"0";
else if(x>z) cout<<"1"; else cout<<"-1";
}
int main()
{
//freopen("toigian.inp","r",stdin); //freopen("toigian.out","w",stdout);
int a,b,c,d;
nhap(a,b); xuat(a,b); cout<<endl; nhap(c,d); xuat(c,d); cout<<endl;
cout<<ucln(a,b)<<endl; cout<<bcnn(a,b)<<endl;
rutgon(a,b); honso(a,b); quydong(a,b,c,d); cong(a,b,c,d); truphanso(a,b,c,d);
nhan(a,b,c,d); chia(a,b,c,d);
return 0;
| 1/2

Preview text:

BÀI TẬP VỀ PHÂN SỐ #include ; using namespace std; long long ucln(long x, long y) { if(y==0) return x; return ucln(y,x%y); } long long bcnn(long x, long y) { long long tich=x*y; if(y==0) return x; return tich/ucln(x,y); } //CAC BAI TOAN VE PHAN SO
void nhap(int&x, int&y) { cin>>x>>y; } void xuat(int x, int y) { cout<} //Rút gọn phân số void rutgon(int x, int y) { int m=x/ucln(x,y); int n=y/ucln(x,y); cout<}
//Kiểm tra có phải phân số tối giản không? bool toigian(int x, int y) { if(ucln(x,y)==1) return true; else return false; }
//Viết phân số về dạng hỗn số void honso(int x, int y) { int m=x/y, n=abs(x)%abs(y);
if(abs(x)>abs(y)) cout< else cout<} //quy đồng phân số
void quydong(int x,int y, int z,int t) {
x=x*bcnn(y,t)/y; z=z*bcnn(y,t)/t; cout< cout<} //Cộng hai phân số.
void cong(int x,int y, int z,int t ) {
x=x*bcnn(y,t)/y; z=z*bcnn(y,t)/t;
rutgon(x+z,bcnn(y,t)); cout<} //Trừ hai phân số
void truphanso(int x,int y, int z,int t ) {
x=x*bcnn(y,t)/y; z=z*bcnn(y,t)/t;
rutgon(x-z,bcnn(y,t)); cout<} //Nhân hai phân số.
void nhan(int x,int y, int z,int t ) { x=x*z; y=y*t; rutgon(x,y); cout<} //Chia hai phân số.
void chia(int x,int y, int z,int t ) { x=x*t; y=y*z; rutgon(x,y); cout<}
//Kiểm tra phân số âm, dương bool psa(int x, int y) {
if((x>0&&y>0)||(x<0&&y<0)) return true; else return false; }
//So sánh 2 phân số: hàm trả về 1 trong 3 giá trị: 0,-1,1
void sosanh(int x, int y, int z, int t) {
x=x*bcnn(y,t)/y; z=z*bcnn(y,t)/t; if(x==z) cout<<"0";
else if(x>z) cout<<"1"; else cout<<"-1"; } int main() {
//freopen("toigian.inp","r",stdin); //freopen("toigian.out","w",stdout); int a,b,c,d;
nhap(a,b); xuat(a,b); cout< cout< rutgon(a,b); honso(a,b); quydong(a,b,c,d); cong(a,b,c,d); truphanso(a,b,c,d); nhan(a,b,c,d); chia(a,b,c,d); return 0;