Mọi người cho em hỏi lỗi Segmentation fault là bị sao ạ. Em cảm ơn
#include <iostream>
using namespace std;
struct date
{
int d;
int m;
int y;
};
int ng[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};
int Nhuan (int nam)
{
return (((nam%4==0)&&(nam%100!=0))||(nam%400==0))?1:0;
}
int Sngay (int thang, int nam)
{
return (ng[thang]+(((thang==2)&&(Nhuan(nam)==1))?1:0));
}
long int tngay (date ngtn)
{
long int tong=0, i;
for (i=1;i< ngtn.y;i++) tong +=365+Nhuan(i);
for (i=1;i<ngtn.m;i++) tong+=Sngay(i,ngtn.y);
for (i=1;i<ngtn.d;i++) tong++;
return tong;
}
long int khcach (date ngtn1, date ngtn2)
{
return (tngay(ngtn2)-tngay(ngtn1));
}
void thu (date x)
{
date today ={21,8,2021};
int du=abs(khcach(today,x)%7);
switch (du)
{
case 0:
cout<<"thu bay";break;
case 1:
cout<<"chu nhat";break;
case 2:
cout<<"thu hai";break;
case 3:
cout<<"thu ba";break;
case 4:
cout<<";thu tu";break;
case 5:
cout<<"thu nam";break;
case 6:
cout<<"thu sau";break;
}
}
void nhapct (date n)
{
cout<<"nhap ngay : "; cin>>n.d;
cout<<"nhap thang : "; cin>>n.m;
cout<<"nhap nam : "; cin>>n.y;
}
int main()
{
date n1,n2;
cout<<"nhap ngay thu 1 : "<<endl; nhapct(n1);
cout<<"nhap ngay thu 2 : "<<endl; nhapct(n2);
cout<<"khoang cach giua hai ngay : "<<khcach(n1,n2)<<" ngay"<<endl;
cout<<"thu cua ngay 1 : "; thu(n1);
cout<<endl;
cout<<"thu cua ngay 2 : "; thu(n2);
cout<<endl;
system ("pause");
return 0;
}