Je suis nouveau à la programmation et C++, je me suis un livre à ce sujet alors oui .. En tout cas je suis tombé sur la commande de commutateur et ils m'ont donné une tâche pour voir si certaine date est tomber le week-end ou des vacances; dans ce cas de Noël (25thDecember) .Il dit aussi de mettre:Commutateur C + + tâche booléenne du livre
bool IsItHoliday(false)
au début. Ce est code que je essayer et ça ne fonctionne pas .. ofc
#include <iostream>
using namespace std;
int main() {
cout<<"dd mm gggg";
int d,m;
long int g;
cin>>d>>m>>g;
long da;
if (m<3) {
da=365*g+d+31*(m-1)+(g-1)/4-3*((g-1)/100+1)/4;
}
else {
da=365*g+d+31*(m-1)-static_cast<int>(0.4*m+2.3)+g/4-3* (g/100+1)/4;
}
cout<<d<<"."<<m<<"."<<g<<". falls on ";
bool IsItHoliday(false);
switch (da%7) {
case 0:
case 1:
cout<<"weekend"<<endl;
break;
default:
cout<<"working day"<<endl;
}
return 0;
}
d est le jour, m est mois, g est l'année et da est la date
également Bool IsItHoliday devrait changer true si la déclaration pour les vacances (25 décembre) est vraie quelque part dans le bloc de commutation. Mon code pour détecter le week-end fonctionne mais il ne détecte pas le 25 décembre comme vacances. En passant, le livre est en croate et non, ils ne me donnent pas comment le code devrait ressembler à la tâche qu'il est censé faire.
'si (d = 25, m = 12)' doit (probablement) 'si (d == 25 && m == 12)', sinon il juste cessionnaires 25 à 'd' et 12 à' m' et est toujours évalué à 'vrai'. –
Les samedis et dimanches sont les jours ouvrables, tout le reste est le week-end? Je dois déménager en Croatie dès que possible. – molbdnilo
Aussi vous avez la pause dans le cas 0: au mauvais endroit. – drescherjm