-
Notifications
You must be signed in to change notification settings - Fork 0
Divisió recursiva
Agustí Sánchez edited this page Dec 6, 2017
·
1 revision
package es.sh.wa.common.authentication;
import org.junit.runner.RunWith;
import org.junit.runners.JUnit4;
@RunWith(JUnit4.class)
public class Test {
@org.junit.Test
public void testIterative() {
int a = -11;
int b = 3;
int result = divIter(a, b);
System.out.println(result);
System.out.println(a);
}
@org.junit.Test
public void testRecursive() {
int a = -11;
int b = 2;
int result = divRecur(a, b, 0);
System.out.println(result);
System.out.println(a);
}
private int divIter(int a, int b) {
a = Math.abs(a);
b = Math.abs(b);
int i = 0;
for (; a >= 0; i++) {
a -= b;
}
return --i;
}
private int divRecur(int a, int b, int count) {
a = Math.abs(a);
b = Math.abs(b);
a -= b;
if (a <= 0) {
return count;
}
else {
return divRecur(a, b, ++count);
}
}
}