View Full Version : [JAVA] esercizio aiutatemi vi prego
IspiCiosa
16-03-2008, 14:12
ragazzi devo fare questo esercizio:
Scrivete un programma calcoli e dia in output le
seguenti informazioni
1) La data ed il giorno della settimana che dista 100
giorni nel futuro da oggi
2) Il giorno della settimana della vostra data di nascita
3) La data che dista 10,000 giorni nel futuro dalla vostra
data di nascita
4) Utilizzate la classe GregorianCalendar, servendovi
delle API disponibili online per documentarvi sulle
caratteristiche della classe
ragazzi ma come si fa io non ho mai programmato in java...
mi spiegate un po??
del tipo quante classi devo fare??
quanti metodi faccio??
sulla classe main che ci metto??
carter100
16-03-2008, 14:17
ragazzi ma come si fa io non ho mai programmato in java...
Ma scusa, presumo sia un esercizio scolastico/universitario, come è possibile che non sai programmare in java?Avrete fatto delle lezioni a scuola no?
Comunque è molto semplice, come dice la stessa traccia, vediti la documentazione online di gregorianCalendar e trovi i due metodi che ti servono per tutto l'esercizio.
IspiCiosa
16-03-2008, 14:34
si ma la cosa che non capisco è
io ho creato il file main.class
public static void main(String[] args) {
qui ci devo mettere i metodi che mi servono?
}
carter100
16-03-2008, 14:36
Da lì ti chiami le funzioni del tuo programma che richiamano i due metodi della classe Gregorian che ti servono per avere quelle 3 risposte
IspiCiosa
16-03-2008, 14:42
quinidi in poche parole:
main {
chiamata di funzione ai metodi della classe gregorian
}
e sulla classe gregorian ad esempio:
public clas gregorian{
GregorianCalendar cal = new
GregorianCalendar(2000, 1,
20,9,00);
int giorno = cal.get(Calendar.DAY_OF_MONTH);
}
carter100
16-03-2008, 14:47
Io per un esercizio di quel tipo farei solo una classe, del tipo
class Calendario
{
main (bla bla)
{
Istanzio oggetto GregorianCalendar;
funzione di somma di 100 giorni ();
funzione di estrazione settimana dell'anno ();
}
funzioni chiamate dal main ()
{
}
}
IspiCiosa
16-03-2008, 14:57
ok ci sto provando
import java.util.Date;
import java.util.GregorianCalendar;
import java.util.Calendar;
import java.text.DateFormat;
import java.util.Locale;
public class Main {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
GregorianCalendar gc = new GregorianCalendar();
Date d = gc.getTime();
DateFormat dffull = DateFormat.getDateInstance(DateFormat.FULL);
System.out.println("Oggi è: " + dffull.format(d));
}
}
adesso provo ad aggiunger 100 giorni
ok ci sto provandoIl codice mi sembra corretto.
adesso provo ad aggiunger 100 giorniBasta che usi il metodo add() di Calendar per aggiungere un tot ad un campo specifico del Calendar, nel tuo caso il campo da usare è DAY_OF_MONTH.
khelidan1980
16-03-2008, 15:04
Io non vedo assolutamente l'utilità di questo approccio a tentativi,prenditi un libro e inizia a studiare java,vedrai che già dopo i primi capitoli saprai abbondantemente risolvere questi esercizi
IspiCiosa
16-03-2008, 15:40
lavoro e mi han detto all'ultimo di questi esercizietti...sto cmq leggendo il libro...
alla fine il codice è questo:
package javaapplication4;
import java.util.Date;
import java.util.GregorianCalendar;
import java.util.Calendar;
import java.text.DateFormat;
public class Main {
public static void main(String[] args) {
//calcola e dà in output la data di oggi
GregorianCalendar gc = new GregorianCalendar();
Date d = gc.getTime();
DateFormat dffull = DateFormat.getDateInstance(DateFormat.FULL);
System.out.println("Oggi è: " + dffull.format(d));
//Calcola e dà in output la data fra 100 giorni a partire da oggi
gc.add(Calendar.DAY_OF_MONTH,100);
Date e = gc.getTime();
DateFormat dffull2 = DateFormat.getDateInstance(DateFormat.FULL);
System.out.println("Fra 100 giorni è: " + dffull2.format(e));
// calcola e dà in output il giorno della settimana della mia data di nascita
GregorianCalendar dat = new GregorianCalendar(1985, 10,
03,9,00);
Date f = dat.getTime();
DateFormat dffull3 = DateFormat.getDateInstance(DateFormat.FULL);
System.out.println("Il giorno della mia nascita è: " + dffull3.format(f));
/**calcola e dà in output la data che dista
* 10,000 giorni nel futuro
* dalla mia data di nascita
*/
GregorianCalendar data = new GregorianCalendar(1985, 10,
03,9,00);
data.add(Calendar.DAY_OF_MONTH,10000);
Date g = data.getTime();
DateFormat dffull4 = DateFormat.getDateInstance(DateFormat.FULL);
System.out.println("La data che dista 10000 giorni dalla mia data" +
" di nascità è: " + dffull4.format(g));
}
}
secondo voi va bene??
secondo voi va bene??Sì va bene, tecnicamente è corretto.
Il sorgente sarebbe da scrivere un po' meglio e con la giusta indentazione. Se poi vogliamo fare i pignoli (io sono pignolo), hai creato diversi DateFormat con stile FULL ma ne bastava solo 1. Non è che devi creare per forza un DateFormat nuovo per ogni data che devi formattare. Poi nella seconda parte hai creato 2 GregorianCalendar con la tua data. Anche qui ne bastava solo 1, a cui dopo aggiungevi i giorni ... come hai fatto nella prima parte.
IspiCiosa
17-03-2008, 17:02
mi aiutate anche con l'altro esercizio??
è sul altro thread...
grazie mille!
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.