public string ZnajdzMiejsceSamolotu(Lot lot, int dzien, int miesiac, Lot[,,,] tablica) { int i, j, k, l; for (i = miesiac - 1; i >= 0; i--) { for (j = dzien - 1; j >= 0; j--) { for (l = 23; l >= 0; l--) { for (k = 0; k < 10; k++) { if (tablica[i, j, l, k] != null && tablica[i, j, l, k].getSamolot().getIDsamolotu() == lot.getSamolot().getIDsamolotu()) { return(tablica[i, j, l, k].getTrasa().getMiejscePrzylotu().getNazwalotniska()); } } } } } return(null); }
public void GenerujLot(Lot x, int dzien, int miesiac, int cykl) { int a = 7; int i, j, k, l, z = 0; string zmienna_tekstowa, zmienna_tekstowa2, zmienna_tekstowa3, zmienna_tekstowa4; z = 0; for (i = 0; i < ListaSamolotow.Count(); i++) { zmienna_tekstowa = ListaSamolotow[i].getIDsamolotu(); zmienna_tekstowa2 = (x.getSamolot()).getIDsamolotu(); if (zmienna_tekstowa == zmienna_tekstowa2) { z++; } } if (z == 0) { throw new SamolotNieIstniejeException("Samolot nie istnieje"); } z = 0; for (i = 0; i < ListaTras.Count(); i++) { zmienna_tekstowa = (ListaTras[i].getMiejsceWylotu()).getNazwalotniska(); zmienna_tekstowa2 = ((x.getTrasa()).getMiejsceWylotu()).getNazwalotniska(); zmienna_tekstowa3 = (ListaTras[i].getMiejscePrzylotu()).getNazwalotniska(); zmienna_tekstowa4 = ((x.getTrasa()).getMiejscePrzylotu()).getNazwalotniska(); if (zmienna_tekstowa == zmienna_tekstowa2 && zmienna_tekstowa3 == zmienna_tekstowa4) { z++; } } if (z == 0) { throw new TrasaNieIstniejeException("Trasa nie istnieje"); } if (x.getGodzinawylotu() > x.getGodzinaprzylotu()) { throw new ZlaGodzinaException("Godzina wylotu jest większa od godziny przylotu"); } if ((x.getTrasa()).getOdleglosc() > (x.getSamolot()).getZasieg()) { throw new ZasiegSamolotuZaMalyException("Zasięg samolotu jest za mały"); } for (i = miesiac - 1; i < 12; i++) { if (i == miesiac - 1) { for (j = dzien - 1; j < 30; j++) { for (k = x.getGodzinawylotu(); k < x.getGodzinaprzylotu(); k++) { for (l = 0; l < 10; l++) { if (LotyRok[i, j, k, l] != null && LotyRok[i, j, k, l].getTrasa().getMiejsceWylotu().getNazwalotniska() == x.getTrasa().getMiejsceWylotu().getNazwalotniska() && LotyRok[i, j, k, l].getTrasa().getMiejscePrzylotu().getNazwalotniska() == x.getTrasa().getMiejscePrzylotu().getNazwalotniska() && LotyRok[i, j, k, l].getSamolot().getIDsamolotu() == x.getSamolot().getIDsamolotu()) { throw new LotySiePokrywajaException("Loty sie pokrywaja"); } if (K.ZnajdzMiejsceSamolotu(x, dzien, miesiac, LotyRok) != x.getTrasa().getMiejsceWylotu().getNazwalotniska() && K.ZnajdzMiejsceSamolotu(x, dzien, miesiac, LotyRok) != null) { throw new SamolotJestWInnymMiejscuException("Samolot jest w innym miejscu"); } } } } } else { for (j = 0; j < 30; j++) { for (k = x.getGodzinawylotu(); k < x.getGodzinaprzylotu(); k++) { for (l = 0; l < 10; l++) { if (LotyRok[i, j, k, l] != null && LotyRok[i, j, k, l].getTrasa().getMiejsceWylotu().getNazwalotniska() == x.getTrasa().getMiejsceWylotu().getNazwalotniska() && LotyRok[i, j, k, l].getTrasa().getMiejscePrzylotu().getNazwalotniska() == x.getTrasa().getMiejscePrzylotu().getNazwalotniska() && LotyRok[i, j, k, l].getSamolot().getIDsamolotu() == x.getSamolot().getIDsamolotu()) { throw new LotySiePokrywajaException("Loty sie pokrywaja"); } if (K.ZnajdzMiejsceSamolotu(x, dzien, miesiac, LotyRok) != x.getTrasa().getMiejsceWylotu().getNazwalotniska() && K.ZnajdzMiejsceSamolotu(x, dzien, miesiac, LotyRok) != null) { throw new SamolotJestWInnymMiejscuException("Samolot jest w innym miejscu"); } } } } } } if (cykl == 1) { for (i = miesiac - 1; i < 12; i++) { if (i == miesiac - 1) { for (j = dzien - 1; j < 30; j++) { for (k = x.getGodzinawylotu(); k < x.getGodzinaprzylotu(); k++) { for (l = 0; l < 10; l++) { if (LotyRok[i, j, k, l] == null) { LotyRok[i, j, k, l] = new Lot(x.getTrasa(), x.getSamolot(), x.getCzaspodrozy(), x.getGodzinawylotu(), x.getGodzinaprzylotu()); break; } } } } } else { for (j = 0; j < 30; j++) { for (k = x.getGodzinawylotu(); k < x.getGodzinaprzylotu(); k++) { for (l = 0; l < 10; l++) { if (LotyRok[i, j, k, l] == null) { LotyRok[i, j, k, l] = new Lot(x.getTrasa(), x.getSamolot(), x.getCzaspodrozy(), x.getGodzinawylotu(), x.getGodzinaprzylotu()); break; } } } } } } } else { for (i = miesiac - 1; i < 12; i++) { if (i == miesiac - 1) { for (j = dzien - 1; j < 30; j++) { if (a == 7) { for (k = x.getGodzinawylotu(); k < x.getGodzinaprzylotu(); k++) { for (l = 0; l < 10; l++) { if (LotyRok[i, j, k, l] == null) { LotyRok[i, j, k, l] = new Lot(x.getTrasa(), x.getSamolot(), x.getCzaspodrozy(), x.getGodzinawylotu(), x.getGodzinaprzylotu()); break; } } } a = 0; } a++; } } else { for (j = 0; j < 30; j++) { if (a == 7) { for (k = x.getGodzinawylotu(); k < x.getGodzinaprzylotu(); k++) { for (l = 0; l < 10; l++) { if (LotyRok[i, j, k, l] == null) { LotyRok[i, j, k, l] = new Lot(x.getTrasa(), x.getSamolot(), x.getCzaspodrozy(), x.getGodzinawylotu(), x.getGodzinaprzylotu()); break; } } } a = 0; } a++; } } } } }