Advertisement
Guest User

Untitled

a guest
Nov 29th, 2015
83
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 3.42 KB | None | 0 0
  1. import java.util.*;
  2.  
  3. class Data
  4. {
  5.     private int dzien;
  6.     private int miesiac;
  7.     private int rok;
  8.    
  9.     public Data(int rok, int miesiac, int dzien)
  10.     {
  11.         this.dzien = dzien;
  12.         this.miesiac = miesiac;
  13.         this.rok = rok;
  14.     }  
  15.    
  16.     public static int obliczDniPomiedzy(Data a, Data b)
  17.     {
  18.         int ilosc;
  19.         Calendar data1 = new GregorianCalendar(a.rok, a.miesiac-1, a.dzien);
  20.         Calendar data2 = new GregorianCalendar(b.rok, b.miesiac-1, b.dzien);
  21.         ilosc = (int) (Math.abs((data1.getTimeInMillis()/1000 - data2.getTimeInMillis()/1000)/86400));
  22.         return ilosc;
  23.     }
  24.     public static String podajDzienTygodnia(Data a)
  25.     {
  26.         Calendar data = new GregorianCalendar(a.rok, a.miesiac-1, a.dzien);
  27.         int dzienTygodnia = data.get(Calendar.DAY_OF_WEEK);
  28.         String[] dniTygodnia = {"Niedziela","Poniedziałek","Wtorek","Środa","Czwartek","Piątek","Sobota"};
  29.         return dniTygodnia[dzienTygodnia-1];
  30.     }
  31.     public static String podajZnakZodiaku(Data a)
  32.     {
  33.         String znak = null;
  34.         if (a.miesiac == 1 && a.dzien >=20 || a.miesiac == 2 && a.dzien <=18) znak = "Wodnik";
  35.         if (a.miesiac == 2 && a.dzien >=19 || a.miesiac == 3 && a.dzien <=20) znak = "Ryby";
  36.         if (a.miesiac == 3 && a.dzien >=21 || a.miesiac == 4 && a.dzien <=19) znak = "Baran";
  37.         if (a.miesiac == 4 && a.dzien >=20 || a.miesiac == 5 && a.dzien <=20) znak = "Byk";
  38.         if (a.miesiac == 5 && a.dzien >=21 || a.miesiac == 6 && a.dzien <=21) znak = "Bliźnięta";
  39.         if (a.miesiac == 6 && a.dzien >=22 || a.miesiac == 7 && a.dzien <=22) znak = "Rak";
  40.         if (a.miesiac == 7 && a.dzien >=23 || a.miesiac == 8 && a.dzien <=22) znak = "Lew";
  41.         if (a.miesiac == 8 && a.dzien >=23 || a.miesiac == 9 && a.dzien <=22) znak = "Panna";
  42.         if (a.miesiac == 9 && a.dzien >=23 || a.miesiac == 10 && a.dzien <=22) znak = "Waga";
  43.         if (a.miesiac == 10 && a.dzien >=23 || a.miesiac == 11 && a.dzien <=21) znak = "Skorpion";
  44.         if (a.miesiac == 11 && a.dzien >=22 || a.miesiac == 12 && a.dzien <=21) znak = "Strzelec";
  45.         if (a.miesiac == 12 && a.dzien >=22 || a.miesiac == 1 && a.dzien <=19) znak = "Koziorożec";
  46.         return znak;
  47.     }
  48. }
  49.  
  50. public class operacjenadatach
  51. {
  52.     public static void main(String[] args)
  53.     {
  54.         Scanner wpisz = new Scanner(System.in);
  55.        
  56.         System.out.println("Podaj dzisiejszą datę (dzień, miesiąc, rok): "); //wprowadzenie dzisiejszej daty
  57.         int dzienDzis = wpisz.nextInt();
  58.         int miesiacDzis = wpisz.nextInt();
  59.         int rokDzis = wpisz.nextInt();
  60.         Data data1 = new Data(rokDzis,miesiacDzis,dzienDzis); //dzisiejsza data przypisana do data1 (do obliczeń)
  61.        
  62.         System.out.println("Podaj swoją datę urodzenia (dzień, miesiąc, rok: ");
  63.         int dzienU = wpisz.nextInt(); //wprowadzenie daty urodzenia
  64.         int miesiacU = wpisz.nextInt();
  65.         int rokU = wpisz.nextInt();    
  66.         Data data2 = new Data(rokU,miesiacU,dzienU); //data urodzenia przypisana do data2 (do obliczeń)
  67.        
  68.         Data data3 = new Data(2015,12,31); //koniec roku
  69.        
  70.         //wypisywanie wartości
  71.         System.out.println("Przeżyłeś/przeżyłaś " + Data.obliczDniPomiedzy(data1,data2) + " dni.");
  72.         System.out.println("Urodziłeś/urodziłaś się w " + Data.podajDzienTygodnia(data2) + ".");
  73.         System.out.println("Twój znak zodiaku to: " + Data.podajZnakZodiaku(data2) + ".");
  74.         System.out.println("Do końca tego roku zostało " + Data.obliczDniPomiedzy(data1,data3) + " dni.");
  75.     }
  76. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement