Tính khoảng cách giữa 2 ngày tháng bất kỳ!

Thảo luận trong 'C/C++' bắt đầu bởi takechij, 18 Tháng mười hai 2010.

  1. Offline

    takechij

    • Windows 98

    • Try so hard
    Số bài viết:
    386
    Đã được thích:
    165
    Điểm thành tích:
    140
    PHP:

    #include<iostream>
    #include<cmath>
    using namespace std;

    int SoNgayTrongThang(int thangint nam)
    {
       switch (
    thang)
       {
          case 
    2:
             return ((
    nam%!= || nam%100 == && nam%400 != 0)? 1)? 29 28;
          case 
    4: case 6: case 9: case 11:
             return 
    30;
          case 
    1: case 3: case 5: case 7: case 8: case 10: case 12:
             return 
    31;
          default:
             return 
    0;
       }
       return -
    1;
    }

    int main()
    {
    /* code trong main */
    int ng1th1nm1;
    int ng2th2nm2;
    int i,soNgay1,soNgay2;
    cout << "Nhap ngay thu nhat: ";cin >> ng1;
    cout << "Nhap thang thu nhat: ";cin >> th1;
    cout << "Nhap nam thu nhat: ";cin >> nm1;
    cout << "Nhap ngay thu hai: ";cin >> ng2;
    cout << "Nhap thang thu hai: ";cin >> th2;
    cout << "Nhap nam thu hai: ";cin >> nm2;

    soNgay1 ng1/* bắt đầu từ ngày và cộng số ngày của các tháng trước đó */
    for (i=1th1i++) soNgay1 += SoNgayTrongThang(inm1);

    soNgay2 ng2/* bắt đầu từ ngày và cộng số ngày của các tháng trước đó */
    for (i=1th2i++) soNgay2 += SoNgayTrongThang(inm2);

    int soNgayN1N2 0;
    int *n1 = &nm1;
    int *n2 = &nm2;
    if (
    nm1 nm2/* mẹo nhỏ này dùng khi cần đếm từ số nhỏ đến số lớn */
    {  n1 n2n2 = &nm1;  }
    for (
    i=*n1< *n2i++) soNgayN1N2 += 365 SoNgayTrongThang(2,i) - 28;
    if (
    nm1 nm2soNgayN1N2 -= -1;
    int khoangCach soNgay2 soNgay1 soNgayN1N2;  
    cout << khoangCach;
    return 
    0;
    }
    p/s: bài này mình đã thêm vài câu lệnh vào cho nó hoạt động :smells:
    (Nguồn: congdongcviet.com)
    viethung_9x, final, chickenkon2 người khác thích bài này.

Chia sẻ trang này

Advertising: Linux system admin | nukeviet | nukeviet 4 | Upload ảnh miễn phí