Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.util.Random;
- public class S1731_p02 {
- public static void main(String[] args) {
- PojazdMechaniczny[] tab = new PojazdMechaniczny[1000];
- Random rand = new Random();
- String[] nazwy = { "Kia", "Audi", "Ford", "Fiat",
- "BMW", "Tesla", "Honda", "SEAT",
- "Citroen", "Subaru", "Toyota",
- "Renault", "Mazda", "Maybach",
- "Mercedes-Benz", "Dodge", "Chevrolet",
- "Chrysler", "Peugeot", "Rover", "Hyundai",
- "Acura", "Bentley", "Porsche", "Volvo" };
- long[] pojemnosc = { 1300, 1400, 1500, 1600, 1700, 1800, 1900, 2000, 2100, 2200, 2300, 2400, 2500, 2600, 2700, 2800, 2900, 3000, 3100, 3200, 3300, 3400, 3500, 3600 };
- for(int i = 0; i < tab.length; i++) { //tworzenie obiektów o losowych parametrach
- tab[i] = new PojazdMechaniczny(
- rand.nextInt(4)+2,
- nazwy[rand.nextInt(nazwy.length)],
- new Silnik(rand.nextInt(200)+100, pojemnosc[rand.nextInt(pojemnosc.length)])
- );
- }
- sort(tab); //sortowanie elemnetów w tablicy
- for(int i = 0; i<tab.length; i++) { //wyswietlnia posortowanej tablicy
- System.out.println(tab[i].toString());
- }
- }
- public static void sort(PojazdMechaniczny [] tab) // metoda do sortowania bąbelkowego
- {
- PojazdMechaniczny temp;
- int zmiana = 1;
- while(zmiana > 0)
- {
- zmiana = 0;
- for(int i = 0; i<tab.length-1; i++)
- {
- if(tab[i].silnik.moc > tab[i+1].silnik.moc)
- {
- temp = tab[i+1];
- tab[i+1] = tab[i];
- tab[i] = temp;
- zmiana++;
- }
- if((tab[i].silnik.moc == tab[i+1].silnik.moc) &&
- (tab[i].silnik.pojemnosc > tab[i+1].silnik.pojemnosc))
- {
- temp = tab[i+1];
- tab[i+1] = tab[i];
- tab[i] = temp;
- zmiana++;
- }
- if((tab[i].silnik.moc == tab[i+1].silnik.moc) &&
- (tab[i].silnik.pojemnosc == tab[i+1].silnik.pojemnosc) &&
- (tab[i].iloscMiejsc > tab[i+1].iloscMiejsc))
- {
- temp = tab[i+1];
- tab[i+1] = tab[i];
- tab[i] = temp;
- zmiana++;
- }
- if((tab[i].silnik.moc == tab[i+1].silnik.moc) &&
- (tab[i].silnik.pojemnosc == tab[i+1].silnik.pojemnosc) &&
- (tab[i].iloscMiejsc == tab[i+1].iloscMiejsc) &&
- (tab[i].nazwa.charAt(0) > tab[i+1].nazwa.charAt(0)))
- {
- temp = tab[i+1];
- tab[i+1] = tab[i];
- tab[i] = temp;
- zmiana++;
- System.out.println(tab[i].toString());
- }
- }
- }
- }
- public class Silnik{
- int moc;
- long pojemnosc;
- public Silnik(int moc, long pojemnosc) {
- this.moc = moc;
- this.pojemnosc = pojemnosc;
- }
- }
- public class PojazdMechaniczny{
- int iloscMiejsc;
- String nazwa;
- Silnik silnik;
- public PojazdMechaniczny(int iloscMiejsc, String nazwa, Silnik silnik) {
- this.iloscMiejsc = iloscMiejsc;
- this.nazwa = nazwa;
- this.silnik = silnik;
- }
- public String toString() {
- return "moc: " + silnik.moc + " koni mechanicznych, Pojemnosc silnika: " + silnik.pojemnosc + " cm3" + ", Ilosc Miejsc: " + iloscMiejsc + ", Model: " + nazwa ;
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement