So sánh 2 phân số dev c

Bài 1: Viết chương trình nhập vào N phân số (mỗi dòng gồm 2 số nguyên là tử số và mẫu số), yêu cầu tìm phân số nhỏ nhất trong các phân số trên (sau khi tối giản).

Input

Output

1 2 2 4

1/2

include <iostream>

using namespace std;

struct PhanSo { int tu, mau; };

istream& operator >> (istream & is, PhanSo & m) { is >> m.tu >> m.mau; return is; }

ostream& operator << (ostream & os, PhanSo m) { os << m.tu << "/" << m.mau; return os; }

int UCLN(int m , int n) { if (m == 0 && n == 0) return 1; while (m != n) {if (m > n) m -= n; else n -= m; } return m; }

void Rutgon(PhanSo & m) { int d = UCLN(m.tu, m.mau); m.tu /= d; m.mau /= d; }

bool operator > (PhanSo m, PhanSo n) { if (m.tu / m.mau > n.tu / n.mau)return true; return false; }

int main () { int d , bdem = 1; PhanSo A[100]; while (cin >> A[bdem]) {Rutgon(A[bdem]); ++bdem; } PhanSo K = A[1]; for (int i = 2; i < bdem; i++) {if (K > A[i]){ K=A[i]; } } cout << K; return 0; }

Bài 2: Nhập vào một danh sách lớp SinhVien, yêu cầu xuất ra thông tin của tất cả sinh viên có điểm trung bình cao nhất và thấp nhất trong lớp đó.

Chủ đề