diff --git a/out/production/aroTP2/App.class b/out/production/aroTP2/App.class
index 8d3c8e862e7d1d8ac1daac52964bbb7ec3329713..199c96065198da6f5c1ee0f956da5d49a812a0b5 100644
Binary files a/out/production/aroTP2/App.class and b/out/production/aroTP2/App.class differ
diff --git a/out/production/aroTP2/Loot.class b/out/production/aroTP2/Loot.class
index 4ffba3f58d9594f16f64fe6527d3748ef90eb0fc..5980ee7339fd55f258d0b9244ea844ecc3f583c3 100644
Binary files a/out/production/aroTP2/Loot.class and b/out/production/aroTP2/Loot.class differ
diff --git a/src/App.java b/src/App.java
index a70ffd2bd6aee3fa0e1b931a9341f905b1d113ed..81b84333570a1a969f1b832f7d3530c6aa32853b 100644
--- a/src/App.java
+++ b/src/App.java
@@ -5,6 +5,7 @@ public class App {
        Backpack backpack= new InstanceReader().read("src/sacTest");
        backpack.sortByRatio();
        backpack.solutionFractionnelle();
-       System.out.println("solution fractionnelle :" + backpack.getSfValuee());
+        System.out.println("sac :" + backpack);
+        System.out.println("solution fractionnelle :" + backpack.getSfValuee());
     }
 }
diff --git a/src/Backpack.java b/src/Backpack.java
index b8552f0f0bf5768429ce28456da51acb4081337e..aadadba965ddeba4b4bff8a92b11b45e84f01139 100644
--- a/src/Backpack.java
+++ b/src/Backpack.java
@@ -27,13 +27,21 @@ public class Backpack {
         this.sortByRatio();
 
         for(Loot loot : loots){
-            if(loot.getWeight() > this.capacity){
-                sfValuee += (loot.getValue() * loot.getWeight()) / (capacity - sfWeight);
+            if(loot.getWeight() > (capacity - sfWeight)){
+                System.out.println("value :"+loot.getValue());
+                System.out.println("value1 :"+loot.getWeight());
+                System.out.println("value2 :"+(capacity - sfWeight));
+                System.out.println("value1 :"+sfValuee);
+                sfValuee += (loot.getValue() * (capacity - sfWeight)) / loot.getWeight();
                 sfWeight += capacity - sfWeight;
+                System.out.println("frac :"+sfValuee);
+                System.out.println("frac :"+sfWeight);
             }
-            else {
-                sfValuee += loot.getWeight();
+            else if (sfWeight < capacity){
+                sfValuee += loot.getValue();
                 sfWeight += loot.getWeight();
+                System.out.println("no frac :"+sfValuee);
+                System.out.println("no frac :"+sfWeight);
             }
         }
     }
diff --git a/src/Loot.java b/src/Loot.java
index e2a85e00913b0890cf5461e66d69589ac99a4cce..d7dc0320d837cc34d2d2fbda4f41e65e6c8f3e3c 100644
--- a/src/Loot.java
+++ b/src/Loot.java
@@ -5,7 +5,7 @@ public class Loot {
     public Loot(int weight, int value) {
         this.weight = weight;
         this.value = value;
-        this.ratio = (float) weight/value;
+        this.ratio = (float) value/weight;
     }
 
     public String toString(){