x-kom hosting

kalendarz w [java]

student878
utworzono
utworzono

mam problem z zadaniem które ma pobierać dwie daty i wypisywać wszystkie daty które sa w przedziale od jednej do drugiej. ja sobie wymyśliłem to tak ze obliczę różnice dni pomiędzy tymi datami i pozniej zrobię pętlę która bedzie zwiekszała ilość dni i miesięcy od pierwszej daty tyle razy ile bedzie wynosiła różnica dni. pod spodem wklejam kod w którym nie wiem jak zrobić te pętle 

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.GregorianCalendar;

import javax.swing.JOptionPane;


public class Zadanie2 {

public static void main(String[] args) throws ParseException {

String a = JOptionPane.showInputDialog("Podaj pierwszą datę w postaci YYYY-MM-DD!!");
System.out.println(a);
int dzien1 = Integer.parseInt(a.substring(0, 4))-1900;
       int miesiac1 = Integer.parseInt(a.substring(5, 7)) - 1;
       int rok1 = Integer.parseInt(a.substring(8, 10));
       Date data1 = new Date(rok1, miesiac1, dzien1);
       
String b = JOptionPane.showInputDialog("Podaj drugą datę w postaci YYYY-MM-DD!!");
System.out.println(b);
int dzien2 = Integer.parseInt(b.substring(0, 4))-1900;
int miesiac2 = Integer.parseInt(b.substring(6, 7)) - 1;
int rok2 = Integer.parseInt(b.substring(8, 10));

Date data2 = new Date(rok2, miesiac2, dzien2);

long roznica = Math.abs(data1.getTime() - data2.getTime());
long ilość_dni = roznica / ((long) (1000 * 60 * 60 * 24));

for (int i=1;i<=ilość_dni;i++)
{
for (int j=dzien1;j<=dzien2;j++)
{
System.out.println(j);
}

}
     System.out.println("różnica dni "+ ilość_dni);


}

}
  • 1 rok później...

didek102
komentarz
komentarz

Da się łatwiej.

Wrzystkie dni, miesiące, lata itd. w dwóch datach zamień na minsek. a potem je odejmij i to co ci wyszło zamień na dni. Pętle daj po dodaniu long aż do końca klasy main i na kończu pętli dodaj do dat tyle ile chcesz

Wciąż szukasz rozwiązania problemu? Napisz teraz na forum!

Możesz zadać pytanie bez konieczności rejestracji - wystarczy, że wypełnisz formularz.

×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Strona wykorzystuje pliki cookies w celu prawidłowego świadczenia usług i wygody użytkowników. Warunki przechowywania i dostępu do plików cookies możesz zmienić w ustawieniach przeglądarki.