Geo (Normal User)
Newbie
Messaggi: 11
Iscritto: 19/11/2007
|
Ragazzi devo realizzare un programma che ipotizzando che il primo giorno dell'anno sia lunedi, deve riconoscermi una data e dirmi a che giorno della settimana riconosce.
Questo è il mio spunto ma non mi da soluzione corretta, il tutto deve essere fatto con le funzioni.
Intanto vi posto cosa ho fatto io:
Codice sorgente - presumibilmente C++ |
#include <cstdlib> #include <iostream> int anno(int mese, int giorno) ; using namespace std; int anno(int mese, int giorno){ int i=0, a ; int di=0 ; int cost=7 ; for (a=6 ; a<13 ; a++){ a=a+1 ; for (i=1 ; i<=365 ; i++){ di=di+cost ; if (di==giorno){ switch (cost){ case 7: cout<<"\nE' Lunedi'! " ; break ; case 8: cout<<"\nE' Martedi'! " ; break ; case 9: cout<<"\nE' Mercoledi'! " ; break ; case 10: cout<<"\nE' Giovedi'! " ; break ; case 11: cout<<"\nE' Venerdi'! " ; break ; case 12: cout<<"\nE' Sabato! " ; break ; case 13: cout<<"\nE' Domenica! " ; break ; } } else if (di=!giorno){ } } } } int main(int argc, char *argv[]) { int g, calcolo, m ; cout<<"\nInserisci il mese: " ; cin>>m ; cout<<"\nInserisci il giorno: " ; cin>>g ; cout<<"\nIl giorno "<<g<<" del mese "<<m<<" e': " ; calcolo=anno(m,g) ; cout<<"\nIl giorno e': " <<calcolo ; system("PAUSE"); return EXIT_SUCCESS; }
|
|
|
Dark_Limit (Ex-Member)
Expert
Messaggi: 220
Iscritto: 15/01/2008
|
Scusa ma mi sa che qui se non ho capito male il tuo ragionamento vai da settimana in settimana :
Codice sorgente - presumibilmente Plain Text |
di=di+cost ;
// dove cost è sette..
|
poi magari esponi meglio il tuo problema e noi saremo grati di risolvertelo al più presto..esponilo più chiaramente però..
|
|
Geo (Normal User)
Newbie
Messaggi: 11
Iscritto: 19/11/2007
|
#include <cstdlib>
#include <iostream>
int anno(int mese, int giorno) ;
using namespace std;
int anno(int mese, int giorno){
int i=0, a ;
int di=0 ;
int cost=7 ;
/*Ciclo che da 6 a 13(cioè visto che il lunedi
si verifica ogni 7 giorni da un lunedi,
il martedi ogni 8 giorni da lunedi e cosi
via).*/
for (a=6 ; a<13 ; a++){
a=a+1 ;
/*Ciclo che verifica i 365 giorni dell'anno
facendo modo che cost(che per ora è 7)
sommandola sempre prima o poi dovrò ottenere
di=giorno e dipende a quello stampare il
giorno.
*/
for (i=1 ; i<=365 ; i++){
di=di+cost ;
if (di==giorno){
switch (cost){
case 7:
cout<<"\nE' Lunedi'! " ;
break ;
case 8:
cout<<"\nE' Martedi'! " ;
break ;
case 9:
cout<<"\nE' Mercoledi'! " ;
break ;
case 10:
cout<<"\nE' Giovedi'! " ;
break ;
case 11:
cout<<"\nE' Venerdi'! " ;
break ;
case 12:
cout<<"\nE' Sabato! " ;
break ;
case 13:
cout<<"\nE' Domenica! " ;
break ;
}
}
else
if (di=!giorno){
}
}
}
}
int main(int argc, char *argv[])
{
int g, calcolo, m ;
cout<<"\nInserisci il mese: " ;
cin>>m ;
cout<<"\nInserisci il giorno: " ;
cin>>g ;
cout<<"\nIl giorno "<<g<<" del mese "<<m<<" e': " ;
calcolo=anno(m,g) ;
cout<<"\nIl giorno e': " <<calcolo ;
system("PAUSE");
return EXIT_SUCCESS;
}
Io l'ho buttata li, non sono sicuro che il ragionamento è giusto e se abbia una logica...
Spero di aver spiegato bene queste volta
|
|
FHF93 (Ex-Member)
Pro
Messaggi: 132
Iscritto: 13/11/2007
|
Quando facevo queste cose un metodo che usavo era questo:
Mi faccio dire Giorno e Mese
Vedo a che giorno dell'anno corrisponde
Divido il giorno per 7 e in base al resto capisco a quale giorno della settimana corrisponde...
Avevo visto tempo fa un programma così in Pascal (di John) qui:
http://www.pierotofy.it/pages/download.php?filename=100p97 ...
Vedi se lo capisci altrimenti ti faccio un esempio
|
|
Geo (Normal User)
Newbie
Messaggi: 11
Iscritto: 19/11/2007
|
Il programma l'ho fatta ragazzi...grazie a quello che mi hai postato tu
Ora solo una cosa...vorrei spiegato perchè attraverso il resto di deduce il giorno!
|
|
gantonio (Normal User)
Guru^2
Messaggi: 1532
Iscritto: 09/09/2007
|
Probabilmente non ci hai pensato su abbastanza, perche' e' facilissimo da comprendere il fatto del resto ... provaci facendo un esempio scritto ...
|
|
Geo (Normal User)
Newbie
Messaggi: 11
Iscritto: 19/11/2007
|
Postato originariamente da gantonio:
Probabilmente non ci hai pensato su abbastanza, perche' e' facilissimo da comprendere il fatto del resto ... provaci facendo un esempio scritto ...
|
Fatto
Una cretinata :P
Grazie ancora di tutto ragazzi!!!
Alla prossima... |
|