PatrickSwayze

zad 5 lab 3

Mar 4th, 2018
89
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.94 KB | None | 0 0
  1. /*
  2. Zadanie 5
  3. Napisz program, który pobiera od użytkownika pięd dat w formie DD.MM.YYYY, następnie segreguje
  4. je w kolejności rosnącej. Jeżeli wpisania przez użytkownika data dotyczy roku 2013 to program
  5. wyrzuca wyjątek
  6. */
  7. import java.util.Scanner;
  8. import java.util.Random;
  9.  
  10. class Daty {
  11.  
  12. int day, month, year;
  13.  
  14.  
  15. public static void main(String[] args) {
  16. Scanner scan=new Scanner(System.in);
  17. System.out.println("Podaj ilosc dat, ktore chcesz wprowadzic: ");
  18. Random rand=new Random();
  19. int n;
  20. n=scan.nextInt();
  21. Daty[] karta = new Daty[n];
  22. for(int i=0;i<karta.length;i++)
  23. {
  24. karta[i]=new Daty();
  25. }
  26. for(int i=0;i<karta.length;i++)
  27. {
  28. //System.out.print(i+1+" data: ");
  29.  
  30.  
  31. //System.out.println("Dzien: ");
  32. karta[i].day=rand.nextInt(31)+1;
  33. if(karta[i].day<10) System.out.print("0"+karta[i].day+".");
  34. else System.out.print(karta[i].day+".");
  35. //System.out.println("Miesiac: ");
  36. karta[i].month=rand.nextInt(12)+1;
  37. if (karta[i].month<10) System.out.print("0"+karta[i].month+".");
  38. else System.out.print(karta[i].month+".");
  39. //System.out.println("Rok: ");
  40. karta[i].year=rand.nextInt(100)+1960;
  41. System.out.println(karta[i].year);
  42. }
  43. int[] tab=new int[n];
  44. int licznik=0;
  45. for (int i=0;i<karta.length;i++)tab[i]=10000;
  46. for (int i=0;i<karta.length;i++)
  47. {
  48. for (int y=0;y<karta.length;y++)
  49. {
  50. if(tab[i]>karta[y].year)
  51. {
  52. tab[i]=karta[y].year;
  53. licznik=y;
  54. }
  55. }
  56. karta[licznik].year=10000;
  57. }
  58. System.out.println("Najmniejszy: "+tab[0]);
  59. System.out.println("Wpisane daty posortowane rosnaco: ");
  60. for(int i=0;i<karta.length;i++)
  61. {
  62. System.out.println(i+1+". "+karta[i].day+"."+karta[i].month+"."+tab[i]);
  63. }
  64.  
  65. }
  66. }
Advertisement
Add Comment
Please, Sign In to add comment