Ciao a tutti,
Sto tentando di fare una classe che: passata una data (anno,mese) mi stampa la "pagina " di quel mese a partire dal primo del mese all'ultimo giorno, io qualcosa ho fatto, non so se è giusto o se si può migliorare, la classe GregorianCalendar sono appena poche ore che la conosco,il mio problema è che non riesco a mettere i numeri dei giorni in corrispondenza delle lettere...non capisco se è solo un problema di stampa o bo......
posto il mio codice e vi ringrazio.
import java.io.*;
import java.util.*;
public class StampaMese{
private static int NUM=31;
private static int giornoDellaSettimana(int anno,int mese,int giorno){
GregorianCalendar gc=new GregorianCalendar();
gc.set(Calendar.YEAR,anno);
gc.set(Calendar.MONTH,mese);
gc.set(Calendar.DAY_OF_MONTH,1);
int num=gc.get(Calendar.DAY_OF_WEEK);
int start=num;
switch (num){
case Calendar.SUNDAY:
System.out.println("DOMENICA");
break;
case Calendar.MONDAY:
System.out.println("lUNEDI'");
break;
case Calendar.TUESDAY:
System.out.println("MARTEDI'");
break;
case Calendar.WEDNESDAY:
System.out.println("MERCOLEDI'");
break;
case Calendar.THURSDAY:
System.out.println("GIOVEDI'");
break;
case Calendar.FRIDAY:
System.out.println("VENERDI'");
break;
case Calendar.SATURDAY:
System.out.println("SABATO");
break;
}
System.out.print(start);
return num;
}
public static void main(String[] args){
GregorianCalendar gc=new GregorianCalendar();
int anno=Keyboard.leggiInt("inserisci l'anno: ");
int mese=Keyboard.leggiInt("inserisci il mese: ")-1;
int giorno=1;
//stampa dell'intestazione(nome dei giorni)
int num=7;
for(int i=1;i<=num;i++){
switch (i){
case Calendar.MONDAY:
System.out.print(" l ");
break;
case Calendar.TUESDAY:
System.out.print(" M ");
break;
case Calendar.WEDNESDAY:
System.out.print(" M ");
break;
case Calendar.THURSDAY:
System.out.print(" G ");
break;
case Calendar.FRIDAY:
System.out.print(" V ");
break;
case Calendar.SATURDAY:
System.out.print(" S ");
break;
case Calendar.SUNDAY:
System.out.print(" D ");
break;
}
}
}
}