Guest User

Untitled

a guest
May 20th, 2018
147
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.41 KB | None | 0 0
  1. // FUNKCIJA ZA DELJENJE
  2.     public static ArrayList<Integer> deljeno(ArrayList<Integer> a, ArrayList<Integer> b){
  3.            
  4.         ArrayList<Integer> div = new ArrayList<Integer>();
  5.         ArrayList<Integer> prvi = new ArrayList<Integer>();
  6.         ArrayList<Integer> drugi = new ArrayList<Integer>();//(ArrayList<Integer>) b.clone();
  7.         ArrayList<Integer> kolicnik = new ArrayList<Integer>();
  8.        
  9.         if(b.size() > a.size()){ // če je a krajši od b -> rezultat je 0
  10.             kolicnik.add(0);
  11.            
  12.             return kolicnik;
  13.         }
  14.  
  15.         int stevec = 0;
  16.         for(int k = 0; k < b.size(); k++){ // naš 'deljenec' dobi toliko členov, kolikor dolg je delitelj
  17.             prvi.add(a.get(k));
  18.         }
  19.        
  20.         /*for(Integer i : prvi)
  21.             System.out.print(i);*/
  22.        
  23.         int konec = b.size();
  24.         boolean mozno = false;
  25.         boolean dost = false;
  26.        
  27.         while(true){
  28.             // ali je prvi/b možno?
  29.             if(prvi.size() > b.size()){
  30.                 mozno = true;
  31.             }else{
  32.                 if(prvi.size() < b.size()){
  33.                     mozno = false;
  34.                 }else{ // če sta enako dolga
  35.                     mozno = true;
  36.                     for(int i = 0; i < prvi.size(); i++){
  37.                         if(prvi.get(i) < b.get(i)){
  38.                             mozno = false; // če padem sm, pomeni, da morm dodat cifro deljencu
  39.                             break;
  40.                         }
  41.                     }
  42.                 }
  43.             }
  44.             System.out.print(mozno);
  45.             if(mozno){  // če je možno delit trenutne vrednosti
  46.                 System.out.print("if");
  47.                 while(dost == false){ // tukej se odšteva in povečuje števec
  48.                     System.out.print("ciklam");
  49.                     div = minus(prvi, b);                  
  50.                     for(int q = 0; q < div.size(); q++){
  51.                         if(div.get(q) < 0){
  52.                             dost = true;
  53.                             q = div.size();
  54.                         }
  55.                     }
  56.                     if(dost){ // če je odštel preveč (div je < 0) neham odštevat
  57.                         div = plus(div, b);
  58.                         dost = true;
  59.                         //break;
  60.                     }else{
  61.                         stevec++;
  62.                         dost = false;
  63.                     }
  64.                 }
  65.             }
  66.             System.out.print("zunej");
  67.             // dodam rezultat
  68.             kolicnik.add(stevec);
  69.             stevec = 0;
  70.             mozno = false;
  71.             dost = false;
  72.             // če ni možno delit//ko ni več možno odštevat - povečam deljenca (prvi)
  73.             // najprej pobrišem vse 0 spred
  74.             if(div.get(0) == 0){
  75.                 for(int i = 0; i < div.size(); i++){
  76.                     if(div.get(i) != 0)
  77.                         prvi.add(div.get(i));
  78.                 }              
  79.                 div.clear();
  80.             }else{
  81.                 prvi = (ArrayList<Integer>) div.clone();
  82.             }
  83.             if(konec >= a.size()){
  84.                 break; // če padem tle not, pomen da je konec (celoštevilskega)deljenja
  85.             }else{
  86.                 prvi.add(a.get(konec));
  87.                 konec++;
  88.             }
  89.         }
  90.        
  91.        
  92.         return kolicnik;
  93.     }
Add Comment
Please, Sign In to add comment