A
ALDon
Нужно дополнить прогу, задачка такая, Нужно написать прогу , которая добавляет день введенной дате и выводит его в указанном формате(если GENERAL то выводит не изменяя, а если EN вставляет вместо "." такой символ "/")Если введено не корректное дата выводит "Impossible".Примеры:
Ввод
6 // количество дат которые мы будем ввести
29.1.2009 GENERAL
31.12.2009 EN
24.11.-2009 EN
29.02.2010 GENERAL
29.02.2008 GENERAL
29.02.1900 GENERAL
Вывод
30.01.2009
01/01/2010
Impossible
Impossible
01.03.2008
Impossible
Этот код рабочий но надо дополнить его т.е ставить условие високосного года и если месяц или день ввелся не так 02 а так 2, то прога должна выводить с нулем т.е так 02
Если можно решите через класс
Ввод
6 // количество дат которые мы будем ввести
29.1.2009 GENERAL
31.12.2009 EN
24.11.-2009 EN
29.02.2010 GENERAL
29.02.2008 GENERAL
29.02.1900 GENERAL
Вывод
30.01.2009
01/01/2010
Impossible
Impossible
01.03.2008
Impossible
Этот код рабочий но надо дополнить его т.е ставить условие високосного года и если месяц или день ввелся не так 02 а так 2, то прога должна выводить с нулем т.е так 02
Код:
#include <iostream>
#include <string>
using namespace std;
struct year{
int a;
int b;
int c;
};
int main () {
year *a=new year[100];
int n;
cin>>n;
char d;
string w;
for(int i=0;i<n;i++){
cin>>a[i].a>>d>>a[i].b>>d>>a[i].c>>w;
if(a[i].a==31 && a[i].b!=12 && !(a[i].a==31 && a[i].b==4) && !(a[i].a==31 && a[i].b==6) && !(a[i].a==31 && a[i].b==9) && !(a[i].a==31 && a[i].b==11) && !(a[i].a==30 && a[i].b==2) && !(a[i].a==31 && a[i].b==2)||a[i].a==30 && a[i].b==4||a[i].a==30 && a[i].b==6||a[i].a==30 && a[i].b==9||a[i].a==30 && a[i].b==11 && w[0]=='G')
cout<<"1"<<d<<a[i].b+1<<d<<a[i].c<<endl;
else if(a[i].a==31 && a[i].b==12 && w[0]=='G' )
cout<<"1"<<d<<"1"<<d<<a[i].c+1<<endl;
else if(a[i].a>=1 && a[i].a<31 && a[i].b>=1 && a[i].b<=12 &&w [0]=='G' && a[i].c>0 )
cout<<a[i].a+1<<d<<a[i].b<<d<<a[i].c<<endl;
else if(a[i].a==31 && a[i].b!=12 && !(a[i].a==31 && a[i].b==4) && !(a[i].a==31 && a[i].b==6) && !(a[i].a==31 && a[i].b==9) && !(a[i].a==31 && a[i].b==11) && !(a[i].a==30 && a[i].b==2) && !(a[i].a==31 && a[i].b==2)||a[i].a==30 && a[i].b==4||a[i].a==30 && a[i].b==6||a[i].a==30 && a[i].b==9||a[i].a==30 && a[i].b==11||a[i].a==29 && a[i].b==2 && w[0]=='E')
cout<<"1"<<"/"<<a[i].b+1<<"/"<<a[i].c<<endl;
else if(a[i].a==31 && a[i].b==12 && w[0]=='E')
cout<<"1"<<"/"<<"1"<<"/"<<a[i].c+1<<endl;
else if(a[i].a>=1 && a[i].a<31 && a[i].b>=1 && a[i].b<=12 && w[0]=='E')
cout<<a[i].a+1<<"/"<<a[i].b<<"/"<<a[i].c<<endl;
else if(a[i].a<1||a[i].b<1||a[i].b>12||a[i].a>31||a[i].a==31 && a[i].b==4||a[i].a==31 && a[i].b==6||a[i].a==31 && a[i].b==9||a[i].a==31 && a[i].b==11||a[i].a==30 && a[i].b==2||a[i].a==31 && a[i].b==2 || a[i].c<0)
cout<<"Impossible"<<endl;}
return 0;
}