algoritmy0599

Bubble AB algoritmy

May 22nd, 2019
79
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 3.29 KB | None | 0 0
  1. public class BiatlonovyZavod {
  2.  
  3.         Zavodnik[] zavodnici;
  4.  
  5.         public BiatlonovyZavod(String[] startovniListina) {
  6.             if (startovniListina != null && startovniListina.length > 0) {
  7.                 this.zavodnici = new Zavodnik[startovniListina.length];
  8.  
  9.                 for (int i = 0; i < startovniListina.length; i++) {
  10.                     Zavodnik zavodnik = new Zavodnik();
  11.                     zavodnik.setJmeno(startovniListina[i]);
  12.                     zavodnici[i] = zavodnik;
  13.                 }
  14.             }
  15.             else {
  16.                 this.zavodnici = null;
  17.             }
  18.         }
  19.  
  20.         public double generujCas() {
  21.             Random random = new Random();
  22.             double cas = random.nextDouble()*5 + 5;
  23.             return cas;
  24.         }
  25.  
  26.         public int generujPocetChyb() {
  27.             Random random = new Random();
  28.             int pocet = random.nextInt(6);
  29.             return pocet;
  30.         }
  31.  
  32.         public void prvniBezeckyUsek() {
  33.             if (zavodnici == null) return;
  34.  
  35.             double cas;
  36.  
  37.             for (int i = 0; i < zavodnici.length; i++) {
  38.                 cas = generujCas();
  39.                 zavodnici[i].setPrvniUsek(cas);
  40.                 zavodnici[i].prictiCas(cas);
  41.             }
  42.         }
  43.  
  44.         public void prvniStrelba() {
  45.             if (zavodnici == null) return;
  46.  
  47.             int chyby;
  48.  
  49.             if (zavodnici != null) {
  50.                 for (int i = 0; i < zavodnici.length; i++) {
  51.                     chyby = generujPocetChyb();
  52.                     zavodnici[i].setPrvniStrelba(chyby);
  53.                     zavodnici[i].prictiCas((double) chyby);
  54.                 }
  55.             }
  56.         }
  57.  
  58.         public void druhyBezeckyUsek() {
  59.             if (zavodnici == null) return;
  60.  
  61.             double cas;
  62.  
  63.             for (int i = 0; i < zavodnici.length; i++) {
  64.                 cas = generujCas();
  65.                 zavodnici[i].setDruhyUsek(cas);
  66.                 zavodnici[i].prictiCas(cas);
  67.             }
  68.         }
  69.  
  70.         public void druhaStrelba() {
  71.             if (zavodnici == null) return;
  72.  
  73.             int chyby;
  74.  
  75.             for (int i = 0; i < zavodnici.length; i++) {
  76.                 chyby = generujPocetChyb();
  77.                 zavodnici[i].setDruhaStrelba(chyby);
  78.                 zavodnici[i].prictiCas((double) chyby);
  79.             }
  80.         }
  81.  
  82.         public void tretiBezeckyUsek() {
  83.             if (zavodnici == null) return;
  84.  
  85.             double cas;
  86.  
  87.             for (int i = 0; i < zavodnici.length; i++) {
  88.                 cas = generujCas();
  89.                 zavodnici[i].setTretiUsek(cas);
  90.                 zavodnici[i].prictiCas(cas);
  91.             }
  92.         }
  93. //bubble sort podle celkového času
  94.  
  95.         public void seradPodleCasu() {
  96.             if (this.zavodnici == null) return;
  97.  
  98.             for (int i = 0; i < this.zavodnici.length - 1; i++) {
  99.                 for (int j = 0; j < this.zavodnici.length - i - 1; j++) {
  100.                     if (this.zavodnici[j].getCelkovyCas() > this.zavodnici[j+1].getCelkovyCas()) {
  101.                         Zavodnik pom = this.zavodnici[j];
  102.                         this.zavodnici[j] = this.zavodnici[j+1];
  103.                         this.zavodnici[j+1] = pom;
  104.                     }
  105.                 }
  106.             }
  107.         }
Add Comment
Please, Sign In to add comment