Ciao ragazzi sto cercando di fare un calendario gregoriano che avendo gia' in input la data attuale , inserendo un certo numero di giorni X mi dia come output il valore del mese, giorno anno della data futura! cioè se oggi è 30 10 2006 e inserisco il valore 15 mi debba restiturire la data 15 11 2006... ho implementato il codice ma quando do un valore maggiore di 31 dalla data attuale il programma salta il mese di dicembre e mi da direttamente gennaio 2007 ovvero se dalla data attuale metto : il valore 32 ( cioè aggiungi 32 giorni al giorno attuale ) mi restituisce 1 - 0 - 2007 ... non riesco a capire xkè salti il mese di dicembre.. qualche aiuto?????
//IMPORTO CIO' CHE MI SERVE
import java.util.GregorianCalendar;
import java.util.Calendar;
import javax.swing.JOptionPane;
import java.util.Scanner;
public class gregoriano
{
public static void main (String[] args)
{
//IMPOSTO I VALORI DEI CAMPI
int giorno = 30;
int mese = 10;
int anno = 2006;
//I VALORI DEL CALENDARIO ATTUALE SONO IMPOSTATI CON LE VARIABILI SOPRA INDICATE
GregorianCalendar calendarioAttuale = new GregorianCalendar(anno, mese, giorno);
//IL CALENDARIO CHE VERRA' MODIFICATO INIZIALMENTE HA GLI STESSI VALORI DEL CALENDARIO ATTUALE
GregorianCalendar calendarioModificato = new GregorianCalendar(anno, mese, giorno);
//COSTRUISCO L'OGGETTO SCANNER
Scanner in = new Scanner(System.in);
//DEVO INSERIRE I GIORNI CHE ANDRANNO A MODIFICARE IL "calendarioModificato"
System.out.println("Inserisci la data che verrà modificata");
//NELLA VARIABILE GIORNO DA MODIFICARE VADO A INSERIRE IL GIORNO MODIFICATO
int giornoDAmodificare = in.nextInt();
//IL GIORNO MODIFICATO LO VADO AD INSERIRE IN UN ALTRA VARIABILE
int nuovogiorno = giornoDAmodificare;
//AGGIORNO IL CALENDARIO CON IL NUOVO GIORNO.
calendarioModificato.add(Calendar.DAY_OF_MONTH, nuovogiorno);
//STAMPO LA DATA DEL NUOVO GIORNO DA ME SCELTO.
int dayOFmonth = calendarioModificato.get(Calendar.DAY_OF_MONTH);
System.out.println(dayOFmonth);
int month = calendarioModificato.get(Calendar.MONTH);
System.out.println(month);
int years = calendarioModificato.get(Calendar.YEAR);
System.out.println(years);
}
}

Rispondi quotando
per avermi aperto gli okki su un errore cosi banale!
